[Dwarf-Discuss] GNU extensions - inconsistent?

David Anderson davea42@earthlink.net
Tue Dec 13 18:44:33 GMT 2011

I'm trying to make the dwarf.h I release complete (well, more complete) 
by keeping up with
GNU extensions, but what I see is confusing.

>From gcc-4.6.2/include/dwarf2.h

    /* Thread-safety annotations.
        See http://gcc.gnu.org/wiki/ThreadSafetyAnnotation .  */
     DW_AT_GNU_guarded_by    = 0x2108,
     DW_AT_GNU_pt_guarded_by = 0x2109,
     DW_AT_GNU_guarded       = 0x210a,
     DW_AT_GNU_pt_guarded    = 0x210b,
     DW_AT_GNU_locks_excluded = 0x210c,
     DW_AT_GNU_exclusive_locks_required = 0x210d,
     DW_AT_GNU_shared_locks_required = 0x210e,
     /* One-definition rule violation detection.
        See http://gcc.gnu.org/wiki/DwarfSeparateTypeInfo .  */
     DW_AT_GNU_odr_signature = 0x210f,
     /* Template template argument name.
        See http://gcc.gnu.org/wiki/TemplateParmsDwarf .  */
     DW_AT_GNU_template_name = 0x2110,

But http://gcc.gnu.org/wiki/TemplateParmsDwarf says DW_AT_GNU_template_name
is x2108   !     And http://gcc.gnu.org/wiki/ThreadSafetyAnnotation says 
about the DWARF extension values at all, it proposes values in the 
standard range, not
the extensions range.

I notice that gdb-7.3.1/include/dwarf2.h  matches that gcc header except 
the gdb version
has a few extra values,
DW_TAG_GNU_call_site etc.

I'll take the gdb one as governing, for the moment.

Any comments on this would be most welcome.
Thanks in advance.
David Anderson

It's fabulous! We haven't seen anything like it in the last half an hour!  -- Macy's

More information about the Dwarf-discuss mailing list