GDB not looking up some debug symbols
Paul Smith <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
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).