[Issue 2575] gdb can not show code

d-bugmail at puremagic.com d-bugmail at puremagic.com
Fri Feb 20 05:54:59 PST 2009


http://d.puremagic.com/issues/show_bug.cgi?id=2575





------- Comment #6 from jason.james.house at gmail.com  2009-02-20 07:54 -------
D'oh, if only I reported more information when I remembered it.

Trying now, I'm doing "objdump -Wgs <executable>" and then searching for
module.

What I see right before it is DW_TAG_compile_unit.  I don't see DW_AT_high_pc
and DW_AT_low_pc in that section, but I don't know if it's supposed to be
there.  The impression I got from my chats on #gdb was that the debug data was
stored in somewhat of a hierarchical structure.  In order to figure out the
offsets for the source file, it wanted to find the high and low attributes but
did not.  There's a workaround inside gdb that will walk the children in order
to get around the behavior of old compilers, but it's fragile.  Having modern
stuff such as DW_TAG_module stops it from operating (since it doesn't match
what old compilers did).

That's all I can remember/reproduce with some experimentation with objdump. 
Can you reproduce the problem?  Maybe chat with someone on #gdb?  I had to wait
~12 hours to get a response.  Once I did, they were very helpful.  I'll guess
the compile_unit should have high_pc and low_pc, but I'm only guessing.  If you
can reproduce the issue, then it should be easy to see if what you did works or
not.  Sorry for the lack of detail :(


-- 



More information about the Digitalmars-d-bugs mailing list