From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 819DF385842C; Mon, 2 Jan 2023 10:53:40 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 819DF385842C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1672656820; bh=5lLOF0oyce5C0fjSTQebqcW2HDKP0vcWQoGgc7WhJ30=; h=From:To:Subject:Date:In-Reply-To:References:From; b=OzBfammBnwbTK3jee9Tm5hWAop9b9O0dcan5PRReLeCxgVvWalQCSUFB7x7LBI0RF 2vTTij8COEcHmkhwpVkp/jsYfC/lWhBEUZeM0Et9UrjiYcFmZC7devFPFTggO/ajwr NU0I9slkPmoRR0+ofdiQEKfiaf4yJeEU0X8PFpuw= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug ada/108202] [13 Regression] Many new acats fails on 32bit Darwin hosts. Date: Mon, 02 Jan 2023 10:53:38 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: ada X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: 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: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D108202 --- Comment #2 from CVS Commits --- The master branch has been updated by Iain D Sandoe : https://gcc.gnu.org/g:8385088039f58a1d403cbb0792105236d240de85 commit r13-4952-g8385088039f58a1d403cbb0792105236d240de85 Author: Iain Sandoe Date: Thu Dec 22 17:32:59 2022 +0000 Ada,Darwin: Do not link libgcc statically on Darwin 8 and 9 [PR108202]. Normally, GCC executables are built with -static-libstdc++ -static-libg= cc on Darwin. This is fine in most cases, because GCC executables typical= ly do no use exceptions. However gnat1 does use exceptions and also pulls in system libraries that are linked against the installed shared libgcc which contains the system unwinder. This means that gnat1 effectively = has two unwinder instances (which does not work reliably since the unwinders have global state). A recent change in the initialization of FDEs has made this a hard error now on Darwin versions (8 and 9) with libgcc installed in /usr/lib (gna= t1 now hangs when an exception is thrown). The solution is to link libgcc dynamically, picking up the installed system version. To do this we strip -static-libgcc from the link flags. PR ada/108202 gcc/ada/ChangeLog: * gcc-interface/Make-lang.in (GCC_LINKERFLAGS, GCC_LDFLAGS): Versions of ALL_LINKERFLAGS, LDFLAGS with -Werror and -static-libgcc filtered out for Darwin8 and 9 (-Werror is filte= red out for other hosts).=