From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10324 invoked by alias); 9 Jul 2002 20:10:45 -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 10234 invoked from network); 9 Jul 2002 20:10:43 -0000 Received: from unknown (HELO gaea.projecticarus.com) (195.10.228.71) by sources.redhat.com with SMTP; 9 Jul 2002 20:10:43 -0000 Received: from [192.168.128.2] (host213-122-41-214.in-addr.btopenworld.com [213.122.41.214]) by gaea.projecticarus.com (8.11.6/8.11.6) with ESMTP id g69KAdV09534; Tue, 9 Jul 2002 21:10:39 +0100 Subject: Re: Is Single step into C++ virtual thunk still broken? From: Daedalus To: Daniel Jacobowitz Cc: gdb@sources.redhat.com In-Reply-To: <20020709185135.GA22053@nevyn.them.org> References: <1026229835.2426.30.camel@pan> <20020709162742.GA5100@nevyn.them.org> <1026240215.1532.14.camel@mojo> <20020709185135.GA22053@nevyn.them.org> Content-Type: text/plain Content-Transfer-Encoding: 7bit Date: Tue, 09 Jul 2002 13:10:00 -0000 Message-Id: <1026245359.1532.22.camel@mojo> Mime-Version: 1.0 X-SW-Source: 2002-07/txt/msg00098.txt.bz2 On Tue, 2002-07-09 at 19:51, Daniel Jacobowitz wrote: > > With 3.0: > > drow@nevyn:~/debugging/thunks% gcc-3.0 -g3 -lstdc++ -o vthunk vthunk.cc > drow@nevyn:~/debugging/thunks% gdb ./vthunk > GNU gdb 2002-04-01-cvs > Copyright 2002 Free Software Foundation, Inc. > GDB is free software, covered by the GNU General Public License, and > you are > welcome to change it and/or distribute copies of it under certain > conditions. > Type "show copying" to see the conditions. > There is absolutely no warranty for GDB. Type "show warranty" for > details. > This GDB was configured as "i386-linux"... > (gdb) b 53 > Breakpoint 1 at 0x8048719: file vthunk.cc, line 53. > (gdb) r > Starting program: /home/drow/debugging/thunks/vthunk > > Breakpoint 1, main (argc=1, argv=0xbffff664) at vthunk.cc:53 > 53 p->VirtualFn(); > (gdb) s > virtual thunk to Derived::VirtualFn() (this=0xbffff5e0) at vthunk.cc:23 > 23 { > (gdb) > Derived::VirtualFn() (this=0x4001413c) at vthunk.cc:39 > 39 int a=1; > (gdb) > > > With 3.1, same thing. Curiously, with 2.95 we step right over it... I > don't have time to investigate why at the moment. > > (By the way, you really should use g++ to compile C++ code.) > Compared with my experience ( Using g++ ;) ) [daedalus@mojo thunk]$ g++ --version g++ (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [daedalus@mojo thunk]$ g++ -g3 -lstdc++ -o thunk thunk.cpp [daedalus@mojo thunk]$ gdb ./thunk GNU gdb 2002-07-09-cvs Copyright 2002 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"... (gdb) b 50 Breakpoint 1 at 0x80486ce: file thunk.cpp, line 50. (gdb) r Starting program: /home/daedalus/src/thunk/thunk Breakpoint 1, main (argc=1, argv=0xbffff9f4) at thunk.cpp:50 50 p->VirtualFn(); (gdb) s virtual thunk to Derived::VirtualFn() () at thunk.cpp:43 43 } (gdb) s main (argc=1, argv=0xbffff9f4) at thunk.cpp:51 51 return 0; (gdb) Ho hum. Thanks for your input anyway. Andrew Walrond Project Icarus