From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9141 invoked by alias); 21 Apr 2010 15:40:45 -0000 Received: (qmail 9130 invoked by uid 22791); 21 Apr 2010 15:40:44 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 21 Apr 2010 15:40:38 +0000 Received: (qmail 29132 invoked from network); 21 Apr 2010 15:40:35 -0000 Received: from unknown (HELO orlando.localnet) (pedro@127.0.0.2) by mail.codesourcery.com with ESMTPA; 21 Apr 2010 15:40:35 -0000 From: Pedro Alves To: gdb-patches@sourceware.org Subject: Re: [RFA/commit] Check library name rather than member name when rereading symbols. Date: Wed, 21 Apr 2010 15:40:00 -0000 User-Agent: KMail/1.12.2 (Linux/2.6.31-20-generic; KDE/4.3.2; x86_64; ; ) Cc: Joel Brobecker References: <1271863083-15509-1-git-send-email-brobecker@adacore.com> In-Reply-To: <1271863083-15509-1-git-send-email-brobecker@adacore.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201004211640.21421.pedro@codesourcery.com> 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: 2010-04/txt/msg00685.txt.bz2 On Wednesday 21 April 2010 16:18:03, Joel Brobecker wrote: > Hello, > > On Darwin, we have lots of complaints being emitted when restarting > a program: > > (gdb) start > `a-except.o' has disappeared; keeping its symbols. > `unwind-dw2.o' has disappeared; keeping its symbols. > `s-except.o' has disappeared; keeping its symbols. > `s-traceb.o' has disappeared; keeping its symbols. > > These object files are part of the GNAT runtime, and were never available. > The warning comes from the fact that we're checking whether the .o files > in the GNAT shared runtime have changed whereas we should be checking > whether the GNAT shared library itself has changed. > > This patch implements this. Although it is really only useful on a platform > such as Darwin (debug info stored in .o files), we believe that this is > the right thing to do in general. This change should be a noop for all > the other platforms in any case. Makes sense to me. And it's wonderful to get rid of another #ifdef DEPRECATED_IBM6000_TARGET instance. Though, isn't the comment's mention of "shared" a bit misleading? Isn't this about static libraries / archives? Does this really also apply to shared libraries? > -#ifdef DEPRECATED_IBM6000_TARGET > /* If this object is from a shared library, then you should > stat on the library name, not member name. */ > > if (objfile->obfd->my_archive) > res = stat (objfile->obfd->my_archive->filename, &new_statbuf); > else > -#endif > res = stat (objfile->name, &new_statbuf); > if (res != 0) > { > -- Pedro Alves