From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2122) id 1FD183858D1E; Fri, 21 Oct 2022 01:23:40 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1FD183858D1E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1666315421; bh=GjqJplH8mn5f/tCM3AfpuJ2ke/sO26s6mdsK+iOIT6w=; h=From:To:Subject:Date:From; b=FbJtcfQFFs15lI5H0EbZhFcKkxptj9qA9RNM5noUpoWCc43jzAlrsjAXdyM0iDJ8+ Y/h10LGDbSso0/AXIfpqMRVFOII1l81nA+97ewd1SydsSZyH9YQ4COJ0tTIgrmPpVA 3PCg6wgupbdnrKjxY/4qfrxVv4SZoVDL+PJIB7aI= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Jason Merrill To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc/devel/c++-contracts] libstdc++: contracts support is experimental X-Act-Checkin: gcc X-Git-Author: Jason Merrill X-Git-Refname: refs/heads/devel/c++-contracts X-Git-Oldrev: c436179eec24702efc27c9c19614192d3c6ad8a5 X-Git-Newrev: 704294a049802609e24839cdacd99054654d8f2f Message-Id: <20221021012341.1FD183858D1E@sourceware.org> Date: Fri, 21 Oct 2022 01:23:40 +0000 (GMT) List-Id: https://gcc.gnu.org/g:704294a049802609e24839cdacd99054654d8f2f commit 704294a049802609e24839cdacd99054654d8f2f Author: Jason Merrill Date: Tue Oct 18 12:40:35 2022 -0400 libstdc++: contracts support is experimental Since it got dropped from the standard, the header should move to experimental/. libstdc++-v3/ChangeLog: * include/std/contract: Moved to... * include/experimental/contract: ...here. * src/c++17/contract.cc * include/Makefile.am * include/Makefile.in: Adjust. gcc/testsuite/ChangeLog: * g++.dg/contracts/contracts14.C * g++.dg/contracts/contracts15.C * g++.dg/contracts/contracts16.C * g++.dg/contracts/contracts17.C: Header now experimental/contract. Diff: --- gcc/testsuite/g++.dg/contracts/contracts14.C | 2 +- gcc/testsuite/g++.dg/contracts/contracts15.C | 2 +- gcc/testsuite/g++.dg/contracts/contracts16.C | 2 +- gcc/testsuite/g++.dg/contracts/contracts17.C | 2 +- libstdc++-v3/src/c++17/contract.cc | 2 +- libstdc++-v3/include/Makefile.am | 2 +- libstdc++-v3/include/Makefile.in | 2 +- libstdc++-v3/include/{std => experimental}/contract | 1 - 8 files changed, 7 insertions(+), 8 deletions(-) diff --git a/gcc/testsuite/g++.dg/contracts/contracts14.C b/gcc/testsuite/g++.dg/contracts/contracts14.C index cef8a322315..bda392a1f9d 100644 --- a/gcc/testsuite/g++.dg/contracts/contracts14.C +++ b/gcc/testsuite/g++.dg/contracts/contracts14.C @@ -3,7 +3,7 @@ // { dg-do run } // { dg-options "-std=c++2a -fcontracts -fcontract-continuation-mode=on" } #include -#include +#include int __on_contract_violation (bool continue_, diff --git a/gcc/testsuite/g++.dg/contracts/contracts15.C b/gcc/testsuite/g++.dg/contracts/contracts15.C index bdab22b99fd..8110876286c 100644 --- a/gcc/testsuite/g++.dg/contracts/contracts15.C +++ b/gcc/testsuite/g++.dg/contracts/contracts15.C @@ -3,7 +3,7 @@ // { dg-do run } // { dg-options "-std=c++2a -fcontracts -fcontract-continuation-mode=on" } #include -#include +#include int __on_contract_violation (bool continue_, diff --git a/gcc/testsuite/g++.dg/contracts/contracts16.C b/gcc/testsuite/g++.dg/contracts/contracts16.C index 67d9390b694..26172281767 100644 --- a/gcc/testsuite/g++.dg/contracts/contracts16.C +++ b/gcc/testsuite/g++.dg/contracts/contracts16.C @@ -3,7 +3,7 @@ // { dg-do run } // { dg-options "-std=c++2a -fcontracts" } #include -#include +#include void handle_contract_violation(const std::contract_violation &violation) { std::cerr << "custom std::handle_contract_violation called:" diff --git a/gcc/testsuite/g++.dg/contracts/contracts17.C b/gcc/testsuite/g++.dg/contracts/contracts17.C index dbe03af05f7..099e0b2d03e 100644 --- a/gcc/testsuite/g++.dg/contracts/contracts17.C +++ b/gcc/testsuite/g++.dg/contracts/contracts17.C @@ -4,7 +4,7 @@ // { dg-do run } // { dg-options "-std=c++2a -fcontracts" } #include -#include +#include void handle_contract_violation(const std::contract_violation &violation) { std::cerr << "custom std::handle_contract_violation called:" diff --git a/libstdc++-v3/src/c++17/contract.cc b/libstdc++-v3/src/c++17/contract.cc index 769e6d3b722..8c649b5aafd 100644 --- a/libstdc++-v3/src/c++17/contract.cc +++ b/libstdc++-v3/src/c++17/contract.cc @@ -22,7 +22,7 @@ // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // . -#include +#include #include #include diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am index 041b01c1b1d..e2e489cb949 100644 --- a/libstdc++-v3/include/Makefile.am +++ b/libstdc++-v3/include/Makefile.am @@ -32,7 +32,6 @@ std_freestanding = \ ${std_srcdir}/bit \ ${std_srcdir}/bitset \ ${std_srcdir}/concepts \ - ${std_srcdir}/contract \ ${std_srcdir}/coroutine \ ${std_srcdir}/expected \ ${std_srcdir}/functional \ @@ -769,6 +768,7 @@ experimental_headers = \ ${experimental_srcdir}/array \ ${experimental_srcdir}/buffer \ ${experimental_srcdir}/chrono \ + ${experimental_srcdir}/contract \ ${experimental_srcdir}/deque \ ${experimental_srcdir}/executor \ ${experimental_srcdir}/forward_list \ diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in index a1ef0911230..4010004eced 100644 --- a/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in @@ -391,7 +391,6 @@ std_freestanding = \ ${std_srcdir}/bit \ ${std_srcdir}/bitset \ ${std_srcdir}/concepts \ - ${std_srcdir}/contract \ ${std_srcdir}/coroutine \ ${std_srcdir}/expected \ ${std_srcdir}/functional \ @@ -1116,6 +1115,7 @@ experimental_headers = \ ${experimental_srcdir}/array \ ${experimental_srcdir}/buffer \ ${experimental_srcdir}/chrono \ + ${experimental_srcdir}/contract \ ${experimental_srcdir}/deque \ ${experimental_srcdir}/executor \ ${experimental_srcdir}/forward_list \ diff --git a/libstdc++-v3/include/std/contract b/libstdc++-v3/include/experimental/contract similarity index 99% rename from libstdc++-v3/include/std/contract rename to libstdc++-v3/include/experimental/contract index 2eabb3190cd..611d9c6db82 100644 --- a/libstdc++-v3/include/std/contract +++ b/libstdc++-v3/include/experimental/contract @@ -23,7 +23,6 @@ // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // . -// FIXME experimental // FIXME string_view vs. freestanding // FIXME remove on_contract_violation?