[v3] more symbol exports
Benjamin Kosnik
bkoz@redhat.com
Tue Feb 19 14:18:00 GMT 2002
This patch makes --enable-symvers testresults match the unversioned
shared library results.
Loren, can you see if this works on BSDs? If so, I'd like to enable
this functionality by default on systems using GNU ld of sufficient
vintage.
-benjamin
tested x86/linux --enable-symvers
2002-02-19 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Export global vtable, typeinfo, guard
variable, and thunk info as per CXXABI docs.
Index: config/linker-map.gnu
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/config/linker-map.gnu,v
retrieving revision 1.2
diff -c -p -r1.2 linker-map.gnu
*** linker-map.gnu 2002/02/15 02:21:32 1.2
--- linker-map.gnu 2002/02/19 21:38:14
*************** GLIBCPP_3.1 {
*** 37,46 ****
};
## Names not in an 'extern' block are mangled names.
- __cxa_*;
- __gxx_personality_v0;
- __dynamic_cast;
-
## operator new(unsigned)
_Znwj;
--- 37,42 ----
*************** GLIBCPP_3.1 {
*** 54,69 ****
_ZdaPv;
# vtable
! # XXX export them all?
! _ZTVSt*;
! _ZTVN10__cxxabiv1*;
# typeinfo
! # XXX export them all?
! _ZTSSt*;
! ######## hmmmmm, the rediculous hacks section....
## std::_S_rb_tree_red
_ZSt14_S_rb_tree_red;
--- 50,75 ----
_ZdaPv;
# vtable
! _ZTV*;
! _ZTT*;
# typeinfo
! _ZTI*;
! _ZTS*;
!
! # function-scope static objects requires a guard variable.
! _ZGV*;
+ # virtual function thunks
+ _ZTh*;
+ _ZTv*;
+ _ZTc*;
! # XXX
! __cxa_*;
! __gxx_personality_v0;
! __dynamic_cast;
!
## std::_S_rb_tree_red
_ZSt14_S_rb_tree_red;
*************** GLIBCPP_3.1 {
*** 75,86 ****
## std::__stl_chunk_size
_ZSt16__stl_chunk_size;
-
- ## VTT for std::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >
- _ZTTSt19basic_istringstreamIcSt11char_traitsIcESaIcEE;
-
- ## VTT for std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >
- _ZTTSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE;
# this is a function, "void std::__convert_to_v(stuff)", and as such
# doesn't work well in the demangled section above
--- 81,86 ----
More information about the Gcc-patches
mailing list