From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8291 invoked by alias); 25 Feb 2004 17:02:21 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 8239 invoked from network); 25 Feb 2004 17:02:20 -0000 Received: from unknown (HELO hawaii.kealia.com) (209.3.10.89) by sources.redhat.com with SMTP; 25 Feb 2004 17:02:20 -0000 Received: by hawaii.kealia.com (Postfix, from userid 2049) id CBC1AC5DA; Wed, 25 Feb 2004 09:02:19 -0800 (PST) To: gdb-patches@sources.redhat.com Cc: Jim Blandy , Elena Zannoni Subject: Re: [RFA/dwarf] Don't process types multiple times References: <20040225044206.GA23242@nevyn.them.org> From: David Carlton Date: Wed, 25 Feb 2004 17:02:00 -0000 In-Reply-To: <20040225044206.GA23242@nevyn.them.org> (Daniel Jacobowitz's message of "Tue, 24 Feb 2004 23:42:06 -0500") Message-ID: User-Agent: Gnus/5.1002 (Gnus v5.10.2) XEmacs/21.4 (Reasonable Discussion, linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2004-02/txt/msg00729.txt.bz2 On Tue, 24 Feb 2004 23:42:06 -0500, Daniel Jacobowitz said: > There are two ways that we can process a general DIE: process_die or > read_type_die. Children of particular DIE types may be processed > directly, but these are the only major dispatch points. It's > interesting to notice that almost everything called from > read_type_die starts with "if (die->type) return": everything but > enumeration types and aggregate types, in fact. This means that if > the first reference to an enumeration or aggregate type is a > DW_AT_type or DW_AT_containing_type in a DIE numerically before the > type's DIE, we'll end up calling new_symbol for it twice. Yeah, that had been bothering me for a while, too. In the FIXME comment, could you add your name and the date? David Carlton carlton@kealia.com