Behaviour of invalid varobjs
Nick Roberts
nickrob@snap.net.nz
Thu Mar 22 10:32:00 GMT 2007
> I think current mainline does something strange
> about varobjs that cannot be evaluated:
>
> -var-create null_ptr * **0
> ^done,name="null_ptr",numchild="0",value="0",type="int"
> (gdb)
> -var-update null_ptr
> ^done,changelist=[{name="null_ptr",in_scope="false"}]
>
> First, the value of "**0" is not 0, in fact there's no value at all.
> Second, given that nothing was changed between the two commands,
> it's strange that 'null_ptr' is mentioned in -var-update.
>
> Before I go changing code, do everybody agree that:
>
> 1. The output of -var-create should either have no "value"
> field at all, or value="", as is used in some other context.
> 2. The output of -var-update should not include anything.
>
> Also, we probably should include in_scope="false" in output of
probably should not include?
> -var-create, but I'm not quite sure.
Are there any real situations where you would want to create a variable object
of a constant? If not, then, apart from ensuring that such objects don't crash
GDB, I don't think this is an urgent issue.
--
Nick http://www.inet.net.nz/~nickrob
More information about the Gdb
mailing list