fix some link map omissions

Richard Henderson rth@redhat.com
Thu Feb 28 23:22:00 GMT 2002


Noticed on ia64, where size_t is unsigned long, not unsigned int.

I've still got some symbols that look like they should be exported,
but aren't for some reason, for instance,

_ZNKSt6localeclIcSt11char_traitsIcESaIcEEEbRKSbIT_T0_T1_ES9_
_ZNKSt6localeclIwSt11char_traitsIwESaIwEEEbRKSbIT_T0_T1_ES9_
_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIPKwEEPwT_S7_RKS1_St20forward_iterator_tag
_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructIPwEES4_T_S5_RKS1_St20forward_iterator_tag
_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructISt17__normal_iteratorIPKwS2_EEEPwT_S9_RKS1_St20forward_iterator_tag
_ZNSbIwSt11char_traitsIwESaIwEE12_S_constructISt17__normal_iteratorIPwS2_EEES5_T_S7_RKS1_St20forward_iterator_tag
_ZNSs12_S_constructIPKcEEPcT_S3_RKSaIcESt20forward_iterator_tag
_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
_ZNSs12_S_constructISt17__normal_iteratorIPKcSsEEEPcT_S5_RKSaIcESt20forward_iterator_tag
_ZNSs12_S_constructISt17__normal_iteratorIPcSsEEES1_T_S3_RKSaIcESt20forward_iterator_tag
_ZSt4fillISt17__normal_iteratorIPPNSt6locale5facetESt6vectorIS3_SaIS3_EEES3_EvT_S9_RKT0_
_ZSt9has_facetISt5ctypeIcEEbRKSt6locale
_ZSt9has_facetISt5ctypeIwEEbRKSt6locale
_ZSt9has_facetISt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale
_ZSt9has_facetISt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale
_ZSt9has_facetISt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale
_ZSt9has_facetISt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale
_ZSt9has_facetISt8numpunctIcEEbRKSt6locale
_ZSt9has_facetISt8numpunctIwEEbRKSt6locale
_ZSteqIPKcS1_SsEbRKSt17__normal_iteratorIT_T1_ERKS2_IT0_S4_E
_ZSteqIPKwS1_SbIwSt11char_traitsIwESaIwEEEbRKSt17__normal_iteratorIT_T1_ERKS6_IT0_S8_E
_ZSteqIPcS0_SsEbRKSt17__normal_iteratorIT_T1_ERKS1_IT0_S3_E
_ZSteqIPwS0_SbIwSt11char_traitsIwESaIwEEEbRKSt17__normal_iteratorIT_T1_ERKS5_IT0_S7_E

All "identified" via

  nm libstdc++.so | c++filt | grep ' [tdb] [^ ]* std::[^_]'



r~


        * config/linker-map.gnu: Export operator new with unsigned long,
        and with std::nothrow_t.  Likewise operator delete.

Index: libstdc++-v3/config/linker-map.gnu
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/config/linker-map.gnu,v
retrieving revision 1.5
diff -c -p -d -r1.5 linker-map.gnu
*** linker-map.gnu	2002/02/22 23:45:27	1.5
--- linker-map.gnu	2002/03/01 01:11:22
*************** GLIBCPP_3.1 {
*** 37,53 ****
--- 37,70 ----
      };
  
      # Names not in an 'extern' block are mangled names.
+ 
      # operator new(unsigned)
      _Znwj;
+     # operator new(unsigned, std::nothrow_t const&)
+     _ZnwjRKSt9nothrow_t;
+     # operator new(unsigned long)
+     _Znwm;
+     # operator new(unsigned long, std::nothrow_t const&)
+     _ZnwmRKSt9nothrow_t;
  
      # operator delete(void*)
      _ZdlPv;
+     # operator delete(void*, std::nothrow_t const&)
+     _ZdlPvRKSt9nothrow_t;
  
      # operator new[](unsigned)
      _Znaj;
+     # operator new[](unsigned, std::nothrow_t const&)
+     _ZnajRKSt9nothrow_t;
+     # operator new[](unsigned long)
+     _Znam;
+     # operator new[](unsigned long, std::nothrow_t const&)
+     _ZnamRKSt9nothrow_t;
  
      # operator delete[](void*)
      _ZdaPv;
+     # operator delete[](void*, std::nothrow_t const&)
+     _ZdaPvRKSt9nothrow_t;
  
      # vtable	
      _ZTV*;  



More information about the Libstdc++ mailing list