From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1665) id 1DD3F3858D28; Mon, 11 Dec 2023 17:17:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1DD3F3858D28 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1702315073; bh=b7a3krj3Uvca5cba9rtqAv5K0YI9i8LaUmTuml4f5bY=; h=From:To:Subject:Date:From; b=XMKIB1aXIBUB8AAxFQyHNDzGd88ppTZfsgzsBaIn+myxlQi0mgJfbsEwAUH5TvtDm aQxQUTbZnpBQabftjNJSXG5xo0aSjtmeRwtvjz9RooLE6aaQMJ7ujjIbmyNEV9m3c5 JWfei2AGqCcPqO1knLplzAtfWJRYT0NbZC/hngg4= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: =?utf-8?q?Fran=C3=A7ois-Xavier_Coudert?= To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-10035] fixincludes: Update darwin_flt_eval_method for macOS 14 X-Act-Checkin: gcc X-Git-Author: Francois-Xavier Coudert X-Git-Refname: refs/heads/releases/gcc-12 X-Git-Oldrev: ee327f2982daa2a1a6b39f2c6b2d159e2e1b6ad5 X-Git-Newrev: 65595b02668c99edcfd5aedac984ebcbb64a1685 Message-Id: <20231211171753.1DD3F3858D28@sourceware.org> Date: Mon, 11 Dec 2023 17:17:53 +0000 (GMT) List-Id: https://gcc.gnu.org/g:65595b02668c99edcfd5aedac984ebcbb64a1685 commit r12-10035-g65595b02668c99edcfd5aedac984ebcbb64a1685 Author: Francois-Xavier Coudert Date: Mon Dec 11 18:16:14 2023 +0100 fixincludes: Update darwin_flt_eval_method for macOS 14 On macOS 14, a guard in changed: -- MacOSX13.3.sdk/usr/include/math.h 2023-04-19 01:54:44 +++ MacOSX14.0.sdk/usr/include/math.h 2023-08-01 08:42:43 @@ -22,0 +23 @@ + @@ -43 +44 @@ -#if __FLT_EVAL_METHOD__ == 0 +#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == -1 @@ -49 +50 @@ -#elif __FLT_EVAL_METHOD__ == 2 || __FLT_EVAL_METHOD__ == -1 +#elif __FLT_EVAL_METHOD__ == 2 Therefore the darwin_flt_eval_method fixincludes fix doesn't match any longer, leading to a large number of testsuite failures like /private/var/gcc/regression/master/14-gcc/build/gcc/include-fixed/math.h:69:5: error: #error "Unsupported value of __FLT_EVAL_METHOD__." where __FLT_EVAL_METHOD__ = 16. This patch adjusts the fix to allow for both forms. Tested with make check in fixincludes on x86_64-apple-darwin23.0.0 and verifying that has indeed been fixed as expected. (backport of 93f803d53b5ccaabded9d7b4512b54da81c1c616) 2023-12-11 Rainer Orth fixincludes: * inclhack.def (darwin_flt_eval_method): Handle macOS 14 guard variant. * fixincl.x: Regenerate. * tests/base/math.h [DARWIN_FLT_EVAL_METHOD_CHECK]: Update test. Diff: --- fixincludes/fixincl.x | 8 ++++---- fixincludes/inclhack.def | 7 ++++--- fixincludes/tests/base/math.h | 1 + 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x index bad490453b7..b314506f00d 100644 --- a/fixincludes/fixincl.x +++ b/fixincludes/fixincl.x @@ -2,11 +2,11 @@ * * DO NOT EDIT THIS FILE (fixincl.x) * - * It has been AutoGen-ed February 27, 2022 at 07:47:03 PM by AutoGen 5.18.16 + * It has been AutoGen-ed December 11, 2023 at 06:14:06 PM by AutoGen 5.18.16 * From the definitions inclhack.def * and the template file fixincl */ -/* DO NOT SVN-MERGE THIS FILE, EITHER Sun Feb 27 19:47:03 UTC 2022 +/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Dec 11 18:14:06 CET 2023 * * You must regenerate it. Use the ./genfixes script. * @@ -3587,7 +3587,7 @@ tSCC* apzDarwin_Flt_Eval_MethodMachs[] = { * content selection pattern - do fix if pattern found */ tSCC zDarwin_Flt_Eval_MethodSelect0[] = - "^#if __FLT_EVAL_METHOD__ == 0$"; + "^#if __FLT_EVAL_METHOD__ == 0( \\|\\| __FLT_EVAL_METHOD__ == -1)?$"; #define DARWIN_FLT_EVAL_METHOD_TEST_CT 1 static tTestDesc aDarwin_Flt_Eval_MethodTests[] = { @@ -3598,7 +3598,7 @@ static tTestDesc aDarwin_Flt_Eval_MethodTests[] = { */ static const char* apzDarwin_Flt_Eval_MethodPatch[] = { "format", - "#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 16", + "%0 || __FLT_EVAL_METHOD__ == 16", (char*)NULL }; /* * * * * * * * * * * * * * * * * * * * * * * * * * diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index 7605ac89aa2..5cdd52a8de8 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -1772,10 +1772,11 @@ fix = { hackname = darwin_flt_eval_method; mach = "*-*-darwin*"; files = math.h; - select = "^#if __FLT_EVAL_METHOD__ == 0$"; + select = "^#if __FLT_EVAL_METHOD__ == 0( \\|\\| __FLT_EVAL_METHOD__ == -1)?$"; c_fix = format; - c_fix_arg = "#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 16"; - test_text = "#if __FLT_EVAL_METHOD__ == 0"; + c_fix_arg = "%0 || __FLT_EVAL_METHOD__ == 16"; + test_text = "#if __FLT_EVAL_METHOD__ == 0\n" + "#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == -1"; }; /* diff --git a/fixincludes/tests/base/math.h b/fixincludes/tests/base/math.h index 29b67579748..7b92f29a409 100644 --- a/fixincludes/tests/base/math.h +++ b/fixincludes/tests/base/math.h @@ -32,6 +32,7 @@ #if defined( DARWIN_FLT_EVAL_METHOD_CHECK ) #if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 16 +#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == -1 || __FLT_EVAL_METHOD__ == 16 #endif /* DARWIN_FLT_EVAL_METHOD_CHECK */