Re: Compiler ABI changes and XPCOM components

Doug Turner <[email protected]>
Newsgroups gmane.comp.mozilla.devel.xpcom
Organization Another Netscape Collabra Server User
Message-ID <[email protected]>
Christian Biesinger wrote:
> Doug Turner wrote:
> 
>> If developers use XPCOM "properly" by avoiding compiler linkages that 
>> are not extern C, a compiler upgrade should not cause any problems.
> 
> 
> How is that possible? Doesn't calling C++ Functions require at least the 
> vtable to stay the same?


geez... i was not thinking clearly this morning..

It really depends on how much the binary interface is broken.  If the 
compiler decides to reorders vtables, prebuilt libraries under the old 
compiler will not work in a xpcom that is compiled under the new compiler.

I have no idea, really, what the next version of gcc will do.  Maybe 
there will be an option to generate "old style" vtables which could save 
us from a between version bustage?

In any case, I think that my first posting was the most correct... "If 
and when Mozilla upgrades the compiler they use, your component will 
have to be rebuilt against the same compiler."  The word 'will' in the 
above statement could should have been 'may'.  There is a possiblity 
that the ABI changes's are that bad.  But it could be the case that all 
bets are off.

Doug
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.