Closed
Bug 143887
Opened 23 years ago
Closed 23 years ago
Document what @status FROZEN means wrt compiler ABI
Categories
(Core Graveyard :: Embedding: APIs, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: bbaetz, Assigned: alecf)
References
()
Details
I can't seem to find any docs on what freezing an interface means. There are
docs to show how to do the freezing, but not what freezing actually means.
One thing that I discussed briefly with dougt on IRC was that even though we've
frozen all these C++ interfaces, when the compiler ABI changes (like when
mozilla.org/Netscape finally upgrade the compiler for builds so that we can get
the 7% speed improvment) binary plugins won't work.
The IRC comments were:
<shaverDinner> sure
<shaverDinner> we've never suggested otherwise
<dougt_> what can you do bbaetz?
This doesn't appear to be documented anywhere, though. It would probably be a
good idea to do so before 1.0.
Comment 1•23 years ago
|
||
when the compiler changes, this may or may not break binary compatiblity. This
is not something special to xpcom components or plugins, everything on the
system is going to be effected. After reading a bit about the compiler abt, a
built component which implements @frozen interfaces/functions is going to have
problems. Why does mozilla have to document this fact? What am I missing?
Reporter | ||
Comment 2•23 years ago
|
||
Because @FROZEN may be taken as having the implication that if a component it
works with moz1.0, it will work with moz1.1.
If the Official Builds of mozilla (and, more importantly for this bug,
Netscape/other binary only distributers) change compilers, then that won't be
true any more.
My motivation is to make sure that this issue isn't brought up by anyone when we
do decided to get our 'free' 7% perf increase on unix.
Do all platforms have such a thing as a binary standard for APIs? If it's a
matter of setting a few switches in the config, then we should do it if we don't
already.
Blocks: 143771
Comment 4•23 years ago
|
||
posted to the newsgroup:
news://news.mozilla.org:119/3D0AC2ED.8030107@netscape.com
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 5•23 years ago
|
||
come on, lets not make this difficult for developers - lets get this on
www.mozilla.org, in the embedding documentation...
"document" does not mean "tell a subset of possible mozilla developers"
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 6•23 years ago
|
||
i forwarded the mail to the build, embedding, and seamonkey newsgroups. If you
want to do more, feel free.
Assignee: dougt → adamlock
Status: REOPENED → NEW
Assignee | ||
Comment 7•23 years ago
|
||
wow, that kind of attitude towards our developers is thoroughly disappointing. I
really don't understand the resistance here. We all have got better things to
do, etc, sure.. but it doesn't matter how good our embedding story is if we
don't provide documentation for our developers.
Microsoft caters to their developers, I guess we don't give a damn. I'll do this
myself.
Assignee: adamlock → alecf
Comment 8•23 years ago
|
||
what attitude, alec?
I posted an announcement to various newsgroups. I moved this bug to the
embedding component so someone could update their documention if they wanted -
as *you* asked.
Please keep in mind that posting is totally apparent if anyone thought about
what an compiler abi is. Furthermore, this is a shot in the dark as I have no
idea if anyone is really thinking about updating the linux compiler.
Assignee | ||
Comment 9•23 years ago
|
||
ok, the posting is now at
http://www.mozilla.org/projects/xpcom/binary-compatibility.html and is linked
from the xpcom page, the embedding page, and the embedding FAQ.
(it may take an hour or two to show up there)
Status: NEW → RESOLVED
Closed: 23 years ago → 23 years ago
Resolution: --- → FIXED
Updated•6 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•