symtab/1975: gdb reports DW_FORM_strp pointing outside of .debug_str
Fri Jan 20 22:06:00 GMT 2006

Synopsis: gdb reports DW_FORM_strp pointing outside of .debug_str

State-Changed-From-To: feedback->closed
State-Changed-By: jimb
State-Changed-When: Fri Jan 20 22:06:13 2006
    Dave Mazik send me an executable that caused GDB to complain.  When I apply 'readelf -wi' to it to display the Dwarf debugging info, and look at the indirect strings (that is, strings using DW_FORM_strp) it contains, I see lots of entries like this towards the beginning of the file:
         DW_AT_name        : (indirect string, offset: 0x150e): ecute_cfa_program	
    This is almost certainly supposed to be "execute_cfa_program", but you can see that the offset in the DW_FORM_strp attribute is a bit off.
    Later down in the file, we see a bunch of this:
         DW_AT_name        : (indirect string, offset: 0xd145): <offset is too big>	
    Here, readelf -wi is complaining about the same thing GDB is complaining about.
    So this is clearly an upstream (assembler; linker) problem, not GDB's problem.  You could try running readelf -wi on the .o files to see if the offsets are right there; if they are, then it's clearly a linker problem.  If you're running the latest linker, then you need to file a linker bug report.

More information about the Gdb-prs mailing list