From: Phil Edwards Date: Mon, 1 Apr 2002 21:56:42 +0000 (+0000) Subject: linker-map.gnu: Export __verbose_terminate_handler. X-Git-Tag: releases/gcc-3.3.0~5965 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=76f6aa8b6c999bf5f83ae23403c261f04e58841e;p=thirdparty%2Fgcc.git linker-map.gnu: Export __verbose_terminate_handler. 2002-04-01 Phil Edwards * config/linker-map.gnu: Export __verbose_terminate_handler. * libsupc++/Makefile.am (sources): Add cxa_demangle.c, dyn-string.c. Make new LTCOMPILE variable, use it in new special build rules. * libsupc++/Makefile.in: Rebuild. * src/vterminate.cc (__verbose_terminate_handler): Enable use of runtime __cxa_demangle. * docs/html/install.html: Update prereqs and instructions. * docs/html/19_diagnostics/howto.html: Bring naming for verbose_terminate_handler into line with reality. From-SVN: r51709 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c6af9eca645b..ec0c5887b199 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,16 @@ +2002-04-01 Phil Edwards + + * config/linker-map.gnu: Export __verbose_terminate_handler. + * libsupc++/Makefile.am (sources): Add cxa_demangle.c, dyn-string.c. + Make new LTCOMPILE variable, use it in new special build rules. + * libsupc++/Makefile.in: Rebuild. + * src/vterminate.cc (__verbose_terminate_handler): Enable use of + runtime __cxa_demangle. + + * docs/html/install.html: Update prereqs and instructions. + * docs/html/19_diagnostics/howto.html: Bring naming for + verbose_terminate_handler into line with reality. + 2002-04-01 Benjamin Kosnik libstdc++/3129 diff --git a/libstdc++-v3/config/linker-map.gnu b/libstdc++-v3/config/linker-map.gnu index 240ca0138eff..7e0c8679e14f 100644 --- a/libstdc++-v3/config/linker-map.gnu +++ b/libstdc++-v3/config/linker-map.gnu @@ -100,6 +100,9 @@ CXXABI_1 { __gxx_personality_v0; __dynamic_cast; + # __gnu_cxx::_verbose_terminate_handler() + _ZN9__gnu_cxx27__verbose_terminate_handlerEv; + local: *; }; diff --git a/libstdc++-v3/docs/html/19_diagnostics/howto.html b/libstdc++-v3/docs/html/19_diagnostics/howto.html index 1253244ea847..3d8bf6f8bbc0 100644 --- a/libstdc++-v3/docs/html/19_diagnostics/howto.html +++ b/libstdc++-v3/docs/html/19_diagnostics/howto.html @@ -119,12 +119,12 @@ int main() { - std::set_terminate (__gnu_cxx::verbose_terminate_handler); + std::set_terminate (__gnu_cxx::__verbose_terminate_handler); ... throw anything; }

-

The verbose_terminate_handler function obtains the name +

The __verbose_terminate_handler function obtains the name of the current exception, attempts to demangle it, and prints it to stderr. If the exception is derived from std::exception then the output from what() will be included. @@ -145,7 +145,7 @@ int main (int argc) { - std::set_terminate (__gnu_cxx::verbose_terminate_handler); + std::set_terminate (__gnu_cxx::__verbose_terminate_handler); if (argc > 5) throw BLARGH("argc is greater than 5!"); else diff --git a/libstdc++-v3/docs/html/install.html b/libstdc++-v3/docs/html/install.html index 38d1c1d5e946..dce85f02d697 100644 --- a/libstdc++-v3/docs/html/install.html +++ b/libstdc++-v3/docs/html/install.html @@ -75,6 +75,13 @@ well as releases) of binutils here.

+ +

If you are using a 3.1-series libstdc++ snapshot, then the + requirements are slightly more stringent: the compiler sources must + also be 3.1 or later (for both technical and licensing reasons), and + your binutils must be 2.11.95 or later if you want to use symbol + versioning in shared libraries. +