This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Behaviour of invalid varobjs
- From: Nick Roberts <nickrob at snap dot net dot nz>
- To: Vladimir Prus <ghost at cs dot msu dot su>
- Cc: gdb at sources dot redhat dot com
- Date: Thu, 22 Mar 2007 22:32:11 +1200
- Subject: Re: Behaviour of invalid varobjs
- References: <etj4us$gif$1@sea.gmane.org>
> 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