From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31042 invoked by alias); 29 Mar 2013 21:20:01 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 31020 invoked by uid 48); 29 Mar 2013 21:19:48 -0000 From: "dick.guertin at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug debug/56783] g++ does not supply signatures for gdb on g++ 4.7 versions Date: Fri, 29 Mar 2013 21:20:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: debug X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dick.guertin at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-SW-Source: 2013-03/txt/msg02218.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56783 --- Comment #6 from Dick Guertin 2013-03-29 21:19:47 UTC --- (In reply to comment #5) > (In reply to comment #4) > > > > Johanathan, 4.2 was NOT a typo. That was the version of g++ that came with > > Snow Leopard. It was failing. I replaced it by version 4.7 obtained from > > SourceForge, and it fails in EXACTLY the same way. > > Then the problem is unlikely to be GCC. I'm fairly sure Apple's modified GCC > 4.2 should work with their own OS and linker. Maybe the problem is with your > GDB version, which you haven't stated. > > > Therefore, the linker must be adding the "signatures" to the linked module, > > probably by reading the object decks AND the source files. But that only seems > > to be happening with g++ 4.0.1 and associated linker. The linker with versions > > 4.2 and higher must have revised linkers that DO NOT create the "signatures". > > GCC doesn't have an associated linker, it is using the Apple linker that comes > with the OS. First, my apology for not giving the gdp version. I assume you meant this: GNU gdb 6.3.50-20050815 (Apple version gdb-1515) (Sat Jan 15 08:33:48 UTC 2011) Next, let me point out that this gdb works correctly with source modules compiled and linked on Tiger with g++ 4.0.1 and Mac OS X 10.4.11. It also worked on Leopard, system 10.5. But it now fails with the same sources compiled and link with g++ 4.2 or higher on Mac OS X 10.6. Therefore, it must be the Apple linker because if I use "vi" to view a linked module, I find path information to sources in the OS 10.4 system, but paths to objects in the 10.6 system. If gdb reads the 10.4 linked module, it then reads the sources and constructs the symbol-table with signatures. But if gdb reads the 10.6 linked modules, all it finds are references to the objects, which do NOT carry the signature information. So, I'm forced to agree with you, Unfortunately, Apple says they won't "fix" it in Snow Leopard (10.6), which is where the linker resides. Bummer.