diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2023-04-04 12:04:14 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2023-04-27 21:36:14 +0100 |
commit | ee1a8294754af16b00538b17414679c8d72a575b (patch) | |
tree | 9d7cf335ec1ae409f9270e9ba6e6b444ddd1bf48 /libstdc++-v3 | |
parent | b9e35103581cdbd5368ccfbe6dab474f32834246 (diff) |
libstdc++: Fix outdated docs about demangling exception messages
The string returned by std::bad_exception::what() hasn't been a mangled
name since PR libstdc++/14493 was fixed for GCC 4.2.0, so remove the
docs showing how to demangle it.
libstdc++-v3/ChangeLog:
* doc/xml/manual/extensions.xml: Remove std::bad_exception from
example program.
* doc/html/manual/ext_demangling.html: Regenerate.
(cherry picked from commit 688d126b69215db29774c249b052e52d765782b3)
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/doc/html/manual/ext_demangling.html | 13 | ||||
-rw-r--r-- | libstdc++-v3/doc/xml/manual/extensions.xml | 13 |
2 files changed, 4 insertions, 22 deletions
diff --git a/libstdc++-v3/doc/html/manual/ext_demangling.html b/libstdc++-v3/doc/html/manual/ext_demangling.html index 879497f7d08..028ec71d8c8 100644 --- a/libstdc++-v3/doc/html/manual/ext_demangling.html +++ b/libstdc++-v3/doc/html/manual/ext_demangling.html @@ -39,14 +39,6 @@ int main() int status; char *realname; - // exception classes not in <stdexcept>, thrown by the implementation - // instead of the user - std::bad_exception e; - realname = abi::__cxa_demangle(e.what(), 0, 0, &status); - std::cout << e.what() << "\t=> " << realname << "\t: " << status << '\n'; - free(realname); - - // typeid bar<empty,17> u; const std::type_info &ti = typeid(u); @@ -61,13 +53,12 @@ int main() This prints </p><pre class="screen"> <code class="computeroutput"> - St13bad_exception => std::bad_exception : 0 3barI5emptyLi17EE => bar<empty, 17> : 0 </code> </pre><p> The demangler interface is described in the source documentation linked to above. It is actually written in C, so you don't need to be writing C++ in order to demangle C++. (That also means we have to - use crummy memory management facilities, so don't forget to free() - the returned char array.) + use crummy memory management facilities, so don't forget to + <code class="code">free()</code> the returned char array.) </p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ext_io.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="extensions.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ext_concurrency.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 27. Input and Output </td><td width="20%" align="center"><a accesskey="h" href="../index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 29. Concurrency</td></tr></table></div></body></html>
\ No newline at end of file diff --git a/libstdc++-v3/doc/xml/manual/extensions.xml b/libstdc++-v3/doc/xml/manual/extensions.xml index 86e92beffd3..196b55d8347 100644 --- a/libstdc++-v3/doc/xml/manual/extensions.xml +++ b/libstdc++-v3/doc/xml/manual/extensions.xml @@ -534,14 +534,6 @@ int main() int status; char *realname; - // exception classes not in <stdexcept>, thrown by the implementation - // instead of the user - std::bad_exception e; - realname = abi::__cxa_demangle(e.what(), 0, 0, &status); - std::cout << e.what() << "\t=> " << realname << "\t: " << status << '\n'; - free(realname); - - // typeid bar<empty,17> u; const std::type_info &ti = typeid(u); @@ -559,7 +551,6 @@ int main() <screen> <computeroutput> - St13bad_exception => std::bad_exception : 0 3barI5emptyLi17EE => bar<empty, 17> : 0 </computeroutput> </screen> @@ -568,8 +559,8 @@ int main() The demangler interface is described in the source documentation linked to above. It is actually written in C, so you don't need to be writing C++ in order to demangle C++. (That also means we have to - use crummy memory management facilities, so don't forget to free() - the returned char array.) + use crummy memory management facilities, so don't forget to + <code>free()</code> the returned char array.) </para> </chapter> |