From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 14A7C38582A4; Wed, 21 Dec 2022 07:23:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 14A7C38582A4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1671607405; bh=ho/XaInAdm67YfE/ObW2Gcb6gfnv0QstBZsyakxSEbI=; h=From:To:Subject:Date:In-Reply-To:References:From; b=LgVE2gmIrBxKBE7OU20r7Z1yHQ8o/AaOD+onbZfuXzbJRjLn1q/OXOPlYmjThMROP b0++PGa6Dt86kEXF8wkdRDmhjqCg6L/6thZ0Bf3oQo8gf0bbFIHXSiIY/XKgzusP0y BwYli+mbSuT5ESaHs/GxOlTEMwK9UHJpfsgUUUUE= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libfortran/108056] [12 Regression] backward compatibility issue between 11 and 12 Date: Wed, 21 Dec 2022 07:23:24 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libfortran X-Bugzilla-Version: 12.0 X-Bugzilla-Keywords: ABI X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 12.3 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=3D108056 --- Comment #20 from CVS Commits --- The releases/gcc-12 branch has been updated by Tobias Burnus : https://gcc.gnu.org/g:ed3e8a988e0ec5b926093e26dfeef1d8b7504d1f commit r12-9003-ged3e8a988e0ec5b926093e26dfeef1d8b7504d1f Author: Tobias Burnus Date: Wed Dec 21 07:55:22 2022 +0100 libgfortran's ISO_Fortran_binding.c: Use GCC11 version for backward-only code [PR108056] Since GCC 12, the conversion between the array descriptors formats - the internal (GFC) and the C binding one (CFI) - moved to the compiler itse= lf such that the cfi_desc_to_gfc_desc/gfc_desc_to_cfi_desc functions are o= nly used with older code (GCC 9 to 11). The newly added checks caused asse= rts as older code did not pass the proper values (e.g. real(4) as effective argument arrived as BT_ASSUME type as the effective type got lost inbetween). As proposed in the PR, revert to the GCC 11 version - known bugs is bet= ter than some fixes and new issues. Still, GCC 12 is much better in terms of TS29113 support and should really be used. This patch uses the current libgomp version of the GCC 11 branch, except it fixes the GFC version number (which is 0), uses calloc instead of malloc, and sets the lower bound to 1 instead of keeping it as is for CFI_attribute_other. (cherry picked from commit e205ec03f0794aeac3e8a89e947c12624d5a274e) (This cherry pick excludes an accidentally committed file, which was removed in follow-up commit 18af26fc375398f0a7cd7bae5aabebd447f8c899.) libgfortran/ChangeLog: PR libfortran/108056 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc, gfc_desc_to_cfi_desc): Mostly revert to GCC 11 version for those backward-compatiblity-only functions.=