From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15125 invoked by alias); 9 Dec 2009 14:05:42 -0000 Received: (qmail 15117 invoked by uid 22791); 9 Dec 2009 14:05:41 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from NaN.false.org (HELO nan.false.org) (208.75.86.248) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 09 Dec 2009 14:05:37 +0000 Received: from nan.false.org (localhost [127.0.0.1]) by nan.false.org (Postfix) with ESMTP id AE69A1096E; Wed, 9 Dec 2009 14:05:35 +0000 (GMT) Received: from caradoc.them.org (209.195.188.212.nauticom.net [209.195.188.212]) by nan.false.org (Postfix) with ESMTP id 8418E10555; Wed, 9 Dec 2009 14:05:35 +0000 (GMT) Received: from drow by caradoc.them.org with local (Exim 4.69) (envelope-from ) id 1NINAc-0003IF-4r; Wed, 09 Dec 2009 09:05:34 -0500 Date: Wed, 09 Dec 2009 14:05:00 -0000 From: Daniel Jacobowitz To: Chris Moller Cc: gdb-patches@sourceware.org Subject: Re: Patch for PR 9399 Message-ID: <20091209140534.GA12330@caradoc.them.org> Mail-Followup-To: Chris Moller , gdb-patches@sourceware.org References: <4B1FA6F2.1060105@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4B1FA6F2.1060105@redhat.com> User-Agent: Mutt/1.5.20 (2009-06-14) X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-12/txt/msg00133.txt.bz2 On Wed, Dec 09, 2009 at 08:32:34AM -0500, Chris Moller wrote: > The patch file includes the patch to gdb/valops.c, gdb/ChangeLog, > gdb/testsuite/ChangeLog, gdb/testsuite/gdb.cp/Makefile.in, and > mc-log.diffs. (The patch to Makefile.in is to incorporate the > testcase for 'make check'; mc-log.diffs are the diffs between before > and after runs of 'make check') Next time, please diff -u gdb.sum files; the rest is just noise. Those do vary a little bit but they're more stable. It looks like your only change is mi-nsmoribund.exp, which is sometimes flaky. > I can't do a 'cvs add' so the the > testcase expects and .cc file are attached separately as > gdb/testsuite/gdb.cp/virtfunc2.cc and > gdb/testsuite/gdb.cp/virtfunc2.exp. Take a look at cvsutils; "cvsdo add" works. (Or, nowadays, I suppose you could use the git mirror! :-) > You can see what the patch does by compiling -g virtfunc.cc, gdb-ing > it, breaking in the return stmt at // marker1, and doing things like > "print o.do_print()". Without the patch, gdb tries to access > location 0x0; with the patch it does the right thing. (There are > more tests in virtfunc2.exp) Where does the access to 0x0 come from? Is it inside search_struct_field? I wouldn't expect value_cast_structs to do any cast in this case, but it does do a little extra work. > + if ((TYPE_NAME (t1) != NULL) && > + (TYPE_NAME (t2) != NULL) && > + !strcmp (TYPE_NAME (t1), TYPE_NAME (t2))) && on the beginning of the line, please. -- Daniel Jacobowitz CodeSourcery