svn commit: r233749 - in head/gnu/lib: libstdc++ libsupc++

David Chisnall theraven at FreeBSD.org
Sat Mar 31 14:25:12 UTC 2012


Author: theraven
Date: Sat Mar 31 14:25:12 2012
New Revision: 233749
URL: http://svn.freebsd.org/changeset/base/233749

Log:
  Make libsupc++ build as a shared library and make libstdc++ a filter library
  for it.
  
  This allows people to swap out libsupc++ for libcxxrt easily, so we can begin
  the libstdc++ -> libc++ migration.
  
  Approved by:	dim (mentor)

Added:
  head/gnu/lib/libsupc++/Version.map
     - copied, changed from r232970, head/contrib/libstdc++/config/abi/pre/gnu.ver
Modified:
  head/gnu/lib/libstdc++/Makefile
  head/gnu/lib/libsupc++/Makefile

Modified: head/gnu/lib/libstdc++/Makefile
==============================================================================
--- head/gnu/lib/libstdc++/Makefile	Sat Mar 31 14:03:16 2012	(r233748)
+++ head/gnu/lib/libstdc++/Makefile	Sat Mar 31 14:25:12 2012	(r233749)
@@ -25,7 +25,7 @@ CXXFLAGS+=	-fno-implicit-templates -ffun
 PO_CXXFLAGS=	${CXXFLAGS:N-ffunction-sections}
 
 DPADD=		${LIBM}
-LDADD=		-lm
+LDADD=		-lm  -Wl,-f,libsupc++.so.1
 
 # libstdc++ sources
 SRCS+=	bitmap_allocator.cc pool_allocator.cc \

Modified: head/gnu/lib/libsupc++/Makefile
==============================================================================
--- head/gnu/lib/libsupc++/Makefile	Sat Mar 31 14:03:16 2012	(r233748)
+++ head/gnu/lib/libsupc++/Makefile	Sat Mar 31 14:25:12 2012	(r233749)
@@ -7,8 +7,8 @@ SRCDIR=	${.CURDIR}/../../../contrib/libs
 
 .PATH: ${SRCDIR} ${GCCLIB}/libiberty
 
-# Static only.
 LIB=	supc++
+SHLIB_MAJOR=1
 SRCS+=	del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_arm.cc \
 	eh_aux_runtime.cc eh_call.cc eh_catch.cc eh_exception.cc eh_globals.cc \
 	eh_personality.cc eh_term_handler.cc eh_terminate.cc eh_throw.cc \
@@ -36,4 +36,9 @@ unwind.h: ${GCCDIR}/unwind-generic.h
 SRCS+=		unwind.h
 CLEANFILES+=	unwind.h
 
+# Symbol versioning
+
+VERSION_MAP=	${.CURDIR}/Version.map
+
+
 .include <bsd.lib.mk>

Copied and modified: head/gnu/lib/libsupc++/Version.map (from r232970, head/contrib/libstdc++/config/abi/pre/gnu.ver)
==============================================================================
--- head/contrib/libstdc++/config/abi/pre/gnu.ver	Wed Mar 14 14:34:14 2012	(r232970, copy source)
+++ head/gnu/lib/libsupc++/Version.map	Sat Mar 31 14:25:12 2012	(r233749)
@@ -19,676 +19,7 @@
 ## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
 ## USA.
 
