Paolo,
there seems to be one extra issue about this patch. It causes quite a twist in 
libstdc++ exported symbols.
It is purpose of the patch to remove those that are going to be generated in 
user programs, too.
I am however bit confused about bad array. Perhaps it is an optimization 
difference dragging it in?
Does the changes look sensible?

Honza


21 added symbols 
0
_ZNSt20bad_array_new_lengthD2Ev
std::bad_array_new_length::~bad_array_new_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

1
__cxa_throw_bad_array_length
version status: compatible
CXXABI_1.3.8
type: function
status: added

2
_ZNKSt20bad_array_new_length4whatEv
std::bad_array_new_length::what() const
version status: compatible
CXXABI_1.3.8
type: function
status: added

3
_ZNSt20bad_array_new_lengthD0Ev
std::bad_array_new_length::~bad_array_new_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

4
_ZSt14get_unexpectedv
std::get_unexpected()
version status: compatible
GLIBCXX_3.4.20
type: function
status: added

5
_ZTVSt16bad_array_length
vtable for std::bad_array_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 40
status: added

6
_ZTSSt16bad_array_length
typeinfo name for std::bad_array_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 21
status: added

7
_ZNSt16bad_array_lengthD2Ev
std::bad_array_length::~bad_array_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

8
_ZSt15get_new_handlerv
std::get_new_handler()
version status: compatible
GLIBCXX_3.4.20
type: function
status: added

9
CXXABI_1.3.8
version status: compatible
type: object
type size: 0
status: added

10
_ZTVSt20bad_array_new_length
vtable for std::bad_array_new_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 40
status: added

11
_ZTSSt20bad_array_new_length
typeinfo name for std::bad_array_new_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 25
status: added

12
GLIBCXX_3.4.20
version status: compatible
type: object
type size: 0
status: added

13
_ZTISt20bad_array_new_length
typeinfo for std::bad_array_new_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 24
status: added

14
_ZSt13get_terminatev
std::get_terminate()
version status: compatible
GLIBCXX_3.4.20
type: function
status: added

15
_ZNSt16bad_array_lengthD0Ev
std::bad_array_length::~bad_array_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

16
__cxa_throw_bad_array_new_length
version status: compatible
CXXABI_1.3.8
type: function
status: added

17
_ZNSt16bad_array_lengthD1Ev
std::bad_array_length::~bad_array_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

18
_ZTISt16bad_array_length
typeinfo for std::bad_array_length
version status: compatible
CXXABI_1.3.8
type: object
type size: 24
status: added

19
_ZNSt20bad_array_new_lengthD1Ev
std::bad_array_new_length::~bad_array_new_length()
version status: compatible
CXXABI_1.3.8
type: function
status: added

20
_ZNKSt16bad_array_length4whatEv
std::bad_array_length::what() const
version status: compatible
CXXABI_1.3.8
type: function
status: added


17 missing symbols 
0
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsputnEPKwl
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::xsputn(wchar_t const*, long)
version status: unversioned
type: function
status: subtracted

1
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED0Ev
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted

2
_ZNKSt5ctypeIcE8do_widenEc
std::ctype<char>::do_widen(char) const
version status: unversioned
type: function
status: subtracted

3
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsgetnEPcl
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::xsgetn(char*, 
long)
version status: unversioned
type: function
status: subtracted

4
_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED0Ev
std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> 
>::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted

5
_ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev
std::basic_stringbuf<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted

6
_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj
__cxxabiv1::__pbase_type_info::__pointer_catch(__cxxabiv1::__pbase_type_info 
const*, void**, unsigned int) const
version status: unversioned
type: function
status: subtracted

7
_ZNKSt5ctypeIcE8do_widenEPKcS2_Pc
std::ctype<char>::do_widen(char const*, char const*, char*) const
version status: unversioned
type: function
status: subtracted

8
_ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev
std::basic_stringbuf<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted

9
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED1Ev
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted

10
_ZNKSt5ctypeIcE9do_narrowEcc
std::ctype<char>::do_narrow(char, char) const
version status: unversioned
type: function
status: subtracted

11
_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> 
>::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted

12
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED1Ev
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted

13
_ZNKSt5ctypeIcE9do_narrowEPKcS2_cPc
std::ctype<char>::do_narrow(char const*, char const*, char, char*) const
version status: unversioned
type: function
status: subtracted

14
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsgetnEPwl
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::xsgetn(wchar_t*, long)
version status: unversioned
type: function
status: subtracted

15
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED0Ev
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted

16
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsputnEPKcl
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::xsputn(char 
const*, long)
version status: unversioned
type: function
status: subtracted


2 undesignated symbols 
0
_ZSt11__once_call
std::__once_call
version status: compatible
GLIBCXX_3.4.11
type: tls
type size: 8
status: undesignated

1
_ZSt15__once_callable
std::__once_callable
version status: compatible
GLIBCXX_3.4.11
type: tls
type size: 8
status: undesignated


17 incompatible symbols 
0
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsputnEPKwl
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::xsputn(wchar_t const*, long)
version status: unversioned
type: function
status: subtracted


1
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED0Ev
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted


2
_ZNKSt5ctypeIcE8do_widenEc
std::ctype<char>::do_widen(char) const
version status: unversioned
type: function
status: subtracted


3
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsgetnEPcl
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::xsgetn(char*, 
long)
version status: unversioned
type: function
status: subtracted


4
_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED0Ev
std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> 
>::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted


5
_ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev
std::basic_stringbuf<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted


6
_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj
__cxxabiv1::__pbase_type_info::__pointer_catch(__cxxabiv1::__pbase_type_info 
const*, void**, unsigned int) const
version status: unversioned
type: function
status: subtracted


7
_ZNKSt5ctypeIcE8do_widenEPKcS2_Pc
std::ctype<char>::do_widen(char const*, char const*, char*) const
version status: unversioned
type: function
status: subtracted


8
_ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev
std::basic_stringbuf<wchar_t, std::char_traits<wchar_t>, 
std::allocator<wchar_t> >::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted


9
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED1Ev
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted


10
_ZNKSt5ctypeIcE9do_narrowEcc
std::ctype<char>::do_narrow(char, char) const
version status: unversioned
type: function
status: subtracted


11
_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> 
>::~basic_stringbuf()
version status: unversioned
type: function
status: subtracted


12
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED1Ev
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted


13
_ZNKSt5ctypeIcE9do_narrowEPKcS2_cPc
std::ctype<char>::do_narrow(char const*, char const*, char, char*) const
version status: unversioned
type: function
status: subtracted


14
_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsgetnEPwl
__gnu_cxx::stdio_sync_filebuf<wchar_t, std::char_traits<wchar_t> 
>::xsgetn(wchar_t*, long)
version status: unversioned
type: function
status: subtracted


15
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED0Ev
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> 
>::~stdio_sync_filebuf()
version status: unversioned
type: function
status: subtracted


16
_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsputnEPKcl
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::xsputn(char 
const*, long)
version status: unversioned
type: function
status: subtracted

Reply via email to