DWARF Standard


160811.1 Jakub Jelinek Allow reference class for DW_AT_string_length attribute Enhancement Open Jakub Jelinek

Section 5.11, pg 117

While for most of the type attributes with integral value (see 2.19 section 
Static and Dynamic Value of Attributes) the attribute can be constant class, 
exprloc or reference (the last one reference to another DIE that provides 
the integral value in its DW_AT_location), DW_AT_string_length only allows
exprloc or loclistptr.

constant class isn't needed for it, because constant string length is 
expressed by DW_AT_byte_size, but it would be nice to just point to a DIE of
the var holding the string length, without having to worry to propagate its
location back to the DW_AT_string_length attribute (and especially hard if 
the types are emitted earlier by separate compilation step).  Using DW_OP_call4 
in the DW_AT_string_length works for this purpose only if the variable is 
going to have DWARF expression in its DW_AT_location, but not if it is a 
location description (DW_OP_stack_value ending, DW_OP_reg*, etc.).

12/06/2016 -- 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-2017 by DWARF Standards Committee.