how to reduce a debug symbol error?
Robert Clipsham
robert at octarineparrot.com
Tue Jun 28 16:34:33 PDT 2011
On 28/06/2011 22:47, Trass3r wrote:
> Starting my cl4d executable with 'gdb main -readnow' results in
>
> Reading symbols from main...expanding to full symbols...Die:
> DW_TAG_type_unit (abbrev 4, offset 0x6a)
> parent at offset: 0xb
> has children: FALSE
> attributes:
> DW_AT_byte_size (DW_FORM_data1) constant: 16
> DW_AT_type (DW_FORM_ref4) constant ref: 0x62 (adjusted)
> Dwarf Error: Missing children for type unit [in module main]
>
> How do you reduce/report such a bug?
First: are you compiling *all* modules with -gc rather than -g?
Once you've checked that, what OS/platform are you on? Posting a binary
will most likely be enough to fix it, but given that there's no way to
check it's fixed without some source to work with it may be best to
narrow down a test case.
To do that, I recommend you unleash DustMite on your source:
https://github.com/CyberShadow/DustMite. You'll need a script that can
test for the bug too, you can pass a command file to gdb and grep for
the relevant failure, alternatively if you can get the failure when
using dwarfdump/objdump that may be easier.
If your code's open source you could always just put a link to your
source code on there, it won't take long for someone else to narrow down
a test case if they know what they're doing (it wouldn't be the first
time I've narrowed down several thousand lines of code to fix dmd's
debug info :>).
--
Robert
http://octarineparrot.com/
More information about the Digitalmars-d-learn
mailing list