But it clearly depends on your preference. If you don't want to
use "out
of band signaling" then putting something, anything, in the returned
Dwarf_Ops array is the way to go. But I actually prefer my Dwarf_Ops
array to consist of only valid expressions. So I would use
DW_OP_stack_value to indicate the "is a value" versus "is a
location",
but use length zero for undefined (since that is a valid expression with
that meaning) and NULL for same_value (since it isn't expressible
otherwise in a valid way).
I like "ou of band" for this case. I just wanted "in-band" for the
DW_CFA_val_* cases using the DW_OP_stack_value suffix, and some way
to keep the API fairly simple. So you suggest:
return 0, *ops = ops_mem -> "undefined"
return 0, *ops = NULL -> "same_value"
?
That could work.
Thanks,
Roland