This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Common C++ ABI

>Is there perhaps a list of third party C++ vendors which gcc 3.2's
>interoperability has been tested against?

There has been no serious interoperability testing as yet.

There has been some limited testing against the Intel C++ compiler.  We
have been finding C++ ABI bugs in gcc and/or the Intel C++ compiler roughly
once a week.  There is a good chance that we will find another bug after the
gcc 3.2 release.

> For example, what are my
>chances of getting sun cc and g++ to play nicely? 

I'd say there is only a small chance of getting this to work.  Most of the
work so far has concentrated on C++ front end issues, such as getting a
common vtable layout and common name mangling schemes.  Full interoperability
requires more than that though.  We need the GNU linker to correctly handle
Sun compiled libraries, and the Sun linker to correctly handle GNU compiled
libraries.  We need GNU compiled libraries to work if linked with Sun startup
files.  We need Sun compiled libraries to work if linked with GNU startup
files.  There are known problems in these areas that have not been addressed
yet.  Also, given the lack of interoperability testing so far, it is likely
that there are still bugs in the compilers and in the ABI itself that still
need to be found and fixed.  There is also the issue of whether Sun has
implemented the common C++ ABI yet.  I don't know if they have done so yet.

Some interoperability may be possible in some special circumstances.  We may
be close enough that it would be possible for one vendor to release a compiler
that is bug-compatible with another vendor.  The FSF is unlikely to do this,
but we might see commercial compilers for GNU/Linux that are bug-compatible
with gcc.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]