DWARF Standard


200709.1 Simon Marchi DW_AT_rnglists_base in DW_TAG_skeleton_unit Error Accepted Simon Marchi

Section 3.1.2, pg 66-67


When using split DWARF (DW_TAG_skeleton_unit + .dwo), the intent is to
have DW_AT_rnglists_base in the skeleton unit and inherited by the split
full compulation unit.  In section 3.1.3, it is mentioned (in
non-normative text) that DW_AT_rnglists_base is inherited by the split
full compilation unit from the corresponding skeleton compilation unit.
However, section 3.1.2 doesn't mention DW_AT_rnglists_base in the list
of attributes a skeleton compilation unit can have.  The list of
acceptable attributes by tag (Appendix A) does mention
DW_AT_rnglists_base for DW_TAG_skeleton_unit though.

I believe this is just an oversight, where the list in section 3.1.2 is
missing DW_AT_rnglists_base.

Note that there is also issue 210310.1 ("Clarify DW_AT_rnglists_base and
DW_FORM_rnglistx in Split DWARF") [1] that is related to
DW_AT_rnglists_base in split-DWARF context, but I believe they don't
conflict.  If accepted, that issue would make it so the skeleton doesn't
inherit the DW_AT_rnglists_base value from the skeleton.  Instead, it
would refer to the .debug_rnglists.dwo section in the split file, hence
not need a DW_AT_rnglists_base value at all.  But the
DW_TAG_skeleton_unit in the main file may still need a
DW_AT_rnglists_base for its own use, which is what the present issue is

[1] https://dwarfstd.org/issues/210310.1.html

Proposed changes

Section 3.1.2, page 67:

 - Add "8. A DW_AT_rnglists_base attribute." to the list of attributes a
   skeleton unit may have.

2021-10-18:  Updated.
2021-11-01:  Accepted (add to errata)

All logos and trademarks in this site are property of their respective owner.
The comments are property of their posters, all the rest © 2007-2022 by DWARF Standards Committee.