From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30860 invoked by alias); 30 Aug 2006 20:45:41 -0000 Received: (qmail 30846 invoked by uid 22791); 30 Aug 2006 20:45:40 -0000 X-Spam-Check-By: sourceware.org Received: from mailgw1.technion.ac.il (HELO mailgw1.technion.ac.il) (132.68.238.34) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 30 Aug 2006 20:45:37 +0000 Received: from localhost (localhost.localdomain [127.0.0.1]) by mailgw1.technion.ac.il (Postfix) with ESMTP id D3470AC553 for ; Wed, 30 Aug 2006 23:44:02 +0300 (IDT) Received: from mailgw1.technion.ac.il ([127.0.0.1]) by localhost (mailgw1.technion.ac.il [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 6qjM6cO-32bl for ; Wed, 30 Aug 2006 23:44:02 +0300 (IDT) Received: from techunix.technion.ac.il (techunix.technion.ac.il [132.68.1.28]) by mailgw1.technion.ac.il (Postfix) with ESMTP id AECDDAC540 for ; Wed, 30 Aug 2006 23:44:02 +0300 (IDT) Received: from [127.0.0.1] (techunix.technion.ac.il [132.68.1.28]) by techunix.technion.ac.il (Postfix) with ESMTP id 1BBE1149D7; Wed, 30 Aug 2006 23:45:34 +0300 (IDT) (envelope-from mveksler@tx.technion.ac.il) Message-ID: <44F5F8ED.3090300@tx.technion.ac.il> Date: Wed, 30 Aug 2006 20:45:00 -0000 From: Michael Veksler User-Agent: Thunderbird 1.5.0.5 (X11/20060726) MIME-Version: 1.0 To: Michael Veksler , gdb@sourceware.org Subject: Re: How to call operator<< functions? References: <44F5645F.4000301@tx.technion.ac.il> <20060830124640.GC19163@nevyn.them.org> <44F5EF97.3020906@tx.technion.ac.il> <20060830202352.GA2018@nevyn.them.org> In-Reply-To: <20060830202352.GA2018@nevyn.them.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-08/txt/msg00254.txt.bz2 Daniel Jacobowitz wrote: > On Wed, Aug 30, 2006 at 11:05:43PM +0300, Michael Veksler wrote: > > Let's look at one thing at a time. > > The first two crashes should, I think, be addressed by this patch. > Could you try it? > With the patch it works: (gdb) p x.Print(myCout) Enter B::Print() this=0xbfffec00 $1 = void (gdb) p ref_x.Print(myCout) Enter B::Print() this=0xbfffec00 $2 = void Great progress. The most annoying and common failures I have used to be seeing is no more. The other annoying issues sorted by decreasing annoyance : - this->Print is not always found (I'll try to create a small test-case later). - std::cout related crashes - print myCout << x --- won't work need to resort to print 'operator<<........'(myCout, x) > Some of the later crashes are caused by this: > > (gdb) set $a = x.Print > (gdb) p $a > $7 = > > I have a whole lot of patches related to member functions, that I > haven't had time to merge yet - and I would not like to look at this > until I've done that. > > This is less critical since this was an attempt to overcome the other bug. Thanks, Michael