From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12513 invoked by alias); 25 May 2002 01:41:06 -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 12497 invoked from network); 25 May 2002 01:41:03 -0000 Received: from unknown (HELO branoic) (128.237.170.37) by sources.redhat.com with SMTP; 25 May 2002 01:41:03 -0000 Received: from drow by branoic with local (Exim 3.35 #1 (Debian)) id 17BQYB-00075O-00; Fri, 24 May 2002 21:40:55 -0400 Date: Fri, 24 May 2002 18:41:00 -0000 From: Daniel Jacobowitz To: Carlo Wood Cc: liams@redhat.com, gdb@sources.redhat.com Subject: Re: gdb bugs showing while working on libcwd Message-ID: <20020525014055.GA27211@branoic.them.org> Mail-Followup-To: Carlo Wood , liams@redhat.com, gdb@sources.redhat.com References: <20020522115242.C28512@redhat.com> <20020523153816.A4454@alinoe.com> <20020524114149.A2793@redhat.com> <20020524184234.A22858@alinoe.com> <20020525033302.A20587@alinoe.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020525033302.A20587@alinoe.com> User-Agent: Mutt/1.3.28i X-SW-Source: 2002-05/txt/msg00278.txt.bz2 On Sat, May 25, 2002 at 03:33:02AM +0200, Carlo Wood wrote: > I couldn't find the kernel patch to dump multithreaded cores yet, > but I installed gdb from cvs, and it seems to work now :). > > Ok, so lets start with one of the problems I did run into > most frequently, something that I could therefore reproduce > easily and what shouldn't give you any problems to reproduce > either: > > $ cd libcwd > $ cvs update -r gdbbug01 > $ ./bootstrap > $ CXX="g++-3.0.4" CC="gcc-3.0.4" ./configure --enable-maintainer-mode --enable-debug --enable-debugt --enable-debugm --disable-debug-output > $ make > $ cd testsuite > $ make tst_alloctag_shared > > Then I get: > Breakpoint 2, libcw::debug::dm_alloc_copy_ct::show_alloc_list(int, libcw::debug::channel_ct const&, libcw::debug::ooam_filter_ct const&) const (this=0x8066980, depth=1, channel=@0x400d4954, filter=@0xbffff540) at debugmalloc.cc:1197 > 1197 const_cast(&alloc->location())->handle_delayed_initialization(); > (gdb) p this > $1 = (dm_alloc_copy_ct *) 0x8066980 > (gdb) p *this > Value can't be converted to integer. > > > The problem here is that apparently gdb doesn't know > the definition of class dm_alloc_copy_ct. It should > know that imho. Carlo, That's because you're using namespaces. GDB has negligible support for namespaces right now; we know this far too well. Jim and I have been discussing plans of attack on this for some time; the only way to do it properly involves some significant architectural changes to the way GDB processes symbol tables, and Jim (and I) got distracted in the middle of our last conversation about this. It will definitely take some time. -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer