DWARF Standard


181003.1 Paul T Robinson Forbid DW_OP_call_ref/DW_FORM_ref_addr in a .dwo section Error Accepted Jeremy Morse

Section, pg 189


DW_OP_call_ref (and DW_FORM_ref_addr) require relocations, and
so should be forbidden in a .dwo section, as a .dwo cannot have

To discourage producers from generating .dwo sections that could
potentially make use of such references, make an assumption (that
.dwo files only contain a single compilation unit) into an explicit

To avoid invasive changes to the text, I suggest we should only
add qualifiers to the paragraphs about split-DWARF, rather than to
the definitions of DW_OP_call_ref and DW_FORM_ref_addr.


Section p189 line 6

Split DWARF object files do not get linked with any other files, therefore
references between sections must not make use of normal object file relocation
information. As a result, symbolic references within or between sections are not

"symbolic references within or between sections are not possible."
"symbolic references such as DW_FORM_ref_addr and DW_OP_call_ref
within or between sections are not possible. Split DWARF object files
should contain at most one compilation unit."

Figure B.2 note "(fo)" p280 line 6

Delete: this whole note. DW_OP_call_ref will not be permitted in
.debug_info.dwo, and this item does not appear in figure B.2 anyway.

2022-07-29:  Updated.
2022-08-08:  Accepted.

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.