Robert Clipsham wrote:
On 19/03/10 00:34, Bernard Helyer wrote:
http://omploader.org/iM3ZudA

There you go. D2, run build.debug.sh to build. Modify the script to add
options and the like. Built with `-gc` list _Dmain or break _Dmain
doesn't work, if you force a segfault (remove the comments from the
first few lines of ator.main and compile with -noboundscheck to cause
one) bt doesn't work, etc, etc.

Thanks! I've managed to work this down to a 2 line test case:
----
void function() myfunc;
void main(){}
----

Wow, good work...

Which errors with:
----
Die: DW_TAG_padding (abbrev = 0, offset = 0)
        has children: FALSE
        attributes:
Dwarf Error: Cannot find type of die [in module /tmp/test]
----

Compile with either dmd -gc test.d or dmd -g test.d. I'll spend some more time with it now and see if I can figure out a cause so we can give a more useful bug report, if not I'll open a bug as is. If anyone else is getting different errors from gdb when using -gc, let me know and I can narrow them down too.

If I compile it with dmd -gc test.d, start gdb (version "7.0.1-debian"), and type "break _Dmain", I just get "Dwarf Error: Cannot find DIE at 0x0 referenced from DIE at 0x46 [in module /tmp/test]".

This is with dmd v1.055 without gdb patches (but some other custom patches, though I think none should affect the debugging infos).

Reply via email to