From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31180 invoked by alias); 24 Aug 2009 11:08:44 -0000 Received: (qmail 31171 invoked by uid 22791); 24 Aug 2009 11:08:43 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 24 Aug 2009 11:08:35 +0000 Received: (qmail 14570 invoked from network); 24 Aug 2009 11:08:31 -0000 Received: from unknown (HELO orlando) (pedro@127.0.0.2) by mail.codesourcery.com with ESMTPA; 24 Aug 2009 11:08:31 -0000 From: Pedro Alves To: gdb@sourceware.org, danny.backx@scarlet.be Subject: Re: Questions on cross-gdb Date: Mon, 24 Aug 2009 15:44:00 -0000 User-Agent: KMail/1.9.10 References: <1250656540.11282.38.camel@pavilion> In-Reply-To: <1250656540.11282.38.camel@pavilion> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <200908241208.32371.pedro@codesourcery.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: 2009-08/txt/msg00237.txt.bz2 On Wednesday 19 August 2009 05:35:40, Danny Backx wrote: > Question 2 : I occasionally have a problem - see below - setting > breakpoints. > > (gdb) break 65 > warning: (Internal error: pc 0xd4720040 in read in psymtab, but not in > symtab.) This is a bug in GDB, see below. But, it may be some corner case triggered by bad debug info. Note that 0xd4720040 is over 0x80000000, so it's itself suspicious. I suggest checking if this PC itself is bogus or not. If not bogus another possibility could be a sign extending problem somewhere in GDB. > A pointer to what might be causing this would be appreciated so I > can chase the bug. GDB builds partial symbol tables (psymtab) and full symbol tables (symtab) out of the same debug info, in different phases. It starts by doing a "light" scan of the debug info, and building the lighter psymtabs with just enough information to be able to locate and read in the more expensive full symbol tables, when required, on demand. What you're seeing is that GDB found the symbol for line 65 in the partial symbol table, and was then trying to expand the corresponding full symbol table, but, due to some bug, the same symbol wasn't found in the full symbol table. This should never happen by design. First questions would be: which GDB version are you working with? --- try CVS HEAD; which debug info format is this? STABS? DWARF? Prefer DWARF. You can select a format at compile time with -gstabs+ or -gdwarf-2 . -- Pedro Alves