[Bug libstdc++/35934] abi breakage in search (4.0.0 -> 4.2.1)

bkoz at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Jan 24 03:21:00 GMT 2009



------- Comment #3 from bkoz at gcc dot gnu dot org  2009-01-24 03:20 -------

Please note there are no ABI baseline files checked in to the FSF GCC
repository for darwin for this (or any) release on this (or any) architecture.
Without these, there can be no automated ABI testing by the GCC community. 

Thus, there is no ABI to break for your release/target, and this bug is
invalid. 

If this is something you'd like to see supported on your target in the future,
please consider activating the "make check-abi" rule and checking in the ABI
baseline files (baseline_symbols.txt) to the
config/abi/post/[powerpc|i686]_darwin directories. 

Now, to answer the stated question.

On x86_64-linux-gnu, gcc-4.0.4 has no search exports in
baseline_symbols.txt.

Analysis of prior baseline_symbols.txt files (from
gcc-3.4.6 to gcc-4.4.0-preliminary) show no exports for this function.

Looking at the binary, I see:
%eu-readelf -s libstdc++.so.6.0.7  | grep search
  296: 0000000000096d60    325 FUNC    LOCAL  DEFAULT       11
_ZSt6searchIPKcS1_PFbRS0_S2_EET_S5_S5_T0_S6_T1_
  529: 00000000000af2e0    293 FUNC    LOCAL  DEFAULT       11
_ZSt6searchIPKwS1_PFbRS0_S2_EET_S5_S5_T0_S6_T1_

So, these were LOCAL, ie not able to be linked against on linux, which is why
they did not end up in the baseline_symbols.txt file, and why to this platform,
it doesn't matter that the instantiations went away.

If darwin exported these functions in gcc-4.0.0, then it did
so in divergence with the linux baselines. 

Hope this helps.


-- 

bkoz at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35934



More information about the Gcc-bugs mailing list