From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17186 invoked by alias); 19 Nov 2007 08:39:12 -0000 Received: (qmail 17177 invoked by uid 22791); 19 Nov 2007 08:39:12 -0000 X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.33.17) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 19 Nov 2007 08:39:08 +0000 Received: from zps77.corp.google.com (zps77.corp.google.com [172.25.146.77]) by smtp-out.google.com with ESMTP id lAJ8d3vW008691 for ; Mon, 19 Nov 2007 08:39:03 GMT Received: from ug-out-1314.google.com (ugcm3.prod.google.com [10.66.114.3]) by zps77.corp.google.com with ESMTP id lAJ8d1YL018345 for ; Mon, 19 Nov 2007 00:39:02 -0800 Received: by ug-out-1314.google.com with SMTP id m3so1042021ugc for ; Mon, 19 Nov 2007 00:39:01 -0800 (PST) Received: by 10.67.21.11 with SMTP id y11mr1686451ugi.1195461540879; Mon, 19 Nov 2007 00:39:00 -0800 (PST) Received: by 10.67.21.14 with HTTP; Mon, 19 Nov 2007 00:39:00 -0800 (PST) Message-ID: Date: Mon, 19 Nov 2007 08:39:00 -0000 From: "Douglas Evans" To: "Peng Yu" Subject: Re: gdb does not print the reference to the base class members Cc: gdb@sourceware.org In-Reply-To: <366c6f340711181635x47116762nf7ec620eb5801dd2@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <366c6f340711181635x47116762nf7ec620eb5801dd2@mail.gmail.com> X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-11/txt/msg00181.txt.bz2 I believe this is gcc bug 27574. On Nov 18, 2007 4:35 PM, Peng Yu wrote: > Hi, > > I try to print reference x for the following problem. But gdb does not > print the one in class B refered to class A? Do you know how to print > its value? > > Thanks, > Peng > > (gdb) b 22 > Breakpoint 1 at 0x8048694: file main.cc, line 22. > (gdb) b 14 > Breakpoint 2 at 0x8048706: file main.cc, line 14. > (gdb) r > Failed to read a valid object file image from memory. > > Breakpoint 1, main () at main.cc:22 > 22 B b(10); > (gdb) p x > $1 = (int &) @0xbffd86cc: 5 > (gdb) c > > Breakpoint 2, B (this=0xbffd86c8, a=10) at main.cc:14 > 14 std::cout << x << std::endl; > (gdb) p x > No symbol "x" in current context. > > > > #include > > class A { > public: > A(int a) : _a(a) { } > protected: > int _a; > }; > > class B : public A { > public: > B(int a) : A(a) { > int &x = A::_a;//can not print from gdb, Line 12 > std::cout << x << std::endl; > } > }; > > > int main(){ > int a = 5; > int &x = a;//this one can be printed in gdb, Line 22 > B b(10); > std::cout << x << std::endl; > } >