diff mbox

Remove useless debug mode symbols

Message ID 75266187-a1fa-0e0d-61d8-3be39f5c1391@gmail.com
State New
Headers show

Commit Message

François Dumont May 11, 2017, 7:47 p.m. UTC
Hi

     Now that soname has been incremented I can remove several useless 
debug symbols when versioned namespace is active.


     * include/debug/formatter.h [_GLIBCXX_INLINE_VERSION]
     (__gnu_debug::_Error_formatter::_Parameter::_M_print_field): Remove.
(__gnu_debug::_Error_formatter::_Parameter::_M_print_description):
     Remove.
     (__gnu_debug::_Error_formatter::_M_format_word): Remove.
     (__gnu_debug::_Error_formatter::_M_print_word): Remove.
     (__gnu_debug::_Error_formatter::_M_print_string): Remove.
     (__gnu_debug::_Error_formatter::_M_get_max_length): Remove.
     * src/c++11/debug.cc: Adapt.
     * config/abi/pre/gnu-versioned-namespace.ver: Adapt.

Tested under Linux x86_64 debug mode.

François
diff mbox

Patch

diff --git a/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver b/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
index 1721810..866afb6 100644
--- a/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
+++ b/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
@@ -137,11 +137,7 @@  GLIBCXX_8.0 {
     _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
 
     _ZNK11__gnu_debug16_Error_formatter10_M_message*;
-    _ZNK11__gnu_debug16_Error_formatter10_Parameter*;
-    _ZNK11__gnu_debug16_Error_formatter13_M_print_word*;
-    _ZNK11__gnu_debug16_Error_formatter15_M_print_string*;
     _ZNK11__gnu_debug16_Error_formatter8_M_error*;
-    _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
 
     # __gnu_debug::_Safe_unordered_container_base
     # __gnu_debug::_Safe_local_iterator_base
@@ -150,7 +146,6 @@  GLIBCXX_8.0 {
     _ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
     _ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv;
 
-
     # parallel mode
     _ZN14__gnu_parallel9_Settings3getEv;
     _ZN14__gnu_parallel9_Settings3setERS0_;
diff --git a/libstdc++-v3/include/debug/formatter.h b/libstdc++-v3/include/debug/formatter.h
index c81426a..7c342ea 100644
--- a/libstdc++-v3/include/debug/formatter.h
+++ b/libstdc++-v3/include/debug/formatter.h
@@ -374,6 +374,7 @@  namespace __gnu_debug
 	  _M_variant._M_instance._M_type = _GLIBCXX_TYPEID(_Type);
 	}
 
+#if !_GLIBCXX_INLINE_VERSION
       void
       _M_print_field(const _Error_formatter* __formatter,
 		     const char* __name) const _GLIBCXX_DEPRECATED;
@@ -381,6 +382,7 @@  namespace __gnu_debug
       void
       _M_print_description(const _Error_formatter* __formatter)
 	const _GLIBCXX_DEPRECATED;
+#endif
     };
 
     template<typename _Iterator>
@@ -452,6 +454,7 @@  namespace __gnu_debug
     _GLIBCXX_NORETURN void
     _M_error() const;
 
+#if !_GLIBCXX_INLINE_VERSION
     template<typename _Tp>
       void
       _M_format_word(char*, int, const char*, _Tp)
@@ -462,14 +465,17 @@  namespace __gnu_debug
 
     void
     _M_print_string(const char* __string) const _GLIBCXX_DEPRECATED;
+#endif
 
   private:
     _Error_formatter(const char* __file, unsigned int __line)
     : _M_file(__file), _M_line(__line), _M_num_parameters(0), _M_text(0)
     { }
 
+#if !_GLIBCXX_INLINE_VERSION
     void
     _M_get_max_length() const throw () _GLIBCXX_DEPRECATED;
+#endif
 
     enum { __max_parameters = 9 };
 
diff --git a/libstdc++-v3/src/c++11/debug.cc b/libstdc++-v3/src/c++11/debug.cc
index 5becdbe..9130b19 100644
--- a/libstdc++-v3/src/c++11/debug.cc
+++ b/libstdc++-v3/src/c++11/debug.cc
@@ -1071,6 +1071,7 @@  namespace __gnu_debug
     abort();
   }
 
+#if !_GLIBCXX_INLINE_VERSION
   // Deprecated methods kept for backward compatibility.
   void
   _Error_formatter::_Parameter::_M_print_field(
@@ -1118,4 +1119,6 @@  namespace __gnu_debug
     void
     _Error_formatter::_M_format_word(char*, int, const char*,
                                     const char*) const;
+#endif
+
 } // namespace __gnu_debug