From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19783 invoked by alias); 18 Jun 2003 18:10:41 -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 19734 invoked from network); 18 Jun 2003 18:10:40 -0000 Received: from unknown (HELO crack.them.org) (146.82.138.56) by sources.redhat.com with SMTP; 18 Jun 2003 18:10:40 -0000 Received: from dsl093-172-017.pit1.dsl.speakeasy.net ([66.93.172.17] helo=nevyn.them.org ident=mail) by crack.them.org with asmtp (Exim 3.12 #1 (Debian)) id 19ShP6-0007vI-00; Wed, 18 Jun 2003 13:11:29 -0500 Received: from drow by nevyn.them.org with local (Exim 3.36 #1 (Debian)) id 19ShOG-0001Vr-00; Wed, 18 Jun 2003 14:10:36 -0400 Date: Wed, 18 Jun 2003 18:10:00 -0000 From: Daniel Jacobowitz To: Mathews_Alex@emc.com Cc: gdb@sources.redhat.com Subject: Re: Breakpoint on class member function Message-ID: <20030618181035.GA5652@nevyn.them.org> Mail-Followup-To: Mathews_Alex@emc.com, gdb@sources.redhat.com References: <93F527C91A6ED411AFE10050040665D0083FA5A9@corpusmx1.us.dg.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <93F527C91A6ED411AFE10050040665D0083FA5A9@corpusmx1.us.dg.com> User-Agent: Mutt/1.5.1i X-SW-Source: 2003-06/txt/msg00388.txt.bz2 "Should", yes. But in practice, as you have discovered, it does not work. On Wed, Jun 18, 2003 at 02:06:53PM -0400, Mathews_Alex@emc.com wrote: > In my case language is set to auto, so when I was in the C routine the > language was C. Once I ended up in a routine that was C++ my current > language became C++. I want to be clear, even if the current language is C, > I should be able to set a breakpoint on a C++ class member function as I was > expecting? > > -----Original Message----- > From: Daniel Jacobowitz [mailto:drow@mvista.com] > Sent: Wednesday, June 18, 2003 1:33 PM > To: Mathews_Alex@emc.com > Cc: gdb@sources.redhat.com > Subject: Re: Breakpoint on class member function > > > OK, that makes sense. Let's file this with the "current language > doesn't make sense" pile. Would you mind filing a PR for tracking > purposes? It probably won't be fixed any time soon. > > On Wed, Jun 18, 2003 at 01:31:33PM -0400, Mathews_Alex@emc.com wrote: > > Finally figured out what was going on. I think it's because when I do the > > target remote, the entry point is into a C routine, so the current > language > > is c instead of c++. When the language is c++ then the breakpoint works > as > > expected. > > > > -----Original Message----- > > From: Daniel Jacobowitz [mailto:drow@mvista.com] > > Sent: Wednesday, June 18, 2003 12:07 PM > > To: Mathews_Alex@emc.com > > Cc: gdb@sources.redhat.com > > Subject: Re: Breakpoint on class member function > > > > > > Well, if I can't get a test case I'm not sure how much help I can be. > > Let's see... > > > > Is "ptype foo" correct both before and after the "target remote"? > > > > Does it list foo1 as a member? > > > > If both are yes, you're going to have to debug the lookup routines > > yourself to see where the problem is. > > > > On Wed, Jun 18, 2003 at 11:36:49AM -0400, Mathews_Alex@emc.com wrote: > > > I have tried with a gdb 5.3 without my changes and see the same problem. > > > When I do the configure I use target==i686-pc-linux if that's of any > > > significance. I'm working with a proprietary OS, so I don't have a > binary > > > to distribute. > > > > > > Doing "b foo::foo1; delete 1; b foo::foo1" without the target remote > does > > > work. > > > > > > > > > -----Original Message----- > > > From: Daniel Jacobowitz [mailto:drow@mvista.com] > > > Sent: Wednesday, June 18, 2003 11:06 AM > > > To: Mathews_Alex@emc.com > > > Cc: gdb@sources.redhat.com > > > Subject: Re: Breakpoint on class member function > > > > > > > > > On Wed, Jun 18, 2003 at 10:50:29AM -0400, Mathews_Alex@emc.com wrote: > > > > > > > > I'm working with an internally modified gdb 5.3. I'm trying to figure > > out > > > > if something happens with symbols after a target remote is issued. > The > > > > binary is ELF format with debugging information built with gcc 3.2. > The > > > > scenario that I'm seeing is the following: > > > > > > > > (gdb) file symbols.gdb > > > > (gdb) b foo::foo1 > > > > Breakpoint 1 @ ... > > > > (gdb) delete 1 > > > > (gdb) target remote /dev/ttyS1 > > > > (gdb) b foo::foo1 > > > > the class foo does not have any method named foo1 > > > > Hint: try 'foo::foo1 or 'foo::foo1 > > > > (gdb) b 'foo::foo1(char *, char *)' > > > > Breakpoint 2 @ ... > > > > > > > > So, before I do a target remote, I'm able to set a breakpoint without > > the > > > > fully typed member function. Then afterwards, it won't work unless > it's > > > > fully typed, so I'm forced to use the hint provided. I haven't > modified > > > > anything in the symbol area, but I have made modifications to target > > > remote > > > > related code. > > > > > > > > Any insight would be appreciated. I did see bug 1023, but I wasn't > sure > > > if > > > > that applied in my case. > > > > > > This doesn't make any sense to me. Do you have any distributable > > > binaries which reproduce the problem - and can you reproduce it without > > > your local changes? > > > > > > Does "b foo::foo1; delete 1; b foo::foo1" work without the target > > > remote? > > > > > > -- > > > Daniel Jacobowitz > > > MontaVista Software Debian GNU/Linux Developer > > > > > > > -- > > Daniel Jacobowitz > > MontaVista Software Debian GNU/Linux Developer > > > > -- > Daniel Jacobowitz > MontaVista Software Debian GNU/Linux Developer > -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer