From patchwork Wed Nov 29 13:14:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 171338 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp327286vqn; Wed, 29 Nov 2023 05:14:57 -0800 (PST) X-Google-Smtp-Source: AGHT+IEkgG1ACZnNN0bdShuhbi4Mf+5m+E0aNNNB31ZbFxpFRQCsLMeF0Ih+AL+8KD6AKOBJJw5X X-Received: by 2002:a0c:db90:0:b0:67a:4933:1479 with SMTP id m16-20020a0cdb90000000b0067a49331479mr14377858qvk.4.1701263696822; Wed, 29 Nov 2023 05:14:56 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1701263696; cv=pass; d=google.com; s=arc-20160816; b=IETfVAvw9Hox/gLcAAWeBYb9k6UQUIgdbEEfGjLQD72rhyVpTv6eCCc3OFrqhVyFi1 hM6vLz34RA2IM7sPHKzTfYEjdUTWUHhyYkBpoaU6hISQUE3r1zi7DyItDOPgz5ceEVHH /s4/c2ivcy1Puc5g5Y8rgso4QmV57PGNGUkFrKEPOlFPRINbWFEgiaMW1DBe1IwbhaUF kEj45fdBBYDXtpHci7xYnbIArDO2K3oZUzyNTesTscb7L5NenyTa3oSUuKR584gRQyH7 aWSNsL7N3DGjphaqtGMH4DzWJVmLrO+p7Scg2tQwDxV1Zi4UxKCoJ58DEDehipW7GjqD LVCg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:mime-version:message-id:date :user-agent:references:in-reply-to:subject:to:from:ironport-sdr :arc-filter:dmarc-filter:delivered-to; bh=pLaewi40lh3hJTx6usdJUhN3RK/o5ysaOVx73+TLQl8=; fh=latK34Go1qYE7lxYF/zXbknkwLVXZuue+Fn117AdRAw=; b=ppLec5UWyEltHDWAJ7duJcuJD0zJiIMSDio6mpvo4S6HsVGWPGt+QnC9S1WI0hwhbj GYgucS47QmGAYNcFbJGPWhiZbRTND3Dea+ZN6ep2ECnK1ADMAFJ3WFIhbL7HQvVa1VYs rY6cmMeGw5y6ltrOYKvQ54CgNq1WXznB+wh9qlp7bvLDqYyODL27eRnox3zUJScaLcp5 AokzkgbGjIEdlrqWJLvUrdG6JlJpRLHcvJGCVs3S2EqmMU2Dy1BDJGp7g4RwJRbYwlNx BfOXyC7ssPiAfZ+mbLw8nLkGviyaGRL/1Dd1cRieDEdp1s98+BmHTXh/QFDblsCqRua+ If+w== ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id c10-20020a0ce7ca000000b0067a2b079e32si8814887qvo.591.2023.11.29.05.14.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 05:14:56 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2F51E3882678 for ; Wed, 29 Nov 2023 13:14:54 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from esa2.mentor.iphmx.com (esa2.mentor.iphmx.com [68.232.141.98]) by sourceware.org (Postfix) with ESMTPS id 8FEE2385842B; Wed, 29 Nov 2023 13:14:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8FEE2385842B Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8FEE2385842B Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=68.232.141.98 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1701263669; cv=none; b=mDuClAwqF2nL6alUQRIS+StNDTfgefuaqzCWKs8EK+zg33CDjE9lZKuEzHIlk4C2KH4ACtu6FsE+aYLxkcOoXAICT/YE7OSVjaurfiaYk14sNA5v4EbMD2mgiWQNf+AW5eNVDU1kXzoQc4CFZvXB8k/gMsy1gz9TstgxUvESPkQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1701263669; c=relaxed/simple; bh=CANbcZnbbGjOOi2cr5eLuDW+h3WCMEqBMhMwUz/dg18=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=t/NhUoXb6d/pIvUad+cCdQKh9K+6rE0vSS4HS9aIQkCNMAd0cg9joOTy4nvsL3hviwc1LxF6dqyEnh4ZUas2VgUSYlGKe7vPCGD/sDwOEfJn56XA+Vt35An2WiL4EoYtfZI9OUWxO+NyPtr4tjWhmC+nO1EZWKvaW/Ka89ntUXA= ARC-Authentication-Results: i=1; server2.sourceware.org X-CSE-ConnectionGUID: rBCHJhUaQaezS4UXCQa5dQ== X-CSE-MsgGUID: vOdVk7UPSmSktWFasWK5GQ== X-IronPort-AV: E=Sophos;i="6.04,235,1695715200"; d="scan'208,223";a="26878557" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa2.mentor.iphmx.com with ESMTP; 29 Nov 2023 05:14:27 -0800 IronPort-SDR: wRGvG5vJbmeUturfok6tB1UhfdbhjnfQvGXzaotD74Wwb5MaXwD8YFiBlW+xx+EwT64ynkwgh9 ldupSYEDtsG8fuTX5eWZIwprVGpCMou1VpU4/kREFAS3stwyqDtN0QlBoOxTNEwABh82eYq1QF nYDA5tkPmlt/amgEdPzTxxPV+MUcR/pp84J/a0UPJhDTM9kVZE4ZDe43QhlYTD7BHgqbgNNIbn raHDbWAcuONcKL3VdcP5ka2NYS4y6sFz0KMhYflVnQuGG7rSmkKVtfvFuDTXK1gd+AfPrAbQyw SHY= From: Thomas Schwinge To: Jonathan Wakely , , Subject: Fix '23_containers/span/at.cc' for '-fno-exceptions' configurations (was: [committed] libstdc++: Add std::span::at for C++26 (P2821R5)) In-Reply-To: <20231121161026.2031101-1-jwakely@redhat.com> References: <20231121161026.2031101-1-jwakely@redhat.com> User-Agent: Notmuch/0.29.3+94~g74c3f1b (https://notmuchmail.org) Emacs/28.2 (x86_64-pc-linux-gnu) Date: Wed, 29 Nov 2023 14:14:20 +0100 Message-ID: <87plzs66s3.fsf@euler.schwinge.homeip.net> MIME-Version: 1.0 X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-10.mgc.mentorg.com (139.181.222.10) To svr-ies-mbx-10.mgc.mentorg.com (139.181.222.10) X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783904281857200618 X-GMAIL-MSGID: 1783904281857200618 Hi! On 2023-11-21T16:10:17+0000, Jonathan Wakely wrote: > Tested x86_64-linux. Pushed to trunk. > --- /dev/null > +++ b/libstdc++-v3/testsuite/23_containers/span/at.cc Pushed to master branch commit 762b428815d4e762abdff5c1ffc1e9aa60da7870 "Fix '23_containers/span/at.cc' for '-fno-exceptions' configurations", see attached. Grüße Thomas > @@ -0,0 +1,36 @@ > +// { dg-do run { target c++26 } } > + > +#include > +#include > +#include > + > +void > +test_at() > +{ > + int arr[4]{0, 1, 2, 3}; > + std::span s(arr); > + VERIFY(s.at(2) == 2); > +#if __cpp_exceptions > + try { > + s.at(4); // { dg-warning "ignoring return value" } > + VERIFY(false); > + } catch (const std::out_of_range&) { > + } > +#endif > + > + auto s2 = s.subspan(1, 2); > + VERIFY(s2.at(0) == 1); > + VERIFY(s2.at(1) == 2); > +#if __cpp_exceptions > + try { > + s2.at(2); // { dg-warning "ignoring return value" } > + VERIFY(false); > + } catch (const std::out_of_range&) { > + } > +#endif > +} > + > +int main() > +{ > + test_at(); > +} ----------------- 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 762b428815d4e762abdff5c1ffc1e9aa60da7870 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 28 Nov 2023 17:30:13 +0100 Subject: [PATCH] Fix '23_containers/span/at.cc' for '-fno-exceptions' configurations Added in recent commit 1fa85dcf656e2f2c7e483c9ed3c2680bf7db6858 "libstdc++: Add std::span::at for C++26 (P2821R5)", the test case already does use '#if __cpp_exceptions', but failed to correspondingly guard the 'dg-warning' directives, resulting in: FAIL: 23_containers/span/at.cc -std=gnu++26 (test for warnings, line 15) FAIL: 23_containers/span/at.cc -std=gnu++26 (test for warnings, line 26) PASS: 23_containers/span/at.cc -std=gnu++26 (test for excess errors) PASS: 23_containers/span/at.cc -std=gnu++26 execution test libstdc++-v3/ * testsuite/23_containers/span/at.cc: Fix for '-fno-exceptions' configurations. --- libstdc++-v3/testsuite/23_containers/span/at.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/testsuite/23_containers/span/at.cc b/libstdc++-v3/testsuite/23_containers/span/at.cc index dc4d8e3e8eb..6f6fc396bc7 100644 --- a/libstdc++-v3/testsuite/23_containers/span/at.cc +++ b/libstdc++-v3/testsuite/23_containers/span/at.cc @@ -12,7 +12,7 @@ test_at() VERIFY(s.at(2) == 2); #if __cpp_exceptions try { - s.at(4); // { dg-warning "ignoring return value" } + s.at(4); // { dg-warning "ignoring return value" "" { target exceptions_enabled } } VERIFY(false); } catch (const std::out_of_range&) { } @@ -23,7 +23,7 @@ test_at() VERIFY(s2.at(1) == 2); #if __cpp_exceptions try { - s2.at(2); // { dg-warning "ignoring return value" } + s2.at(2); // { dg-warning "ignoring return value" "" { target exceptions_enabled } } VERIFY(false); } catch (const std::out_of_range&) { } -- 2.34.1