This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[v3] more symbol exports



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]