[Bug c++/17287] Different class layout generated by g++ 3.3, 3.4 and 4.0.
mmitchel at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Tue Oct 12 05:54:00 GMT 2004
------- Additional Comments From mmitchel at gcc dot gnu dot org 2004-10-12 05:54 -------
G++ 3.3 used a slightly different C++ ABI from G++ 3.4 and G++ 3.5 (which has
now been renamed G++ 4.0). You can get the 3.3 C++ ABI in G++ 3.4/4.0 by using
-fabi-version=1. So, that explains the 3.3 vs. 3.4 difference.
You're comparing G++ 3.4 for powerpc-suse-linux with G++ 4.0 for
powerpc-apple-darwin. Darwin does not use the same structure layout rules as
GNU/Linux, so that is not a fair comparision. However, I do not think that is
making a difference in this case. The SuSE layout (12 bytes) is correct.
The G++ 4.0 results you display cannot be replicated with the mainline compiler
when compiling for powerpc-apple-darwin. You are using a very old version of
G++ 3.5 which was apparently distributed directly by Apple. You might want to
contact Apple directly about this issue.
Since the FSF version of G++ uses the correct 12-byte layout on
powerpc-apple-darwin, I have closed this PR.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17287
More information about the Gcc-bugs
mailing list