[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