From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13947 invoked by alias); 22 Nov 2003 15:07:43 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 13940 invoked from network); 22 Nov 2003 15:07:43 -0000 Received: from unknown (HELO zenia.home) (12.223.225.216) by sources.redhat.com with SMTP; 22 Nov 2003 15:07:43 -0000 Received: by zenia.home (Postfix, from userid 5433) id 62B58207A2; Sat, 22 Nov 2003 10:04:44 -0500 (EST) To: Andrew Cagney Cc: gdb@sources.redhat.com Subject: Re: dynamic scope from frame, static scope from ??? References: <3FBF77A7.2070207@gnu.org> From: Jim Blandy Date: Sat, 22 Nov 2003 15:07:00 -0000 In-Reply-To: <3FBF77A7.2070207@gnu.org> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2003-11/txt/msg00218.txt.bz2 Andrew Cagney writes: > GDB's slowly pushing the frame through to the procedures that need > access to the dynamic information. However, I don't know that we've > addressed the case where a process needs access to the static > information? Should there be dogma (similar to "there is always a > frame") that covers the static case? > > Off hand I can think of several ways of doing this: > > - create a static-frame (it has no dynamic state) and use that > - pass the source-and-line or block where needed > functions would get both sal and a possibly null frame > - pass some new structure that includes other info such as the > selected language (if its different to what it should be)? I think the meaning of a static context depends on the language in which the user is working. For C and C++, for example, a static context needs to include a specific source line, not just a block, so as to be able to find which macros are in scope. Internally, at least. As far as the user interface is concerned, GDB should try to infer the appropriate language automatically.