[gcc r12-9349] libstdc++: Deliver names of C functions in <stacktrace>
Jonathan Wakely
redi@gcc.gnu.org
Tue Mar 28 23:35:31 GMT 2023
https://gcc.gnu.org/g:b1f0c065022784680044d30fa269025ae44b43de
commit r12-9349-gb1f0c065022784680044d30fa269025ae44b43de
Author: Björn Schäpers <bjoern@hazardy.de>
Date: Tue Dec 13 22:02:47 2022 +0100
libstdc++: Deliver names of C functions in <stacktrace>
__cxa_demangle is only to demangle C++ names, for all C functions,
extern "C" functions, and including main it returns -2, in that case
just adapt the given name. Otherwise it's kept empty, which doesn't look
nice in the stacktrace.
libstdc++-v3/ChangeLog:
* include/std/stacktrace (stacktrace_entry::_S_demangle): Use
raw __name if __cxa_demangle could not demangle it.
Signed-off-by: Björn Schäpers <bjoern@hazardy.de>
(cherry picked from commit b1c839be8353edfb1951454be3c5a8150f771385)
Diff:
---
libstdc++-v3/include/std/stacktrace | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libstdc++-v3/include/std/stacktrace b/libstdc++-v3/include/std/stacktrace
index a7fee8531f7..d46c05b3cd9 100644
--- a/libstdc++-v3/include/std/stacktrace
+++ b/libstdc++-v3/include/std/stacktrace
@@ -213,6 +213,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
&__status);
if (__status == 0)
__s = __str;
+ else
+ __s = __name;
__builtin_free(__str);
return __s;
}
More information about the Gcc-cvs
mailing list