bug 441686 causes problems for API violators

RESOLVED INVALID

Status

()

Core
JavaScript Engine
RESOLVED INVALID
10 years ago
10 years ago

People

(Reporter: Brian Crowder, Assigned: Brian Crowder)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

10 years ago
C code, such as liveconnect, which erroneously consumes private headers from spidermonkey, gets confused by the use of the "inline" keyword.  Here's a patch.
(Assignee)

Comment 1

10 years ago
The last time I tinkered with JS_INLINE, I seriously considered created a JS_FORCE_INLINE to do what this does, and a JS_INLINE to use the "inline" keyword where it's available.  Perhaps as we move more towards C++, that becomes increasingly the right thing to do, but I am unsure.
(Assignee)

Comment 2

10 years ago
Created attachment 331016 [details] [diff] [review]
inline => JS_INLINE
Attachment #331016 - Flags: review?(igor)
(Assignee)

Updated

10 years ago
Blocks: 441686

Comment 3

10 years ago
(In reply to comment #0)
> C code, such as liveconnect, which erroneously consumes private headers from
> spidermonkey, gets confused by the use of the "inline" keyword.  Here's a
> patch.

What is exactly the confusion? static inline in C99 has the same semantics as in C++.
(Assignee)

Comment 5

10 years ago
Comment on attachment 331016 [details] [diff] [review]
inline => JS_INLINE

This patch unfortunately causes lots of warnings about the unused functions, in my build.  I'll investigate the TryServer build problems more.
Attachment #331016 - Flags: review?(igor)

Comment 6

10 years ago
(In reply to comment #4)
> Here's a log from the try server:
> http://tinderbox.mozilla.org/showlog.cgi?log=MozillaTry/1216769174.1216771603.5866.gz

This have a simple explanation: MSVC does not support C99 including the inline keyword :( . I guess the simplest solution is to use macros.

(Assignee)

Comment 7

10 years ago
This was fixed elsewhere.
Status: NEW → RESOLVED
Last Resolved: 10 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.