From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28567 invoked by alias); 23 Apr 2008 10:26:50 -0000 Received: (qmail 28559 invoked by uid 22791); 23 Apr 2008 10:26:50 -0000 X-Spam-Check-By: sourceware.org Received: from zigzag.lvk.cs.msu.su (HELO zigzag.lvk.cs.msu.su) (158.250.17.23) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 23 Apr 2008 10:26:32 +0000 Received: from Debian-exim by zigzag.lvk.cs.msu.su with spam-scanned (Exim 4.63) (envelope-from ) id 1JocBH-0001Y3-4A for gdb-patches@sourceware.org; Wed, 23 Apr 2008 14:26:30 +0400 Received: from localhost ([127.0.0.1] helo=ip6-localhost) by zigzag.lvk.cs.msu.su with esmtp (Exim 4.63) (envelope-from ) id 1JocB1-0001XW-Eh; Wed, 23 Apr 2008 14:26:11 +0400 From: Vladimir Prus Subject: Re: [RFA] Document fixed/floating variable objects and thread-id. To: Eli Zaretskii , gdb-patches@sourceware.org Date: Wed, 23 Apr 2008 11:52:00 -0000 References: <200804041320.00361.vladimir@codesourcery.com> <200804092147.37085.ghost@cs.msu.su> <200804100105.31748.ghost@cs.msu.su> User-Agent: KNode/0.10.5 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit Message-Id: Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2008-04/txt/msg00509.txt.bz2 Vladimir Prus wrote: > On Thursday 10 April 2008 00:52:01 Eli Zaretskii wrote: >> > From: Vladimir Prus >> > Date: Wed, 9 Apr 2008 21:47:35 +0400 >> > Cc: gdb-patches@sources.redhat.com >> > >> > > Then how about ``the values of variables whose names appear in the >> > > expressions are re-evaluated every time''? >> > >> > I'm afraid that this statement is true for fixed variable objects too, >> > and it still makes it sound like we pick variables, and then reevaluate it. >> > Instead, we reparse entire expression which can find completely different >> > variables. >> >> Well, I'm afraid I don't understand what you mean. Please show me an >> example where reparsing an expression would yield something different >> each time. > > void foo (int i) > { > ... > } > > void bar (int i) > { > ... > } > > > If you create a fixed varobj in 'bar', then each time you updating, new value of > bar's i will be read. If you create a floating varobj in 'bar', then if you update > it while still in bar, new value of bar's i will be read. If you update it in foo, > then the value of foo's i will be used. > > So while for fixed varobj's update fetches new value of 'i', for floating varobjs > we also decide which 'i' to use each time. Eli, does the above make the code behaviour clear enough for you to suggest better doc working, or you want something else clarified? Thanks, Volodya