From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10439 invoked by alias); 17 Mar 2003 14:26:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 10416 invoked by uid 71); 17 Mar 2003 14:26:01 -0000 Date: Mon, 17 Mar 2003 14:26:00 -0000 Message-ID: <20030317142601.10410.qmail@sources.redhat.com> To: drow@sources.redhat.com Cc: gcc-prs@gcc.gnu.org, From: Daniel Jacobowitz Subject: Re: debug/8095: missing dwarf info for parent class Reply-To: Daniel Jacobowitz X-SW-Source: 2003-03/txt/msg01135.txt.bz2 List-Id: The following reply was made to PR debug/8095; it has been noted by GNATS. From: Daniel Jacobowitz To: Horsley Tom Cc: Wolfgang Bangerth , gcc-bugs@gcc.gnu.org, gcc-gnats@gcc.gnu.org Subject: Re: debug/8095: missing dwarf info for parent class Date: Mon, 17 Mar 2003 09:18:29 -0500 On Mon, Mar 17, 2003 at 07:59:02AM -0500, Horsley Tom wrote: > > > If there are ways to tie debug output to a certain member of a class > (just > > > as we do for vtables), then I would say this is a good idea. If someone > > > doesn't like this, then compile your library with -g. > > > > > > But that's just my opinion. > > > > I guess that sounds pretty reasonable to me, too. > > I'm not sure the intent of my original bug report made it through > this discussion :-). I don't see why you'd always have to emit > debug info for every header file in every compilation unit. > Just emit debug info for types that are "used". The point of the > bug report was to say that the "this" variable should count > as "using" a type, and if a derived class is "used", then all its > base classes should be "used" as well (after all, there isn't > all that much difference between a base class and a member variable, > and you wouldn't leave out member variables just because they > weren't directly referenced would you?). > > Of course I say this is total ignorance of how gcc decides to emit > debug info :-). The problem is that this causes debug info for that class to be emitted multiple times. If you compile the source file that causes the base class to be emitted - there must be one, or your program won't link - then that file should have the debug info. I still need to verify that it' being output in the right place. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer