From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2086.outbound.protection.outlook.com [40.107.21.86]) by sourceware.org (Postfix) with ESMTPS id 84491385783B for ; Tue, 28 Nov 2023 16:53:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 84491385783B Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 84491385783B Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.21.86 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1701190429; cv=pass; b=BrGId5DkCA2e4XaOH0Vw/YW6sxikBmrB+dM1CkObpTN/sytT06ydAGMnqjzPIaGR15Cn7utjiervqUA9T2n/PVYz332NiuWUyrTdK4s3qZSN0syrvYugbfN4xo7FLRwyHn8CSYCO8embJgU5POMGKEJzoGWifzKN+KsH1zXVJik= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1701190429; c=relaxed/simple; bh=PqwIDaxfc0qrbtDKBqwNLrIn55HhuMC01MKvEV3kByo=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:Message-ID: MIME-Version; b=iBW+1U9yZdXuAPzQavdCGsbYXrG6bakRvG6ED+r1GoX1npxBZWvHLhenCmn4ZrmGjE//28uxLz0RHsJ3t9/JahEjAxmlK1McDjh7ZJ1ATI6a9r9nchL6mK+hC9suPsL2hVrco3/xOlDWvJcQVZwYZoi1XBiyaJeOp56KFU60SiM= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=hjCjFFutGgsgV+zYNRUAXMTIXglEmx0ZWf89SSPniCKZ3kH6yexg13Mbp5WSZ7D/7v5iQSrVJzqbhPwsrflvCTdccBaN6Tl/UW9s/QuVmpE8ICmCZOPqoyvqL6Zn66QYR+NlqBLq64Xsl8KU/xsMiKUkvaUkomJ1ygaKWCi2+sD9HBYt3GrYhr/cjEMbCvozX3n/4QTIu49ogEA+QTfSWxuqxpasOAQ8cjH/qdPaMzoVcrh7TsM+h4wjzNqDg5qjL04QHTuD4+FYhSXw5vUk1mo9oCbbnIqH1Qqe1cPQnp0P9CR1F7LJRLCXYBPyPGg8wsF3O2gd+K71z7+OPtJvNA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=vX6hGykSfM15X4pxSJo05Cps3VH5E3L9QeGEqDSRr9I=; b=S0enU7xvce8tIGt/rlt5kSkNHbbvON7yZJrCkeHedt7LivVcfcZ6vx/uxxd2GTiiI66K1LkuIMSxI2aSph6tFsSF5LshRjgmoqSXYFdYG8p1wiY78X9zs2bJ6kuoXe0H8PCSku8OvhmVFmSAxGrP9E2kqqiy7j/pFxjYEpv4BcfLdLrIGU8MDvGwohsOR3HRBChblTCUKlQ1f0nB2OXncmZQXZXNSSPbvFkq5vPpGE3rj98joODzHDzVKrHzsPLtz/BFcP5tC9+Xkfot3CO99nBxoGWgk4Py5w8yYxykMi4Jh5QpqdH9iHRDtyRLb9WBBWOQrCgzV3mhExCxsvxnNQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vX6hGykSfM15X4pxSJo05Cps3VH5E3L9QeGEqDSRr9I=; b=3yof6SqXoniF4uMXPgYquw0iwXlDyPgDuP89k5XiaZoYozoJ/EsjNp7bpNO5NpdtZ05S4ouxL9FqoOZIYDo9EhxtNswxcnKTQBHf9OTFIzBJ8aoph9csQUgNTx6L53DcNY9sBR2hF76WcVwMjiAYmi5GtbOnkr4vI7XWpcOhb3M= Received: from AS9PR04CA0154.eurprd04.prod.outlook.com (2603:10a6:20b:48a::17) by DU0PR08MB8321.eurprd08.prod.outlook.com (2603:10a6:10:40e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.27; Tue, 28 Nov 2023 16:53:41 +0000 Received: from AM3PEPF0000A79C.eurprd04.prod.outlook.com (2603:10a6:20b:48a:cafe::cf) by AS9PR04CA0154.outlook.office365.com (2603:10a6:20b:48a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.28 via Frontend Transport; Tue, 28 Nov 2023 16:53:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM3PEPF0000A79C.mail.protection.outlook.com (10.167.16.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.17 via Frontend Transport; Tue, 28 Nov 2023 16:53:40 +0000 Received: ("Tessian outbound 5d213238733f:v228"); Tue, 28 Nov 2023 16:53:40 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: cb99c04800f7a261 X-CR-MTA-TID: 64aa7808 Received: from 7aff6c541d78.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 637DE482-CDBE-498B-B96B-37C8696EDBE3.1; Tue, 28 Nov 2023 16:53:33 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7aff6c541d78.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 28 Nov 2023 16:53:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WGdyy2oiFSMUmiI7SansAc8aMmqwGEzFR3kmq6vFrKWI50gmXlfTDjShuZmCt0AYkKvxGVXNjh3p2Yoi5cDzXaae76nCglmvxXrp/C6M9nAejeHdXg29FlCk79M/fjg0XIa2gRYtP92gglYHpjUZRnbfgMP74qRQIjRigCd4XgYQaR4t2i7EAvtXIT50BGpz4v3uL1k67PXQf209GuNhoN9SJAYfEohPwc5C+Gb5ast//LhQMNgYhFh+33z4WNyVlwENMSG29hNCRUbceQaXtFgUyCbM8fVPCYrHEdN9bKXPPex2Y7RsGeAwyvEoQl028+o7zmUGnM314bXEgXhHPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=vX6hGykSfM15X4pxSJo05Cps3VH5E3L9QeGEqDSRr9I=; b=fKDeGR9ggk5FRyMdCUa+JNa89kafKNQj/UNC+dI2okrM8YG1YZtgF4uZ3iZlf74jWq571pgpzMVOlXjXRDhaajvBBctYDxyoKPqrLvJ27eUDbBsTtguSer+fZtRWHQ7Zr6v7jxywWXH+TqqWEQD/hr1iGy1o5kRYDLB5JIcaNWtUD6V+jsUkIE8rjoIsaqiKv1Xz5y03wfMb+q+f8Icl/vNcI5W83/ZBfaz4Hhil6mD/4u4Cp3ncrq+jK649Paz4NRCv5AzBtQdZt+XYYZzX9C4bye8CC5Lq59sFQiVOHpEwGpIeSuPwn7ooQ3AAOt+Ry6DDyPEveEjHTt/FPR24oQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vX6hGykSfM15X4pxSJo05Cps3VH5E3L9QeGEqDSRr9I=; b=3yof6SqXoniF4uMXPgYquw0iwXlDyPgDuP89k5XiaZoYozoJ/EsjNp7bpNO5NpdtZ05S4ouxL9FqoOZIYDo9EhxtNswxcnKTQBHf9OTFIzBJ8aoph9csQUgNTx6L53DcNY9sBR2hF76WcVwMjiAYmi5GtbOnkr4vI7XWpcOhb3M= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) by PA4PR08MB7483.eurprd08.prod.outlook.com (2603:10a6:102:2a7::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.27; Tue, 28 Nov 2023 16:53:31 +0000 Received: from PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::8512:cc10:24d4:1919]) by PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::8512:cc10:24d4:1919%5]) with mapi id 15.20.7025.022; Tue, 28 Nov 2023 16:53:31 +0000 Date: Tue, 28 Nov 2023 16:53:28 +0000 From: Alex Coplan To: Thomas Schwinge Cc: , Marek Polacek , Jason Merrill , Nathan Sidwell , Joseph Myers , Iain Sandoe Subject: Re: [PATCH v5] c-family: Implement __has_feature and __has_extension [PR60512] Message-ID: References: <87v89l6f1h.fsf@euler.schwinge.homeip.net> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <87v89l6f1h.fsf@euler.schwinge.homeip.net> X-ClientProxiedBy: LO4P265CA0321.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:390::12) To PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: PAWPR08MB8958:EE_|PA4PR08MB7483:EE_|AM3PEPF0000A79C:EE_|DU0PR08MB8321:EE_ X-MS-Office365-Filtering-Correlation-Id: 9f829c26-6009-4e8c-a08f-08dbf03292fc x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: m03IlfBmKd2q2fAbBrer0L8/WhTNcoQv95s1OblQ1q9lZyLQFi1vuE5hSDJ6X2NFn12WWHZvJI7+Ip/ys1yxMqj4MLIpWu6FvbTpC50WvR2eJSgzBzC075AIXL5xUxjA1zpZ/h1RUlcuNejkYpyMgXq9L3ZwBVgta3ObD08Bkzk/5uFjKe+HaQuOjBp6mDXKremhxQwiQa4O7DO0OqNNvbyFuCVHc0fdL2RIyGPMiwxZthFeNcW77Greedfkso0SfzFej3Ndi0emj6B+YyLqV3I/wEcz+83edn/SN3lzE2PqHBOkKJ/szHdjUJBiKrrzVhBdLtbkCerjqpuCK80WNADRdMw6o9T6q2WTAd/E2Q7RP9iu0VN/uTefCNlT30eprxsz+PylCydBDk8DRcjyLwRtJxJFw1xuUr0Xarfewr2Tt2Us+Vw1yNJtrnihgrQeK3QrszGZ8g5RAZC4zsJrrFaTaiyn2Ludtud6EvIyCcA5IStVcYuYYIqe69wPief6YouTn7bWrmwS+Bv95X2LRVD8nyxOY14cKBZug0ubu+w9KzsjdKl7uwlp5NvK4V0y X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAWPR08MB8958.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(396003)(136003)(346002)(230922051799003)(451199024)(64100799003)(186009)(1800799012)(2616005)(26005)(6666004)(53546011)(6506007)(66574015)(8676002)(8936002)(6486002)(4326008)(5660300002)(86362001)(44832011)(478600001)(316002)(66946007)(66556008)(6916009)(66476007)(54906003)(38100700002)(83380400001)(6512007)(36756003)(41300700001)(2906002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7483 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM3PEPF0000A79C.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1295fcee-8bdc-46ec-dd17-08dbf0328d36 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i+uR/mw2kaASdCUOppTCyWXm0Ha4zRpI/UMGMqBRRQRED3kWhWu/ufqcfH54kep5khpyNedAG7LVnnCR4hxNp+C8L5lhR7zhgQvFgj5KpKZxGLk1bNYV9cZ1nsWBna0Rx1P0k6Fdfv74d3vhqXB55J2hiv8hzTKjaeiijzW7JH23XjkWiPaHLQ6Ne1WI8G2oxX0lQEsEuD+WKYBNBpF794JB2bgx8Sj+n1CKl27qpPgGoG9GkO5Uh3YVs2mp0hDIQDXY9ChWxTHncvQEQJSczBBVBds0PZBiSOSLziNM1aCHGzCwu/uZ1310KCb4i/5bPYQMkuOGagFr6DCbsZ0xOGeBTeuS07it7ykYggtet8Ox3+Xq2PUWcjMoCk8rnxekT+qVEehvrateQPWxZhPy+lBX7cEha6pZ9l871oiZr7AedHda3AXD8hH3D0JnwYgW2NE/w3OY3B30SbbVsDNayO1fImKPhxlfDsqScNvZsUQZbB73Le0vsA8dwhG5KDQzJ4v+lWt7t6UpbQBNUBW1OlC7k45WxRpc83N+qL8FWRB+I+F9R7DQrYKSEk0MF9Bq6fK/M+TPTOKs0K4SA6disstjVwOoByJaTwhFOrRVxCjl6PlZxQ9D41dDjx7GcbXg849CYFyp8xyGmfkqUxNjt+EV2R/RNQhfcW5Kec00t0r73K9HpImk5wsU28HAshqck/STK3DEI6oOAvM6eLdPjax7/fI9QFvVvvFh+YODpK19oWyYrUoJA8RVWpGzgroU X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(346002)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799012)(82310400011)(36840700001)(46966006)(40470700004)(6666004)(6862004)(4326008)(8676002)(6512007)(6506007)(478600001)(53546011)(8936002)(54906003)(316002)(6486002)(40460700003)(81166007)(356005)(47076005)(36756003)(40480700001)(41300700001)(336012)(86362001)(107886003)(26005)(44832011)(70586007)(36860700001)(2906002)(2616005)(83380400001)(66574015)(70206006)(82740400003)(5660300002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Nov 2023 16:53:40.7649 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9f829c26-6009-4e8c-a08f-08dbf03292fc X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM3PEPF0000A79C.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8321 X-Spam-Status: No, score=-12.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 28/11/2023 17:03, Thomas Schwinge wrote: > Hi! > > On 2023-11-17T14:50:45+0000, Alex Coplan wrote: > > --- a/gcc/cp/cp-objcp-common.cc > > +++ b/gcc/cp/cp-objcp-common.cc > > > +/* Table of features for __has_{feature,extension}. */ > > + > > +static constexpr cp_feature_info cp_feature_table[] = > > +{ > > + { "cxx_exceptions", &flag_exceptions }, > > + { "cxx_rtti", &flag_rtti }, > > + { "cxx_access_control_sfinae", { cxx11, cxx98 } }, > > Here we see that 'cxx_exceptions', 'cxx_rtti' are dependent on > '-fexceptions', '-frtti'. Certain GCC configurations may decide to > default to '-fno-exceptions' and/or '-fno-rtti'... > > > --- /dev/null > > +++ b/gcc/testsuite/g++.dg/ext/has-feature.C > > @@ -0,0 +1,206 @@ > > +// { dg-do compile } > > +// { dg-options "" } > > + > > +#define FEAT(x) (__has_feature(x) && __has_extension(x)) > > +#define CXX11 (__cplusplus >= 201103L) > > +#define CXX14 (__cplusplus >= 201402L) > > + > > +#if !FEAT(cxx_exceptions) || !FEAT(cxx_rtti) > > +#error > > +#endif > > ..., but here, they are assumed available unconditionally. OK to push > "Adjust 'g++.dg/ext/has-feature.C' for default-'-fno-exceptions', '-fno-rtti' configurations", > see attached? LGTM, but I can't approve the patch. Sorry for the breakage and thanks for the fix. Alex > > > Grüße > Thomas > > > ----------------- > Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 > From 89482e73066fcd6da5dbc93402e77e28f948a96c Mon Sep 17 00:00:00 2001 > From: Thomas Schwinge > Date: Tue, 28 Nov 2023 15:57:09 +0100 > Subject: [PATCH] Adjust 'g++.dg/ext/has-feature.C' for > default-'-fno-exceptions', '-fno-rtti' configurations > > ..., where you currently get: > > FAIL: g++.dg/ext/has-feature.C -std=gnu++98 (test for excess errors) > [...] > > Minor fix-up for recent commit 06280a906cb3dc80cf5e07cf3335b758848d488d > "c-family: Implement __has_feature and __has_extension [PR60512]". > > gcc/testsuite/ > * g++.dg/ext/has-feature.C: Adjust for default-'-fno-exceptions', > '-fno-rtti' configurations. > --- > gcc/testsuite/g++.dg/ext/has-feature.C | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/gcc/testsuite/g++.dg/ext/has-feature.C b/gcc/testsuite/g++.dg/ext/has-feature.C > index 52191b78fd6..bcfe82469ae 100644 > --- a/gcc/testsuite/g++.dg/ext/has-feature.C > +++ b/gcc/testsuite/g++.dg/ext/has-feature.C > @@ -5,7 +5,11 @@ > #define CXX11 (__cplusplus >= 201103L) > #define CXX14 (__cplusplus >= 201402L) > > -#if !FEAT(cxx_exceptions) || !FEAT(cxx_rtti) > +#if FEAT(cxx_exceptions) != !!__cpp_exceptions > +#error > +#endif > + > +#if FEAT(cxx_rtti) != !!__cpp_rtti > #error > #endif > > -- > 2.34.1 >