This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository gcc.
from a6201597c4e Daily bump. new 4e1f6865ac5 c++, contracts: Remove the abandoned C++2a implementation. new 918aa3fe87f c++, contracts: Add a contract scope per basic.scope.contract. new c928dc51966 c++, contracts: C++26 base implementation as per P2900R14. new cac79586e1a c++, contracts: Work around GCC IPA bug, PR121936 by wrappi [...] new 080b1cb5e4a c++, contracts: Apply P200R14 constification. new fbde291af66 libstdc++, contracts: Add base P2900R14 contracts support. new 7f914294fed c++, contracts: Add tests for C++26 contracts. new 64674a295b6 c++, contracts: Allow contract checks as outlined functions. new 9a8c08aaad5 c++, contracts: Add caller-side contract checks, and controls.
The 9 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/c-family/c-common.cc | 4 +- gcc/c-family/c-common.h | 5 + gcc/c-family/c-cppbuiltin.cc | 6 +- gcc/c-family/c.opt | 76 +- gcc/c-family/c.opt.urls | 27 +- gcc/config/darwin.h | 6 + gcc/cp/call.cc | 8 +- gcc/cp/class.cc | 5 + gcc/cp/constexpr.cc | 103 +- gcc/cp/contracts.cc | 4241 ++++++++++++-------- gcc/cp/contracts.h | 332 +- gcc/cp/coroutines.cc | 3 - gcc/cp/cp-gimplify.cc | 173 +- gcc/cp/cp-objcp-common.cc | 33 - gcc/cp/cp-tree.def | 6 +- gcc/cp/cp-tree.h | 63 +- gcc/cp/decl.cc | 158 +- gcc/cp/decl2.cc | 29 +- gcc/cp/lambda.cc | 3 + gcc/cp/lex.cc | 6 +- gcc/cp/mangle.cc | 7 - gcc/cp/module.cc | 10 +- gcc/cp/name-lookup.cc | 4 +- gcc/cp/name-lookup.h | 2 + gcc/cp/parser.cc | 818 ++-- gcc/cp/pt.cc | 118 +- gcc/cp/search.cc | 26 - gcc/cp/semantics.cc | 36 +- gcc/cp/tree.cc | 95 +- gcc/doc/invoke.texi | 165 +- .../g++.dg/contracts/backtrace_handler/Makefile | 13 - .../g++.dg/contracts/backtrace_handler/README | 12 - .../contracts/backtrace_handler/assert_fail.cpp | 23 - .../contracts/backtrace_handler/example_out.txt | 12 - .../contracts/backtrace_handler/example_pretty.txt | 8 - .../handle_contract_violation.cpp | 26 - .../contracts/backtrace_handler/prettytrace.sh | 30 - gcc/testsuite/g++.dg/contracts/contracts-access1.C | 129 - gcc/testsuite/g++.dg/contracts/contracts-assume1.C | 30 - gcc/testsuite/g++.dg/contracts/contracts-assume2.C | 35 - gcc/testsuite/g++.dg/contracts/contracts-assume3.C | 20 - gcc/testsuite/g++.dg/contracts/contracts-assume4.C | 20 - gcc/testsuite/g++.dg/contracts/contracts-assume5.C | 34 - gcc/testsuite/g++.dg/contracts/contracts-assume6.C | 61 - gcc/testsuite/g++.dg/contracts/contracts-comdat1.C | 19 - gcc/testsuite/g++.dg/contracts/contracts-config1.C | 47 - .../g++.dg/contracts/contracts-constexpr1.C | 75 - .../g++.dg/contracts/contracts-constexpr2.C | 58 - .../g++.dg/contracts/contracts-constexpr3.C | 10 - .../g++.dg/contracts/contracts-conversion1.C | 19 - .../g++.dg/contracts/contracts-ctor-dtor1.C | 177 - .../g++.dg/contracts/contracts-ctor-dtor2.C | 35 - gcc/testsuite/g++.dg/contracts/contracts-cv1.C | 37 - .../g++.dg/contracts/contracts-deduced1.C | 108 - .../g++.dg/contracts/contracts-deduced2.C | 85 - gcc/testsuite/g++.dg/contracts/contracts-err1.C | 7 - gcc/testsuite/g++.dg/contracts/contracts-externC.C | 20 - gcc/testsuite/g++.dg/contracts/contracts-friend1.C | 41 - gcc/testsuite/g++.dg/contracts/contracts-ft1.C | 14 - gcc/testsuite/g++.dg/contracts/contracts-ignore1.C | 30 - gcc/testsuite/g++.dg/contracts/contracts-ignore2.C | 27 - .../g++.dg/contracts/contracts-large-return.C | 15 - .../g++.dg/contracts/contracts-multiline1.C | 20 - .../contracts/contracts-multiple-inheritance1.C | 15 - .../contracts/contracts-multiple-inheritance2.C | 33 - .../g++.dg/contracts/contracts-nested-class1.C | 24 - .../g++.dg/contracts/contracts-nested-class2.C | 41 - gcc/testsuite/g++.dg/contracts/contracts-nocopy1.C | 24 - .../g++.dg/contracts/contracts-override.C | 43 - gcc/testsuite/g++.dg/contracts/contracts-post1.C | 74 - gcc/testsuite/g++.dg/contracts/contracts-post2.C | 14 - gcc/testsuite/g++.dg/contracts/contracts-post3.C | 16 - gcc/testsuite/g++.dg/contracts/contracts-post4.C | 36 - gcc/testsuite/g++.dg/contracts/contracts-post5.C | 19 - gcc/testsuite/g++.dg/contracts/contracts-post6.C | 30 - gcc/testsuite/g++.dg/contracts/contracts-post7.C | 30 - gcc/testsuite/g++.dg/contracts/contracts-pre1.C | 36 - gcc/testsuite/g++.dg/contracts/contracts-pre10.C | 217 - gcc/testsuite/g++.dg/contracts/contracts-pre2.C | 213 - gcc/testsuite/g++.dg/contracts/contracts-pre2a1.C | 33 - gcc/testsuite/g++.dg/contracts/contracts-pre2a2.C | 23 - gcc/testsuite/g++.dg/contracts/contracts-pre3.C | 526 --- gcc/testsuite/g++.dg/contracts/contracts-pre4.C | 93 - gcc/testsuite/g++.dg/contracts/contracts-pre5.C | 82 - gcc/testsuite/g++.dg/contracts/contracts-pre6.C | 74 - gcc/testsuite/g++.dg/contracts/contracts-pre7.C | 135 - gcc/testsuite/g++.dg/contracts/contracts-pre9.C | 147 - gcc/testsuite/g++.dg/contracts/contracts-redecl1.C | 149 - gcc/testsuite/g++.dg/contracts/contracts-redecl2.C | 149 - gcc/testsuite/g++.dg/contracts/contracts-redecl3.C | 196 - gcc/testsuite/g++.dg/contracts/contracts-redecl4.C | 57 - gcc/testsuite/g++.dg/contracts/contracts-redecl5.C | 101 - gcc/testsuite/g++.dg/contracts/contracts-redecl6.C | 196 - gcc/testsuite/g++.dg/contracts/contracts-redecl7.C | 96 - gcc/testsuite/g++.dg/contracts/contracts-redecl8.C | 64 - .../g++.dg/contracts/contracts-tmpl-attr1.C | 19 - .../g++.dg/contracts/contracts-tmpl-spec1.C | 122 - .../g++.dg/contracts/contracts-tmpl-spec2.C | 448 --- .../g++.dg/contracts/contracts-tmpl-spec3.C | 51 - gcc/testsuite/g++.dg/contracts/contracts1.C | 49 - gcc/testsuite/g++.dg/contracts/contracts10.C | 74 - gcc/testsuite/g++.dg/contracts/contracts11.C | 103 - gcc/testsuite/g++.dg/contracts/contracts12.C | 15 - gcc/testsuite/g++.dg/contracts/contracts13.C | 51 - gcc/testsuite/g++.dg/contracts/contracts14.C | 59 - gcc/testsuite/g++.dg/contracts/contracts15.C | 57 - gcc/testsuite/g++.dg/contracts/contracts16.C | 35 - gcc/testsuite/g++.dg/contracts/contracts17.C | 36 - gcc/testsuite/g++.dg/contracts/contracts18.C | 16 - gcc/testsuite/g++.dg/contracts/contracts19.C | 20 - gcc/testsuite/g++.dg/contracts/contracts2.C | 14 - gcc/testsuite/g++.dg/contracts/contracts20.C | 11 - gcc/testsuite/g++.dg/contracts/contracts22.C | 33 - gcc/testsuite/g++.dg/contracts/contracts24.C | 16 - gcc/testsuite/g++.dg/contracts/contracts25.C | 58 - gcc/testsuite/g++.dg/contracts/contracts3.C | 14 - gcc/testsuite/g++.dg/contracts/contracts35.C | 48 - gcc/testsuite/g++.dg/contracts/contracts4.C | 12 - gcc/testsuite/g++.dg/contracts/contracts5.C | 14 - gcc/testsuite/g++.dg/contracts/contracts6.C | 12 - gcc/testsuite/g++.dg/contracts/contracts7.C | 15 - gcc/testsuite/g++.dg/contracts/contracts8.C | 43 - gcc/testsuite/g++.dg/contracts/contracts9.C | 54 - .../contracts/cpp26/BZ121936-workaround-noipa.C | 22 + .../contracts/cpp26/assertion-statement-errors.C | 41 + .../g++.dg/contracts/cpp26/assertion-statement.C | 34 + .../cpp26/basic.contract.eval.p11-observe.C | 31 + .../contracts/cpp26/basic.contract.eval.p14.C | 25 + .../contracts/cpp26/basic.contract.eval.p17-2.C | 47 + .../contracts/cpp26/basic.contract.eval.p17-3.C | 58 + .../contracts/cpp26/basic.contract.eval.p17-4.C | 55 + .../contracts/cpp26/basic.contract.eval.p17-5.C | 52 + .../cpp26/basic.contract.eval.p17-SMF-post.C | 54 + .../cpp26/basic.contract.eval.p17-SMF-pre.C | 54 + .../contracts/cpp26/basic.contract.eval.p17-SMF2.C | 57 + .../contracts/cpp26/basic.contract.eval.p17-SMF3.C | 56 + .../contracts/cpp26/basic.contract.eval.p17-SMF4.C | 56 + .../contracts/cpp26/basic.contract.eval.p17.C | 49 + .../contracts/cpp26/basic.contract.eval.p4-error.C | 14 + .../contracts/cpp26/basic.contract.eval.p4.C | 27 + .../contracts/cpp26/basic.contract.eval.p6.C | 31 + .../cpp26/basic.contract.eval.p6.observe.C | 17 + .../contracts/cpp26/basic.contract.eval.p7.3.C | 14 + .../contracts/cpp26/basic.contract.eval.p8-2.C | 12 + .../contracts/cpp26/basic.contract.eval.p8.C | 12 + .../contracts/cpp26/basic.scope.contract.p1.C | 42 + .../contracts/cpp26/basic.scope.contract.p2.1.C | 11 + .../callerside-checks/callerside-checks-all.C | 52 + .../callerside-checks-non-trivial.C | 18 + .../callerside-checks/callerside-checks-none.C | 64 + .../callerside-checks/callerside-checks-pre.C | 65 + .../contracts/cpp26/callerside-checks/ctor.C | 23 + .../callerside-checks/freefunc-noexcept-post.C | 49 + .../callerside-checks/freefunc-noexcept-pre.C | 49 + .../g++.dg/contracts/cpp26/contract-assert-run.C | 56 + .../cpp26/contract-assert-warn-attributes.C | 7 + .../contracts/cpp26/contract-violation-noexcept.C | 112 + .../contracts/cpp26/contract-violation-noexcept2.C | 38 + .../g++.dg/contracts/cpp26/contract_genericize.C | 49 + .../g++.dg/contracts/cpp26/contracts-friend1.C | 36 + .../contracts/cpp26/contracts-nested-class1.C | 23 + .../contracts/cpp26/contracts-nested-class2.C | 38 + .../g++.dg/contracts/cpp26/contracts-tmpl-spec2.C | 446 ++ .../g++.dg/contracts/cpp26/dcl.contract.func.p4.C | 138 + .../g++.dg/contracts/cpp26/dcl.contract.func.p6.C | 21 + .../contracts/cpp26/dcl.contract.func.p7-t1.C | 161 + .../contracts/cpp26/dcl.contract.func.p7-t2.C | 157 + .../g++.dg/contracts/cpp26/dcl.contract.func.p7.C | 335 ++ .../g++.dg/contracts/cpp26/dcl.contract.res.p1-2.C | 69 + .../contracts/cpp26/dcl.contract.res.p1-NT.C | 146 + .../g++.dg/contracts/cpp26/dcl.contract.res.p1.C | 23 + .../g++.dg/contracts/cpp26/dcl.contract.res.p2.C | 25 + .../g++.dg/contracts/cpp26/debug-and-opt.C | 15 + gcc/testsuite/g++.dg/contracts/cpp26/deferred1.C | 49 + .../contract-assert-no-def-check.C | 25 + .../g++.dg/contracts/cpp26/dependent_contract.C | 32 + .../g++.dg/contracts/cpp26/empty-nt-param.C | 42 + .../contracts/cpp26/expr.prim.id.unqual.p7-2.C | 65 + .../contracts/cpp26/expr.prim.id.unqual.p7-3.C | 55 + .../contracts/cpp26/expr.prim.id.unqual.p7-4.C | 57 + .../contracts/cpp26/expr.prim.id.unqual.p7.C | 139 + .../cpp26/function-contract-specifier-seq-error.C | 50 + .../cpp26/function-contract-specifier-seq.C | 122 + .../cpp26/intro.compliance.general.p2.3.4.C | 13 + gcc/testsuite/g++.dg/contracts/cpp26/lambda.C | 5 + .../g++.dg/contracts/cpp26/name_mangling.C | 15 + .../g++.dg/contracts/cpp26/non-trivial-ice.C | 21 + .../cpp26/outline-checks/freefunc-noexcept-post.C | 46 + .../cpp26/outline-checks/freefunc-noexcept-pre.C | 46 + .../cpp26/outline-checks/func-noexcept-assert.C | 55 + .../outline-checks/memberfunc-noexcept-post.C | 49 + .../cpp26/outline-checks/memberfunc-noexcept-pre.C | 49 + .../g++.dg/contracts/cpp26/over.call.func.p3.1.C | 36 + gcc/testsuite/g++.dg/contracts/cpp26/pr113968.C | 23 + gcc/testsuite/g++.dg/contracts/cpp26/src-loc-0.C | 18 + gcc/testsuite/g++.dg/contracts/cpp26/src-loc-1.C | 18 + gcc/testsuite/g++.dg/contracts/cpp26/src-loc-2.C | 20 + .../contracts/cpp26/throwing-violation-handler.cc | 23 + .../g++.dg/contracts/cpp26/unused_warning.C | 25 + gcc/testsuite/g++.dg/contracts/cpp26/vaargs.C | 35 + gcc/testsuite/g++.dg/contracts/cpp2a/check-err.C | 18 + .../contracts/except_preload_handler/Makefile | 13 - .../g++.dg/contracts/except_preload_handler/README | 13 - .../except_preload_handler/assert_fail.cpp | 20 - .../handle_contract_violation.cpp | 14 - .../contracts/noexcept_preload_handler/Makefile | 13 - .../contracts/noexcept_preload_handler/README | 15 - .../noexcept_preload_handler/assert_fail.cpp | 20 - .../handle_contract_violation.cpp | 14 - gcc/testsuite/g++.dg/contracts/pr110159.C | 28 - gcc/testsuite/g++.dg/contracts/pr113968.C | 29 - gcc/testsuite/g++.dg/contracts/pr115434.C | 17 - gcc/testsuite/g++.dg/contracts/pr116490.C | 57 - gcc/testsuite/g++.dg/contracts/pr116607.C | 6 - gcc/testsuite/g++.dg/contracts/pr117579.C | 9 - .../g++.dg/contracts/preload_handler/Makefile | 13 - .../g++.dg/contracts/preload_handler/README | 2 - .../contracts/preload_handler/assert_fail.cpp | 7 - .../preload_handler/handle_contract_violation.cpp | 15 - .../contracts/preload_nocontinue_handler/Makefile | 23 - .../contracts/preload_nocontinue_handler/README | 23 - .../preload_nocontinue_handler/assert_fail.cpp | 10 - .../handle_contract_violation.cpp | 13 - .../preload_nocontinue_handler/nocontinue.cpp | 19 - gcc/testsuite/g++.dg/coroutines/pr110871.C | 10 +- gcc/testsuite/g++.dg/coroutines/pr110872.C | 13 +- gcc/testsuite/g++.dg/modules/contracts-1_a.C | 47 - gcc/testsuite/g++.dg/modules/contracts-1_b.C | 31 - gcc/testsuite/g++.dg/modules/contracts-2_a.C | 50 - gcc/testsuite/g++.dg/modules/contracts-2_b.C | 36 - gcc/testsuite/g++.dg/modules/contracts-2_c.C | 22 - gcc/testsuite/g++.dg/modules/contracts-3_a.C | 42 - gcc/testsuite/g++.dg/modules/contracts-3_b.C | 33 - gcc/testsuite/g++.dg/modules/contracts-4_a.C | 29 - gcc/testsuite/g++.dg/modules/contracts-4_b.C | 8 - gcc/testsuite/g++.dg/modules/contracts-4_c.C | 9 - gcc/testsuite/g++.dg/modules/contracts-4_d.C | 22 - gcc/testsuite/g++.dg/modules/contracts-5_a.C | 8 - gcc/testsuite/g++.dg/modules/contracts-5_b.C | 21 - .../g++.dg/modules/contracts-tpl-friend-1_a.C | 17 - .../g++.dg/modules/contracts-tpl-friend-1_b.C | 19 - gcc/testsuite/g++.dg/warn/Wkeyword-macro-1.C | 2 +- gcc/testsuite/g++.dg/warn/Wkeyword-macro-2.C | 2 +- gcc/testsuite/g++.dg/warn/Wkeyword-macro-4.C | 2 +- gcc/testsuite/g++.dg/warn/Wkeyword-macro-5.C | 2 +- gcc/testsuite/g++.dg/warn/Wkeyword-macro-7.C | 3 +- gcc/testsuite/g++.dg/warn/Wkeyword-macro-8.C | 3 +- gcc/tree-core.h | 3 + gcc/tree.h | 5 + libstdc++-v3/include/Makefile.am | 2 +- libstdc++-v3/include/Makefile.in | 2 +- libstdc++-v3/include/bits/version.def | 9 + libstdc++-v3/include/bits/version.h | 10 + libstdc++-v3/include/experimental/contract | 83 - libstdc++-v3/include/precompiled/stdc++.h | 1 + libstdc++-v3/include/std/contracts | 111 + libstdc++-v3/include/std/source_location | 14 + libstdc++-v3/src/c++23/std.cc.in | 12 + libstdc++-v3/src/experimental/Makefile.am | 8 +- libstdc++-v3/src/experimental/Makefile.in | 15 +- libstdc++-v3/src/experimental/contract.cc | 78 - libstdc++-v3/src/experimental/contract26.cc | 157 + .../18_support/contracts/invoke_default_cvh.cc | 23 + .../18_support/contracts/invoke_default_cvh2.cc | 55 + 264 files changed, 8312 insertions(+), 9687 deletions(-) delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/Makefile delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/README delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/assert_fail.cpp delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/example_out.txt delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/example_pretty.txt delete mode 100644 gcc/testsuite/g++.dg/contracts/backtrace_handler/handle_contrac [...] delete mode 100755 gcc/testsuite/g++.dg/contracts/backtrace_handler/prettytrace.sh delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-access1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume4.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume5.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-assume6.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-comdat1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-config1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-constexpr1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-constexpr2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-constexpr3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-conversion1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-ctor-dtor1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-ctor-dtor2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-cv1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-deduced1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-deduced2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-err1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-externC.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-friend1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-ft1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-ignore1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-ignore2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-large-return.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-multiline1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-multiple-inheritance1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-multiple-inheritance2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-nested-class1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-nested-class2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-nocopy1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-override.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post4.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post5.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post6.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-post7.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre10.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre2a1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre2a2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre4.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre5.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre6.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre7.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-pre9.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl4.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl5.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl6.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl7.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-redecl8.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-tmpl-attr1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-tmpl-spec1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-tmpl-spec2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts-tmpl-spec3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts1.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts10.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts11.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts12.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts13.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts14.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts15.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts16.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts17.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts18.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts19.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts2.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts20.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts22.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts24.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts25.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts3.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts35.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts4.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts5.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts6.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts7.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts8.C delete mode 100644 gcc/testsuite/g++.dg/contracts/contracts9.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/BZ121936-workaround-noipa.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/assertion-statement-errors.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/assertion-statement.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p11-observe.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p14.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-3.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-5.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-SM [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-SMF-pre.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-SMF2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-SMF3.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17-SMF4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p17.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p4-error.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p6.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p6.observe.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p7.3.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p8-2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.contract.eval.p8.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.scope.contract.p1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/basic.scope.contract.p2.1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/callersi [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/callersi [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/callersi [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/callersi [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/ctor.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/freefunc [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/callerside-checks/freefunc [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contract-assert-run.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contract-assert-warn-attributes.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contract-violation-noexcept.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contract-violation-noexcept2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contract_genericize.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contracts-friend1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contracts-nested-class1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contracts-nested-class2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/contracts-tmpl-spec2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.func.p4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.func.p6.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.func.p7-t1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.func.p7-t2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.func.p7.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.res.p1-2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.res.p1-NT.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.res.p1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dcl.contract.res.p2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/debug-and-opt.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/deferred1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/definition-checks/contract [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/dependent_contract.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/empty-nt-param.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/expr.prim.id.unqual.p7-2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/expr.prim.id.unqual.p7-3.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/expr.prim.id.unqual.p7-4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/expr.prim.id.unqual.p7.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/function-contract-specifie [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/function-contract-specifier-seq.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/intro.compliance.general.p2.3.4.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/lambda.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/name_mangling.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/non-trivial-ice.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/outline-checks/freefunc-no [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/outline-checks/freefunc-no [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/outline-checks/func-noexce [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/outline-checks/memberfunc- [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/outline-checks/memberfunc- [...] create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/over.call.func.p3.1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/pr113968.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/src-loc-0.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/src-loc-1.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/src-loc-2.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/throwing-violation-handler.cc create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/unused_warning.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp26/vaargs.C create mode 100644 gcc/testsuite/g++.dg/contracts/cpp2a/check-err.C delete mode 100644 gcc/testsuite/g++.dg/contracts/except_preload_handler/Makefile delete mode 100644 gcc/testsuite/g++.dg/contracts/except_preload_handler/README delete mode 100644 gcc/testsuite/g++.dg/contracts/except_preload_handler/assert_fail.cpp delete mode 100644 gcc/testsuite/g++.dg/contracts/except_preload_handler/handle_co [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/noexcept_preload_handler/Makefile delete mode 100644 gcc/testsuite/g++.dg/contracts/noexcept_preload_handler/README delete mode 100644 gcc/testsuite/g++.dg/contracts/noexcept_preload_handler/assert_ [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/noexcept_preload_handler/handle_ [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/pr110159.C delete mode 100644 gcc/testsuite/g++.dg/contracts/pr113968.C delete mode 100644 gcc/testsuite/g++.dg/contracts/pr115434.C delete mode 100644 gcc/testsuite/g++.dg/contracts/pr116490.C delete mode 100644 gcc/testsuite/g++.dg/contracts/pr116607.C delete mode 100644 gcc/testsuite/g++.dg/contracts/pr117579.C delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_handler/Makefile delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_handler/README delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_handler/assert_fail.cpp delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_handler/handle_contract_ [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_nocontinue_handler/Makefile delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_nocontinue_handler/README delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_nocontinue_handler/asser [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_nocontinue_handler/handl [...] delete mode 100644 gcc/testsuite/g++.dg/contracts/preload_nocontinue_handler/nocon [...] delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-1_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-1_b.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-2_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-2_b.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-2_c.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-3_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-3_b.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-4_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-4_b.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-4_c.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-4_d.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-5_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-5_b.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-tpl-friend-1_a.C delete mode 100644 gcc/testsuite/g++.dg/modules/contracts-tpl-friend-1_b.C delete mode 100644 libstdc++-v3/include/experimental/contract create mode 100644 libstdc++-v3/include/std/contracts delete mode 100644 libstdc++-v3/src/experimental/contract.cc create mode 100644 libstdc++-v3/src/experimental/contract26.cc create mode 100644 libstdc++-v3/testsuite/18_support/contracts/invoke_default_cvh.cc create mode 100644 libstdc++-v3/testsuite/18_support/contracts/invoke_default_cvh2.cc