From a05f106bafd5a74e677e3bddab6eeabbae362dc8 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 2 Nov 2022 14:50:04 -0400 Subject: [PATCH] c++: fix assume test --- gcc/testsuite/g++.dg/contracts/contracts-assume5.C | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/gcc/testsuite/g++.dg/contracts/contracts-assume5.C b/gcc/testsuite/g++.dg/contracts/contracts-assume5.C index 67b286477862..372c0deb13af 100644 --- a/gcc/testsuite/g++.dg/contracts/contracts-assume5.C +++ b/gcc/testsuite/g++.dg/contracts/contracts-assume5.C @@ -1,7 +1,6 @@ -// test that assumed constexpr contracts that reference defined entities cause -// constexpr eval failure when the predicate is constexpr false -// test that assumed constexpr contracts that reference undefined entities in -// an unevaluated context cause constexpr eval failure +// test that assumed constexpr contracts that reference defined entities, or +// undefined entities in unevaluated context, cause constexpr eval failure when +// the predicate is constexpr false // { dg-do compile } // { dg-options "-std=c++2a -fcontracts" } @@ -20,16 +19,16 @@ constexpr int undef(int t); constexpr int dummy2() { - [[ assert assume: sizeof(decltype(f(1))) < 0 ]]; + [[ assert assume: sizeof(decltype(undef(1))) < 0 ]]; return -1; } int main() { constexpr int n = dummy(); // { dg-message "in .constexpr. expansion" } - // { dg-error "contract predicate" "" { target *-*-* } 15 } + // { dg-error "contract predicate" "" { target *-*-* } 14 } constexpr int m = dummy2(); // { dg-message "in .constexpr. expansion" } - // { dg-error "contract predicate" "" { target *-*-* } 23 } + // { dg-error "contract predicate" "" { target *-*-* } 22 } return 0; } -- 2.47.2