GDB not looking up some debug symbols

Paul Smith psmith@gnu.org
Fri Aug 25 17:20:00 GMT 2017


Hi all.  When testing GCC 7.2 I discovered that there has been a change
in the format of symbols, specifically related to unsigned values in
template arguments.  This is causing GDB to throw tons of "warning: RTTI
symbol not found" warnings when trying to use the Python GDB interface
with these types.

A description, including test case (you need GCC 7.x--I think the
problem is in 7.1 as well since the change went into GCC last fall but I
didn't test it), is available in the GCC bug report I filed:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81932

There is a contention in comments to the bug that this isn't really an
issue for GCC, but instead that GDB should be solving this.  My gut
tells me that solving it in GDB would be hard but I'm so unfamiliar with
how this works that I can't say for sure.

I filed it against GCC because it's a change in behavior of GCC.  I
wondered if anyone from the GDB camp wanted to add a comment or two
about this from their perspective.


I should add that I'm seeing another RTTI symbol not found warning when
compiling with GCC 6.2, related to a default value in a template.  I'll
send more details when I've got them, but I wonder if there is a larger
issue of debug symbol name matching that needs to be addressed, maybe
through some GDB / GCC cooperation.  It seems that maybe the DWARF spec
is not specific enough for all situations (or maybe this one is just a
bug).



More information about the Gdb mailing list