On Sat, Dec 09, 2023 at 01:56:53PM -0700, Tom Tromey wrote: > I've reimplemented the .debug_names code in GDB -- it was quite far > from being correct, and the new implementation is much closer to what > is specified by DWARF. > > However, the new writer in GDB needs to emit some symbol properties, > so that the reader can be fully functional. This patch adds a few new > DW_IDX_* constants, and tries to document the existing extensions as > well. (My patch series add more documentation of these to the GDB > manual as well.)
LGTM for GCC (but it needs a ChangeLog entry). > diff --git a/include/dwarf2.def b/include/dwarf2.def > index 7ab3ee611fd4..75b75d901884 100644 > --- a/include/dwarf2.def > +++ b/include/dwarf2.def > @@ -802,8 +802,17 @@ DW_IDX (DW_IDX_parent, 4) > DW_IDX (DW_IDX_type_hash, 5) > DW_IDX_DUP (DW_IDX_lo_user, 0x2000) > DW_IDX (DW_IDX_hi_user, 0x3fff) > +/* Internal linkage. A flag. */ > DW_IDX (DW_IDX_GNU_internal, 0x2000) > +/* External linkage. A flag. Note that gdb no longer generates this; > + the default is to assume external linkage. */ > DW_IDX (DW_IDX_GNU_external, 0x2001) > +/* This entry is the program's entry point. A flag. */ > +DW_IDX (DW_IDX_GNU_main, 0x2002) > +/* Language for this entry. A DW_LANG_* value. */ > +DW_IDX (DW_IDX_GNU_language, 0x2003) > +/* This entry is a linkage name. A flag. */ > +DW_IDX (DW_IDX_GNU_linkage_name, 0x2004) > DW_END_IDX > > /* DWARF5 Unit type header encodings */ > -- > 2.43.0 Jakub