Re: Demangling in backtraces
Simon Marchi via Gdb <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
On 2021-03-13 3:55 a.m., Eli Zaretskii via Gdb wrote: > Ping! Does the silence mean we don't have such a feature in GDB? > >> Date: Sat, 06 Mar 2021 20:56:13 +0200 >> From: Eli Zaretskii via Gdb <[email protected]> >> >> I have built a C program linked against libgccjit. When it crashes, >> the backtrace shows mangled names, like this: >> >> #0 0x70f5ac3e in libgccjit-0!_Z17gimple_build_callP9tree_nodejz () >> from D:\usr\bin\libgccjit-0.dll >> #1 0x7190fa7b in libgccjit-0!_ZN19evrp_range_analyzer5leaveEP15basic_block_def >> () from D:\usr\bin\libgccjit-0.dll >> #2 0x71910eef in libgccjit-0!_Z36stmt_uses_0_or_null_in_undefined_wayP6gimple >> () from D:\usr\bin\libgccjit-0.dll >> #3 0x710fba2c in libgccjit-0!_Z16execute_one_passP8opt_pass () >> from D:\usr\bin\libgccjit-0.dll >> >> (This is because libgccjit is written in C++, and because the DLL is >> stripped.) >> >> How can I cause GDB to demangle the function names when showing the >> backtrace in this case? I tried setting language to c++, but that >> didn't help. >> >> TIA >> I don't really know. I've tried making a toy program and shared library on Linux in C++, without debug symbols, and it "just works": #0 0x00007ffff7fc00ed in foo(int) () from ./libfoo.so #1 0x0000555555555147 in main () So maybe it's supposed to "just work" on Windows as well and it doesn't? I don't really have time to dig into it further. Simon