------- 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