This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: draft release notes for gcc 3.3
> > >3.2.x's libstdc++ will continue to work. But this only works on OSes that
> > >implement versioning, correct?
Right. See this for more on what versioning means:
http://gcc.gnu.org/onlinedocs/libstdc++/abi.txt
>But the versioned symbols are all labeled as 3.2, and none are labeled as
>3.3. Are there any classes that change their layout between libstdc++ 3.2
>and 3.3?
Versioning means that the versions in gcc-3.3.0 are compatible with the
versions in gcc-3.2.x. As part of this, the 3.3.0 version names
incorporate the 3.2.x version names. It's not possible to arbitrarily
change version names to correspond with the current gcc release.
The library objects are not explicilty tested for layout, but for size,
which catches most things. Things that change layout are pretty obvious,
so they would presumably be checked in the stable branch in the first
place.
>I am trying to determine if we can have programs that are built with 3.3
>that won't run with the 3.2.3 libstdc++.so.
Huh?
That's not the definition of backwards-compatible.
Instead, 3.3 is backward compatible with 3.2.x series compilers.
Meaning, things compiled with 3.2.x will still work when dynamically
linked against 3.3.x libstdc++.so.
-benjamin