DWARF Standard


HOME
SPECIFICATIONS
FAQ
ISSUES



221114.1 David Anderson DW_FORM_implicit_const and DW_FORM_indirect Error Open David Anderson


DWARF5 Section 7.5.3, pg 207
BACKGROUND

DW_FORM_indirect and DW_FORM_implicit_const
are not described fully and this can lead to
the forms being unreasonable or unimplementable.

A simple clarification/generalization
resolves all the issues while keeping compatibility
with DWARF5 wording.

From the index:
DW_FORM_implicit_const, pages 9,209,214,221
DW_FORM_indirect, pages 207,220,288.

the descriptions are in section 7.5.3 page 207:

====DWARF 5 page 207 starting at line 6:
The attribute form DW_FORM_indirect is a special case. For
attributes with this form, the attribute value itself in
the .debug_info section begins with an unsigned LEB128
number that represents its form. This allows producers to
choose forms for particular attributes dynamically, without
having to add a new entry to the abbreviations table.

The attribute form DW_FORM_implicit_const is another
special case. For attributes with this form, the attribute
specification contains a third part, which is a signed
LEB128 number. The value of this number is used as the
value of the attribute, and no value is stored in the
.debug_info section.
===end quote of standard.

Add to the first paragraph:

A sequence of form DW_FORM_indirect in .debug_info
is allowed.


Revise the second paragraph to read:

The attribute form DW_FORM_implicit_const is another
special case. For attributes with this form, the attribute
specification contains a third part which
follows the DW_FORM_implicit_const unsigned
LEB128 and is a signed
LEB128 number. The value of this number is used as the
value of the attribute.

--
2022-11-21: Revised
  Previous version: http://dwarfstd.org/issues/221114.1-1.html


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.