« Return to Thread: sun compiler and gdb

Re: sun compiler and gdb

by Tomasz Grobelny-5 :: Rate this Message:

| View in Thread

On Thu, 10 May 2012 14:39:07 -0600, Tom Tromey <tromey@...> wrote:
>>>>>> "Tomasz" == Tomasz Grobelny <tomasz@...>
writes:

>
> Tomasz> Reading symbols from
> /login/sg209371/gdbtest/a.out.sparc...expanding to
> Tomasz> full symbols...Die: DW_TAG_<unknown> (abbrev 9, offset 0x1bb)
>
> You want DIE 0x1bb...
>
> Tomasz>   parent at offset: 0x197
>
> ... or perhaps 0x197 ...
>
> Tomasz> With the relevant portion of dwarfdump looking like this:
> Tomasz> <2><  443> DW_TAG_SUN_class_template
>
> But this appears to be DIE 0x443.
>
Actually it is DIE 443(dec) == 1bb(hex)
When you posted output from another dwarfdump version it took me a while
to figure out that one tool is giving numbers in hex and the other in dec.

> Tomasz> Shouldn't unknown tag just be ignored?
>
> Yes, but I think what is happening is that you have one DIE which uses
> DW_AT_type to refer to another DIE, and gdb doesn't know what to do with
> the type DIE.
>
Does the above comment about dec/hex values change your analysis here?

> Tomasz> I searched for other tags that might be compiler specific and
> Tomasz> here is the list:
>
> Those are actually attributes; tags would be DW_TAG_something.
>
Thanks for pointing that out - I am new to DWARF stuff and do not yet see
the difference between attribute, tag and die.

> Tomasz> Are any of these supported or (at least) explicitly ignored by
gdb?
>
> AFAIK, no Sun extensions to DWARF are supported by gdb.
> Generally they should be ignored, but as you've seen, there are
> sometimes exceptions.  My impression is that this part of gdb is not
> heavily tested.
>
I will have a look it they can somehow be removed...
--
Regards,
Tomasz Grobelny

 « Return to Thread: sun compiler and gdb