-GLIBCXX_3.4 {
-
-  global:
-
-    # Names inside the 'extern' block are demangled names.
-    extern "C++"
-    {
-      std::[A-Za]*;
-#     std::ba[a-r]*;
-      std::basic_[a-e]*;
-      std::basic_f[a-r]*;
-#     std::basic_fstream;
-      std::basic_f[t-z]*;
-      std::basic_[g-h]*;
-      std::basic_i[a-e]*;
-#     std::basic_ifstream;
-      std::basic_i[g-r]*;
-      std::basic_istr[a-d]*;
-#     std::basic_istream;
-      std::basic_istr[f-z]*;
-      std::basic_i[t-z]*;
-      std::basic_[j-n]*;
-      std::basic_o[a-e]*;
-#     std::basic_ofstream;
-#     std::basic_o[g-z]*;
-      std::basic_o[g-r]*;
-      std::basic_ostr[a-d]*;
-      std::basic_ostr[f-z]*;
-      std::basic_[p-r]*;
-      std::basic_streambuf*;
-#     std::basic_string
-#     std::basic_stringbuf
-      std::basic_stringstream*;
-      std::basic_[t-z]*;
-      std::ba[t-z]*;
-      std::b[b-z]*;
-      std::c[a-g]*;
-#     std::char_traits;
-      std::c[i-z]*;
-      std::[d-h]*;
-      std::i[a-n]*;
-      std::ios_base::[A-Ha-z]*;
-      std::ios_base::_M_grow_words*;
-      std::ios_base::_M_init*;
-      std::ios_base::Init::[A-Za-z]*;
-      std::ios_base::[J-Za-z]*;
-      std::i[p-r]*;
-#     std::istream
-#     std::istreambuf_iterator
-      std::istringstream*;
-      std::istrstream*;
-      std::i[t-z]*;
-      std::[A-Zj-k]*;
-      std::length_error*;
-      std::logic_error*;
-      std::locale::[A-Za-e]*;
-      std::locale::facet::[A-Za-z]*;
-      std::locale::facet::_S_get_c_locale*;	
-      std::locale::facet::_S_clone_c_locale*;
-      std::locale::facet::_S_create_c_locale*;
-      std::locale::facet::_S_destroy_c_locale*;
-      std::locale::[A-Zg-h]*;
-      std::locale::id::[A-Za-z]*;
-      std::locale::id::_M_id*;
-      std::locale::[A-Zj-z]*;
-      std::locale::_[A-Ha-z]*;
-      std::locale::_Impl::[A-Za-z]*;
-#     std::locale::_Impl::_M_[A-Za-z]*;
-      std::locale::_[J-Ra-z]*;
-      std::locale::_S_normalize_category*;
-      std::locale::_[T-Za-z]*;
-#     std::[A-Zm-r]*;
-      std::[A-Zm]*;
-      std::n[^u]*;
-      std::nu[^m]*;
-      std::num[^e]*;
-      std::[p-r]*;
-      std::ostrstream*;
-      std::out_of_range*;
-      std::overflow_error*;
-      std::set_new_handler*;
-      std::set_terminate*;
-      std::set_unexpected*;
-#     std::string
-      std::strstream*;
-      std::strstreambuf*;
-      std::[A-Zt-z]*;
-      std::_List_node_base::hook*;
-      std::_List_node_base::swap*;
-      std::_List_node_base::unhook*;
-      std::_List_node_base::reverse*;
-      std::_List_node_base::transfer*;
-      std::__throw_*;
-      std::__timepunct*;
-      std::__numeric_limits_base*;
-      std::__num_base::_S_format_float*;
-      std::__num_base::_S_format_int*;
-      std::__num_base::_S_atoms_in;
-      std::__num_base::_S_atoms_out;
-      std::__moneypunct_cache*;
-      std::__numpunct_cache*;
-      std::__timepunct_cache*;
-      __gnu_debug::_Error_formatter*
-    };
-
-    # Names not in an 'extern' block are mangled names.
-
-    # __gnu_debug::_Safe_sequence_base and _Safe_iterator_base
-    _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
-    _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
-    _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
-    _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
-    _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
-    _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
-    _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
-    _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
-
-    # std::string
-    _ZNSsC*;
-    _ZNSsD*;
-    _ZNSs[0-9][a-z]*;
-    _ZNSs12_Alloc_hiderC*;
-    _ZNSs12_M_leak_hardEv;
-    _ZNSs12_S_constructE[jm]cRKSaIcE;
-    _ZNSs12_S_empty_repEv;
-    _ZNSs13_S_copy_chars*;
-    _ZNSs[0-9][0-9]_M_replace*;
-    _ZNSs4_Rep10_M_destroy*;
-    _ZNSs4_Rep10_M_dispose*;
-    _ZNSs4_Rep10_M_refcopyEv;
-    _ZNSs4_Rep10_M_refdataEv;
-    _ZNSs4_Rep12_S_empty_repEv;
-    _ZNSs4_Rep13_M_set_leakedEv;
-    _ZNSs4_Rep15_M_set_sharableEv;
-    _ZNSs4_Rep7_M_grab*;
-    _ZNSs4_Rep8_M_clone*;
-    _ZNSs4_Rep9_S_createE[jm][jm]*;
-    _ZNSs7_M_dataEPc;
-    _ZNSs7_M_leakEv;
-    _ZNSs9_M_mutateE[jm][jm][jm];
-    _ZNSs4_Rep20_S_empty_rep_storageE;
-    _ZNSs4_Rep11_S_max_sizeE;
-    _ZNSs4_Rep11_S_terminalE;
-    _ZNSsaSE*;
-    _ZNSsixE*;
-    _ZNSspLE*;
-    _ZNKSs[0-9][a-z]*;
-    _ZNKSs[0-9][0-9][a-z]*;
-    _ZNKSs[a-z]*;
-    _ZNKSs4_Rep12_M_is_leakedEv;
-    _ZNKSs4_Rep12_M_is_sharedEv;
-    _ZNKSs6_M_repEv;
-    _ZNKSs7_M_dataEv;
-    _ZNKSs7_M_iendEv;
-    _ZNKSs8_M_check*;
-    _ZNKSs8_M_limit*;
-    _ZNKSs9_M_ibeginEv;
-    _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_E*;
-
-    # std::wstring
-    _ZNSbIwSt11char_traitsIwESaIwEEC*;
-    _ZNSbIwSt11char_traitsIwESaIwEED*;
-    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
-    _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC*;
-    _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructE[jm]wRKS1_;
-    _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_chars*;
-    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][0-9]_M_replace*;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroy*;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_dispose*;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grab*;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_clone*;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createE[jm][jm]*;
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw;
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv;
-    _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateE[jm][jm][jm];
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE;
-    _ZNSbIwSt11char_traitsIwESaIwEEaSE*;
-    _ZNSbIwSt11char_traitsIwESaIwEEixE*;
-    _ZNSbIwSt11char_traitsIwESaIwEEpLE*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][0-9][a-z]*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE[a-z]*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv;
-    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv;
-    _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv;
-    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv;
-    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv;
-    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_check*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limit*;
-    _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv;
-    _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_E*;
-
-    # std::basic_stringbuf
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[CD]*;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][a-r]*;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]seek*;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]set*;
-    _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
-    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
-    _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs;
-    _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][t-z]*;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[a-z]*;
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][0-9]_M_[a-z]*;
-
-
-    # std::basic_iostream constructors, destructors
-    _ZNSdC*;
-    _ZNSdD*;
-
-    # std::basic_fstream
-    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC*;
-    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EED*;
-    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5closeEv;
-    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4open*;
-    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
-
-    # std::basic_ifstream
-    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC*;
-    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EED*;
-    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5closeEv;
-    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4open*;
-    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
-
-    # std::basic_ofstream
-    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC*;
-    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EED*;
-    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5closeEv;
-    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4open*;
-    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
-
-    # std::basic_istream<char>
-    _ZNSiC*;
-    _ZNSiD*;
-    _ZNKSi[0-9][a-z]*;
-    _ZNSi[0-9][a-h]*;
-    _ZNSi[0-9][j-z]*;
-    _ZNSi6ignoreE[il][il];
-    _ZNSirsE*[^g];
-
-    # std::basic_istream<wchar_t>
-    _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
-    _ZNSt13basic_istreamIwSt11char_traitsIwEED*;
-    _ZNKSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-z]*;
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][ijlm];
-    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*[^g];
-
-    # std::istream operators and extractors
-    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
-    _ZSt2wsI[cw]St11char_traitsI[cw]EE*;
-    _ZStrsI[cw]St11char_traitsI[cw]EERSt13basic_istream*;
-    _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
-    _ZStrsISt11char_traitsI[cw]EERSt13basic_istream*;
-    _ZStrsId[cw]St11char_traitsI[cw]EERSt13basic_istream*;
-    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
-    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
-
-    # std::basic_ostream<char>
-    _ZNSoC*;
-    _ZNSoD*;
-    _ZNKSo6sentrycvbEv;
-    _ZNSo8_M_writeEPKc[il];
-    _ZNSo[0-9][a-z]*;
-    _ZNSolsE*[^g];
-
-    # std::basic_ostream<wchar_t>
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEED*;
-    _ZNKSt13basic_ostreamIwSt11char_traitsIwEE[0-9][a-z]*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpE*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKw*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentry*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKw[il];
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEElsE*[^g];
-
-    # std::ostream operators and inserters
-    _ZSt4end[ls]I[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZSt5flushI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZStlsI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostream*;
-    _ZStlsISt11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZStlsId[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZStlsIe[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-    _ZStlsIf[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
-
-    # std::locale destructors
-    _ZNSt6localeD*;
-	
-    # std::locale::facet destructors
-    _ZNSt6locale5facetD*;
-	 
-    # std::locale::_Impl constructors, destructors
-    _ZNSt6locale5_ImplC*;
-    _ZNSt6locale5_ImplD*;
-
-    # std::ios_base, std::ios_base::Init destructors
-    _ZNSt8ios_baseD*;
-    _ZNSt8ios_base4InitD*;
-
-    # bool std::has_facet 
-    _ZSt9has_facetIS*;
-
-    # std::num_get
-    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
-
-    # std::num_put
-    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
-
-    # std::money_get
-    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
-
-    # std::money_put
-    _ZNKSt9money_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
-
-    # std::numeric_limits
-    _ZNSt14numeric_limitsI[^g]*;
-
-    # std::_Rb_tree
-    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
-    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
-    _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
-    _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
-    _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
-    _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
-    _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
-    _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
-    _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
-
-    # std::__basic_file
-    _ZNKSt12__basic_fileIcE7is_openEv;
-    _ZNSt12__basic_fileIcE2fdEv;
-    _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei;
-    _ZNSt12__basic_fileIcE4syncEv;
-    _ZNSt12__basic_fileIcE5closeEv;
-    _ZNSt12__basic_fileIcE6xsgetn*;
-    _ZNSt12__basic_fileIcE6xsputn*;
-    _ZNSt12__basic_fileIcE7seekoff*;
-    _ZNSt12__basic_fileIcE8sys_openE*St13_Ios_Openmode;
-    _ZNSt12__basic_fileIcE8xsputn_2*;
-    _ZNSt12__basic_fileIcE9showmanycEv;
-    _ZNSt12__basic_fileIcEC*;
-    _ZNSt12__basic_fileIcED*;
-
-    # std::__convert_to_v
-    _ZSt14__convert_to_vI[^g]*;
-
-    # __gnu_cxx::stdio_sync_filebuf
-    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
-
-    # __gnu_cxx::__atomic_add
-    # __gnu_cxx::__exchange_and_add
-    _ZN9__gnu_cxx12__atomic_addEPV[il]i;
-    _ZN9__gnu_cxx18__exchange_and_addEPV[il]i;
-
-    # debug mode
-    _ZN10__gnu_norm15_List_node_base4hook*;
-    _ZN10__gnu_norm15_List_node_base4swap*;
-    _ZN10__gnu_norm15_List_node_base6unhookEv;
-    _ZN10__gnu_norm15_List_node_base7reverseEv;
-    _ZN10__gnu_norm15_List_node_base8transfer*;
-
-    # operator new(size_t)
-    _Znw[jm];
-    # operator new(size_t, std::nothrow_t const&)
-    _Znw[jm]RKSt9nothrow_t;
-
-    # operator delete(void*)
-    _ZdlPv;
-    # operator delete(void*, std::nothrow_t const&)
-    _ZdlPvRKSt9nothrow_t;
-
-    # operator new[](size_t)
-    _Zna[jm];
-    # operator new[](size_t, std::nothrow_t const&)
-    _Zna[jm]RKSt9nothrow_t;
-
-    # operator delete[](void*)
-    _ZdaPv;
-    # operator delete[](void*, std::nothrow_t const&)
-    _ZdaPvRKSt9nothrow_t;
-
-    # virtual table
-    _ZTVNSt8ios_base7failureE;
-    _ZTVNSt6locale5facetE;
-    _ZTVS[a-z];
-    _ZTVSt[0-9][A-Za-z]*;
-    _ZTVSt[0-9][0-9][A-Za-z]*;
-    _ZTVSt11__timepunctI[cw]E;
-    _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
-    _ZTVSt21__ctype_abstract_baseI[cw]E;
-
-    # VTT structure
-    _ZTTS[a-z];
-    _ZTTSt[0-9][A-Za-z]*;
-    _ZTTSt[0-9][0-9][A-Za-z]*;
-
-    # typeinfo structure
-    _ZTIS[a-z];
-    _ZTINSt8ios_base7failureE;
-    _ZTINSt6locale5facetE;
-    _ZTISt[0-9][A-Za-z]*;
-    _ZTISt[0-9][0-9][A-Za-z]*;
-    _ZTISt11__timepunctI[cw]E;
-    _ZTISt10__num_base;
-    _ZTISt21__ctype_abstract_baseI[cw]E;
-    _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
-    _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
-    _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
-
-    # typeinfo name
-    _ZTSNSt8ios_base7failureE;
-    _ZTSNSt6locale5facetE;
-    _ZTSS[a-z];
-    _ZTSSt[0-9][A-Za-z]*;
-    _ZTSSt[0-9][0-9][A-Za-z]*;
-    _ZTSSt11__timepunctI[cw]E;
-    _ZTSSt10__num_base;
-    _ZTSSt21__ctype_abstract_baseI[cw]E;
-    _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
-    _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
-    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
-
-    # std::bad_alloc::~bad_alloc, std::bad_cast::~bad_cast,
-    # std::bad_typeid::~bad_typeid, std::bad_exception::~bad_exception
-    _ZNSt9bad_allocD*;
-    _ZNSt8bad_castD*;
-    _ZNSt10bad_typeidD*;
-    _ZNSt13bad_exceptionD*;
-
-    # function-scope static objects requires a guard variable.
-    _ZGVNSt[^1]*;
-    _ZGVNSt1[^7]*;
-
-    # virtual function thunks
-    _ZThn8_NS*;
-    _ZThn16_NS*;
-    _ZTv0_n12_NS*;
-    _ZTv0_n24_NS*;
-
-    # stub functions from libmath
-    sinf;
-    sinl;
-    sinhf;
-    sinhl;
-    cosf;
-    cosl;
-    coshf;
-    coshl;
-    tanf;
-    tanl;
-    tanhf;
-    tanhl;
-    atan2f;
-    atan2l;
-    expf;
-    expl;
-    hypotf;
-    hypotl;
-    hypot;
-    logf;
-    logl;
-    log10f;
-    log10l;
-    powf;
-    powl;
-    sqrtf;
-    sqrtl;
-    copysignf;
-    __signbit;
-    __signbitf;
-    __signbitl;
-
-   # GLIBCXX_ABI compatibility only.
-    # std::string
-    _ZNKSs11_M_disjunctEPKc;
-    _ZNKSs15_M_check_lengthE[jm][jm]PKc;
-    _ZNSs4_Rep26_M_set_length_and_sharableE*;
-    _ZNSs7_M_copyEPcPKc[jm];
-    _ZNSs7_M_moveEPcPKc[jm];
-    _ZNSs9_M_assignEPc[jm]c;
-
-    # std::wstring
-    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
-    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
-    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
-
-    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-
-    _ZNSi6ignoreE[ilv];
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
-
-    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
-
-    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
-
-    # std::locale::Impl _M_ members
-    _ZNSt6locale5_Impl16_M_install_facetEPKNS_2idEPKNS_5facetE;
-    _ZNSt6locale5_Impl16_M_replace_facetEPKS0_PKNS_2idE;
-    _ZNSt6locale5_Impl19_M_replace_categoryEPKS0_PKPKNS_2idE;
-    _ZNSt6locale5_Impl21_M_replace_categoriesEPKS0_i;
-
-  # DO NOT DELETE THIS LINE.  Port-specific symbols, if any, will be here.
-
-  local:
-    *;
-};
-
-GLIBCXX_3.4.1 {
- 
-    _ZNSt12__basic_fileIcE4fileEv;
- 
-} GLIBCXX_3.4;
- 
-GLIBCXX_3.4.2 {
-
-    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv;
-
-    _ZN9__gnu_cxx17__pool_alloc_base9_M_refillE[jm];
-    _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listE[jm];
-    _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv;
-
-} GLIBCXX_3.4.1;
-
-GLIBCXX_3.4.3 {
- 
-    # stub functions from libmath
-    acosf;
-    acosl;
-    asinf;
-    asinl;
-    atanf;
-    atanl;
-    ceilf;
-    ceill;
-    floorf;
-    floorl;
-    fmodf;
-    fmodl;
-    frexpf;
-    frexpl;
-    ldexpf;
-    ldexpl;
-    modff;
-    modfl;
-
-} GLIBCXX_3.4.2;
-
-GLIBCXX_3.4.4 {
-
-    _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv;
-    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE;
-    _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv;
-    _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv;
-    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reserve_blockE[jm][jm];
-    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reclaim_blockEPc[jm];
-    _ZN9__gnu_cxx6__poolILb[01]EE10_M_destroyEv;
-
-    _ZN9__gnu_cxx9free_list6_M_getE*;
-    _ZN9__gnu_cxx9free_list8_M_clearEv;
-
-} GLIBCXX_3.4.3;
-
-GLIBCXX_3.4.5 {
-
-    # std::string
-    _ZNKSs11_M_disjunctEPKc;
-    _ZNKSs15_M_check_lengthE[jm][jm]PKc;
-    _ZNSs4_Rep26_M_set_length_and_sharableE*;
-    _ZNSs7_M_copyEPcPKc[jm];
-    _ZNSs7_M_moveEPcPKc[jm];
-    _ZNSs9_M_assignEPc[jm]c;
-
-    # std::wstring
-    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
-    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
-    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
-    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
-    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
-
-    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
-
-    _ZNSi6ignoreE[ilv];
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
-
-    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
-
-    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
-
-} GLIBCXX_3.4.4;
-
-GLIBCXX_3.4.6 {
-
-    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EEiPSt15basic_streambuf*;
-    _ZNSt8ios_base17_M_call_callbacksENS_5eventE;
-    _ZNSt8ios_base20_M_dispose_callbacksEv;
-    _ZNSt6locale5facet13_S_get_c_nameEv;
-
-    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
-
-    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
-
-    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv;
-
-} GLIBCXX_3.4.5;
-
-GLIBCXX_3.4.7 {
-
-    _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetE[jm];
-
-} GLIBCXX_3.4.6;
-
-GLIBCXX_3.4.8 {
-
-    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EElPSt15basic_streambuf*;
-
-} GLIBCXX_3.4.7;
-
-GLIBCXX_3.4.9 {
-
-    _ZNSt6__norm15_List_node_base4hook*;
-    _ZNSt6__norm15_List_node_base4swap*;
-    _ZNSt6__norm15_List_node_base6unhookEv;
-    _ZNSt6__norm15_List_node_base7reverseEv;
-    _ZNSt6__norm15_List_node_base8transfer*;
-
-    _ZNSo9_M_insertI[^g]*;
-    _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertI[^g]*;
-    _ZNSi10_M_extractI[^g]*;
-    _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractI[^g]*;
-
-    _ZSt21__copy_streambufs_eofI[cw]St11char_traitsI[cw]EE[il]PSt15basic_streambuf*;
-
-    _ZSt16__ostream_insert*;
-
-    _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
-    _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb;
-    _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
-    _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
-
-    _ZNKSt9bad_alloc4whatEv;
-    _ZNKSt8bad_cast4whatEv;
-    _ZNKSt10bad_typeid4whatEv;
-    _ZNKSt13bad_exception4whatEv;
-
-} GLIBCXX_3.4.8;
+## $FreeBSD$
 
 
 # Symbols in the support library (libsupc++) have their own tag.


More information about the svn-src-all mailing list