From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29945 invoked by alias); 11 Sep 2014 13:27:38 -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 29920 invoked by uid 48); 11 Sep 2014 13:27:35 -0000 From: "amodra at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug ada/63225] New: ada bootstrap failure when -fno-inline in STAGE1_CFLAGS Date: Thu, 11 Sep 2014 13:27:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: ada X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: amodra 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-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-09/txt/msg01418.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63225 Bug ID: 63225 Summary: ada bootstrap failure when -fno-inline in STAGE1_CFLAGS Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: amodra at gmail dot com When building mainline with STAGE1_CFLAGS="-g -O -fno-inline", with a system gnat 4.6, I see ada/cuintp.o: In function `UI_From_gnu': /src/gcc-current/gcc/ada/gcc-interface/cuintp.c:186: undefined reference to `uintp__vector_to_uint' So, ada/uintp.o has uintp__vector_to_uint as a *local* symbol, which seems reasonable to me since Vector_To_Uint isn't declared in uintp.ads. I worked around the problem by the attached patch, then reverted the patch and verified the newly built gnat exhibited the same behaviour. ./xgcc -B./ -c -g -O -fno-inline -gnatpg -gnatwns -gnata -Wall -nostdinc -I- -I. -Iada -I/src/gcc-current/gcc/ada -I/src/gcc-current/gcc/ada/gcc-interface /src/gcc-current/gcc/ada/uintp.adb -o ada/uintp.o gets me the local uintp__vector_to_uint, removing -fno-inline gives me a global symbol. That seems really odd, but by no stretch of imagination am I an ada programmer.