This removes the _ZNSt12system_errorC* pattern from the GLIBCXX_3.4.11 version, because it doesn't seem to be used at the moment, but inlining changes being tested for PR ipa/58721 cause some new symbols to be added to the library and exported with version GLIBCXX_3.4.11, which obviously shouldn't be getting new symbols now.
This happened for Solaris previously, and Rainer disabled the pattern for Solaris: http://gcc.gnu.org/ml/libstdc++/2012-10/msg00070.html This patch does the same for all targets. Tested x86_64-linux, committed to trunk.
commit ee702751f19b333766011c6cd16156ce6c76bb69 Author: Jonathan Wakely <jwak...@redhat.com> Date: Fri Mar 14 17:26:26 2014 +0000 PR ipa/58721 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for _ZNSt12system_errorC* symbols which are not exported on any target. diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 2010bd3..f3afb94 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -1056,12 +1056,6 @@ GLIBCXX_3.4.11 { _ZTISt12system_error; _ZTVSt12system_error; _ZNSt12system_errorD*Ev; - # Those template instantiations weren't exported on Solaris in GCC 4.6 - # and aren't necessary for correct operation, so don't emit them now - # (PR libstdc++/54872). -#if !defined(__sun__) && !defined(__svr4__) - _ZNSt12system_errorC*; -#endif _ZNKSt4hashISt10error_codeEclES0_;