This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: C++ debugging progress
- From: Dan Mosedale <dmose at mozilla dot org>
- To: Daniel Berlin <dan at cgsoftware dot com>
- Cc: Daniel Jacobowitz <drow at mvista dot com>, libstdc++ at gcc dot gnu dot org, gdb at sources dot redhat dot com
- Date: Wed, 28 Nov 2001 12:25:27 -0800
- Subject: Re: C++ debugging progress
- References: <Pine.LNX.4.33.0111280239110.15446-100000@www.cgsoftware.com>
Daniel Berlin wrote:
> Subject:
>
> Re: C++ debugging progress
> From:
>
> Daniel Berlin <dan@cgsoftware.com>
> Date:
>
> Wed, 28 Nov 2001 02:43:43 -0500 (EST)
>
> To:
>
> Daniel Jacobowitz <drow@mvista.com>
> CC:
>
> <libstdc++@gcc.gnu.org>, <gdb@sources.redhat.com>
>
>
>
>On Wed, 28 Nov 2001, Daniel Jacobowitz wrote:
>
>>> For the curious, I've gotten all but two of the virtual function tests to
>>> pass in virtfuncs.exp. I'm not entirely sure what's wrong with one of the
>>> others, and the other goes up as far as the parser (pEe->D::fd() yields
>>> "attempt to take address of value not in memory"). There's also a bunch of
>>> namespace problems, of course.
>>>
>>> I'll not be posting the patches for another day or two. The way I do it now
>>> is grossly inefficient; I look through RTTI at every lookup instead of once
>>> per type. It also depends on presence of RTTI. There's not much I can do
>>> about that - or rather, I could, but AFAICT it would require walking the
>>> inheritance graph in the proper order and I don't have the machinery to do
>>> that easily. I'm not heartbroken that we need RTTI for debugging though.
>>
>
>Nor am I.
>However:
> * To: gdb-patches at sources dot redhat dot com
> * Subject: Re: Using typeinfo functions to determine RTTI
> * From: Tom Tromey <tromey at cygnus dot com>
> * Date: 03 May 2000 09:41:50 -0600
> * Newsgroups: cygnus.patches.gdb
> * Organization: Cygnus Solutions
> * References:
><Pine.LNX.4.10.10005020923450.14281-100000@propylaea.anduin.com>
><npu2ggf8g3.fsf@zwingli.cygnus.com>
> * Reply-To: tromey at cygnus dot com
> (This was me):
> >> Does anyone mind if i use the typeinfo name, rather than
> >> the virtual table name, to figure out th real type of an object? It
> >> only matters if someone does -fno-rtti, i believe. But I have no
> >> idea how many people actually use that flag to save time/space in
> >> debugging executables.
>
> Jim> Almost all of Cygnus's customers use GDB to debug embedded apps,
> Jim> and space is often an issue there. But I don't actually know how
> Jim> many of them use -fno-rtti.
>
> All Java programs are compiled with -fno-rtti. This includes the C++
> component. So presumably if this change is made it will make it even
> harder for me to debug libgcj.
>
This would also be unfortunate for Mozilla, which compiles -fno-rtti.
Debugging Mozilla using gdb is already extremely memory intensive, and
being required to use RTTI would make it even worse. :-/
Dan