I think we agreed that it would be useful to regenerate the Solaris 2 libstdc++ baselines close to the GCC 4.6.0 release, especially given that symbol versioning on Solaris appears in 4.6.0 for the first time and several symbols have been added to the libstdc++.so ABI since the last update.
This patch does exactly that. It is based on make new-abi-baseline output across all of Solaris 8 to 11, both SPARC and x86. I'm currently re-running bootstraps on all of them on both mainline and the 4.6 branch. I'm only including one diff below, the others are identical (modulo object sizes for the 64-bit ABIs). The following functions/variables were added since the last update: FUNC:std::regex_error::~regex_error()@@GLIBCXX_3.4.15 FUNC:std::regex_error::~regex_error()@@GLIBCXX_3.4.15 FUNC:std::regex_error::~regex_error()@@GLIBCXX_3.4.15 FUNC:std::bad_function_call::~bad_function_call()@@CXXABI_1.3.5 FUNC:std::bad_function_call::~bad_function_call()@@CXXABI_1.3.5 FUNC:std::__detail::_List_node_base::_M_reverse()@@GLIBCXX_3.4.15 FUNC:std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*)@@GLIBCXX_3.4.15 FUNC:std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&)@@GLIBCXX_3.4.15 FUNC:std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@@GLIBCXX_3.4.15 FUNC:std::__detail::_List_node_base::_M_unhook()@@GLIBCXX_3.4.15 FUNC:std::__throw_regex_error(std::regex_constants::error_type)@@GLIBCXX_3.4.15 OBJECT:12:typeinfo for std::regex_error@@GLIBCXX_3.4.15 OBJECT:12:typeinfo for std::bad_function_call@@CXXABI_1.3.5 OBJECT:16:typeinfo name for std::regex_error@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_1@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_2@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_3@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_4@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_5@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_6@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_7@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_8@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_9@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_10@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_11@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_12@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_13@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_14@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_15@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_16@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_17@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_18@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_19@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_20@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_21@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_22@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_23@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_24@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_25@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_26@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_27@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_28@@GLIBCXX_3.4.15 OBJECT:1:std::placeholders::_29@@GLIBCXX_3.4.15 OBJECT:20:vtable for std::regex_error@@GLIBCXX_3.4.15 OBJECT:20:vtable for std::bad_function_call@@CXXABI_1.3.5 OBJECT:22:typeinfo name for std::bad_function_call@@CXXABI_1.3.5 Ok for both if the bootstraps pass? Thanks. Rainer 2011-03-15 Rainer Orth <r...@cebitec.uni-bielefeld.de> libstdc++-v3: * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate. * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. diff -r 217519b21f20 libstdc++-v3/config/abi/post/solaris2.8/baseline_symbols.txt --- a/libstdc++-v3/config/abi/post/solaris2.8/baseline_symbols.txt Fri Mar 11 18:03:34 2011 +0100 +++ b/libstdc++-v3/config/abi/post/solaris2.8/baseline_symbols.txt Tue Mar 15 11:21:07 2011 +0100 @@ -1162,6 +1162,9 @@ FUNC:_ZNSt11range_errorC2ERKSs@@GLIBCXX_3.4 FUNC:_ZNSt11range_errorD0Ev@@GLIBCXX_3.4 FUNC:_ZNSt11range_errorD1Ev@@GLIBCXX_3.4 +FUNC:_ZNSt11regex_errorD0Ev@@GLIBCXX_3.4.15 +FUNC:_ZNSt11regex_errorD1Ev@@GLIBCXX_3.4.15 +FUNC:_ZNSt11regex_errorD2Ev@@GLIBCXX_3.4.15 FUNC:_ZNSt12__basic_fileIcE2fdEv@@GLIBCXX_3.4 FUNC:_ZNSt12__basic_fileIcE4fileEv@@GLIBCXX_3.4.1 FUNC:_ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei@@GLIBCXX_3.4 @@ -1712,6 +1715,8 @@ FUNC:_ZNSt17__timepunct_cacheIwED0Ev@@GLIBCXX_3.4 FUNC:_ZNSt17__timepunct_cacheIwED1Ev@@GLIBCXX_3.4 FUNC:_ZNSt17__timepunct_cacheIwED2Ev@@GLIBCXX_3.4 +FUNC:_ZNSt17bad_function_callD0Ev@@CXXABI_1.3.5 +FUNC:_ZNSt17bad_function_callD1Ev@@CXXABI_1.3.5 FUNC:_ZNSt17moneypunct_bynameIcLb0EEC1EPKcj@@GLIBCXX_3.4 FUNC:_ZNSt17moneypunct_bynameIcLb0EEC2EPKcj@@GLIBCXX_3.4 FUNC:_ZNSt17moneypunct_bynameIcLb0EED0Ev@@GLIBCXX_3.4 @@ -1920,6 +1925,11 @@ FUNC:_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@@GLIBCXX_3.4 FUNC:_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@@GLIBCXX_3.4 FUNC:_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@@GLIBCXX_3.4 +FUNC:_ZNSt8__detail15_List_node_base10_M_reverseEv@@GLIBCXX_3.4.15 +FUNC:_ZNSt8__detail15_List_node_base11_M_transferEPS0_S1_@@GLIBCXX_3.4.15 +FUNC:_ZNSt8__detail15_List_node_base4swapERS0_S1_@@GLIBCXX_3.4.15 +FUNC:_ZNSt8__detail15_List_node_base7_M_hookEPS0_@@GLIBCXX_3.4.15 +FUNC:_ZNSt8__detail15_List_node_base9_M_unhookEv@@GLIBCXX_3.4.15 FUNC:_ZNSt8bad_castD0Ev@@GLIBCXX_3.4 FUNC:_ZNSt8bad_castD1Ev@@GLIBCXX_3.4 FUNC:_ZNSt8bad_castD2Ev@@GLIBCXX_3.4 @@ -2121,6 +2131,7 @@ FUNC:_ZSt19__throw_ios_failurePKc@@GLIBCXX_3.4 FUNC:_ZSt19__throw_logic_errorPKc@@GLIBCXX_3.4 FUNC:_ZSt19__throw_range_errorPKc@@GLIBCXX_3.4 +FUNC:_ZSt19__throw_regex_errorNSt15regex_constants10error_typeE@@GLIBCXX_3.4.15 FUNC:_ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_@@GLIBCXX_3.4 FUNC:_ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_@@GLIBCXX_3.4 FUNC:_ZSt20__throw_domain_errorPKc@@GLIBCXX_3.4 @@ -2463,6 +2474,7 @@ OBJECT:12:_ZTISt11__timepunctIwE@@GLIBCXX_3.4 OBJECT:12:_ZTISt11logic_error@@GLIBCXX_3.4 OBJECT:12:_ZTISt11range_error@@GLIBCXX_3.4 +OBJECT:12:_ZTISt11regex_error@@GLIBCXX_3.4.15 OBJECT:12:_ZTISt12ctype_bynameIcE@@GLIBCXX_3.4 OBJECT:12:_ZTISt12ctype_bynameIwE@@GLIBCXX_3.4 OBJECT:12:_ZTISt12domain_error@@GLIBCXX_3.4 @@ -2498,6 +2510,7 @@ OBJECT:12:_ZTISt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@@GLIBCXX_3.4 OBJECT:12:_ZTISt15underflow_error@@GLIBCXX_3.4 OBJECT:12:_ZTISt16invalid_argument@@GLIBCXX_3.4 +OBJECT:12:_ZTISt17bad_function_call@@CXXABI_1.3.5 OBJECT:12:_ZTISt17moneypunct_bynameIcLb0EE@@GLIBCXX_3.4 OBJECT:12:_ZTISt17moneypunct_bynameIcLb1EE@@GLIBCXX_3.4 OBJECT:12:_ZTISt17moneypunct_bynameIwLb0EE@@GLIBCXX_3.4 @@ -2608,6 +2621,7 @@ OBJECT:16:_ZTIPy@@CXXABI_1.3 OBJECT:16:_ZTSSt11logic_error@@GLIBCXX_3.4 OBJECT:16:_ZTSSt11range_error@@GLIBCXX_3.4 +OBJECT:16:_ZTSSt11regex_error@@GLIBCXX_3.4.15 OBJECT:16:_ZTTSt10istrstream@@GLIBCXX_3.4 OBJECT:16:_ZTTSt10ostrstream@@GLIBCXX_3.4 OBJECT:16:_ZTTSt14basic_ifstreamIcSt11char_traitsIcEE@@GLIBCXX_3.4 @@ -2644,6 +2658,35 @@ OBJECT:1:_ZNSt10moneypunctIcLb1EE4intlE@@GLIBCXX_3.4 OBJECT:1:_ZNSt10moneypunctIwLb0EE4intlE@@GLIBCXX_3.4 OBJECT:1:_ZNSt10moneypunctIwLb1EE4intlE@@GLIBCXX_3.4 +OBJECT:1:_ZNSt12placeholders2_1E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_2E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_3E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_4E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_5E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_6E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_7E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_8E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders2_9E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_10E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_11E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_12E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_13E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_14E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_15E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_16E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_17E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_18E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_19E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_20E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_21E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_22E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_23E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_24E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_25E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_26E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_27E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_28E@@GLIBCXX_3.4.15 +OBJECT:1:_ZNSt12placeholders3_29E@@GLIBCXX_3.4.15 OBJECT:1:_ZNSt14numeric_limitsIDiE10is_boundedE@@GLIBCXX_3.4.11 OBJECT:1:_ZNSt14numeric_limitsIDiE10is_integerE@@GLIBCXX_3.4.11 OBJECT:1:_ZNSt14numeric_limitsIDiE12has_infinityE@@GLIBCXX_3.4.11 @@ -2904,6 +2947,7 @@ OBJECT:20:_ZTVSt10bad_typeid@@GLIBCXX_3.4 OBJECT:20:_ZTVSt11logic_error@@GLIBCXX_3.4 OBJECT:20:_ZTVSt11range_error@@GLIBCXX_3.4 +OBJECT:20:_ZTVSt11regex_error@@GLIBCXX_3.4.15 OBJECT:20:_ZTVSt12domain_error@@GLIBCXX_3.4 OBJECT:20:_ZTVSt12future_error@@GLIBCXX_3.4.14 OBJECT:20:_ZTVSt12length_error@@GLIBCXX_3.4 @@ -2916,6 +2960,7 @@ OBJECT:20:_ZTVSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@@GLIBCXX_3.4 OBJECT:20:_ZTVSt15underflow_error@@GLIBCXX_3.4 OBJECT:20:_ZTVSt16invalid_argument@@GLIBCXX_3.4 +OBJECT:20:_ZTVSt17bad_function_call@@CXXABI_1.3.5 OBJECT:20:_ZTVSt8bad_cast@@GLIBCXX_3.4 OBJECT:20:_ZTVSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@@GLIBCXX_3.4 OBJECT:20:_ZTVSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@@GLIBCXX_3.4 @@ -2929,6 +2974,7 @@ OBJECT:22:_ZTSSt10moneypunctIwLb1EE@@GLIBCXX_3.4 OBJECT:22:_ZTSSt14collate_bynameIcE@@GLIBCXX_3.4 OBJECT:22:_ZTSSt14collate_bynameIwE@@GLIBCXX_3.4 +OBJECT:22:_ZTSSt17bad_function_call@@CXXABI_1.3.5 OBJECT:23:_ZTSSt15messages_bynameIcE@@GLIBCXX_3.4 OBJECT:23:_ZTSSt15messages_bynameIwE@@GLIBCXX_3.4 OBJECT:23:_ZTSSt15numpunct_bynameIcE@@GLIBCXX_3.4 -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University