diff options
369 files changed, 554 insertions, 433 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 86fa756..eff5d08 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2018-10-20 Marek Polacek <polacek@redhat.com> + + * g++.dg/*.C: Use target c++17 instead of explicit dg-options. + * lib/g++-dg.exp: Don't test C++11 by default. Add C++17 to + the list of default stds to test. + 2018-10-20 Jakub Jelinek <jakub@redhat.com> PR middle-end/87647 diff --git a/gcc/testsuite/g++.dg/concepts/alias1.C b/gcc/testsuite/g++.dg/concepts/alias1.C index 1b643cd..279a478 100644 --- a/gcc/testsuite/g++.dg/concepts/alias1.C +++ b/gcc/testsuite/g++.dg/concepts/alias1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/alias2.C b/gcc/testsuite/g++.dg/concepts/alias2.C index 2de2aa4..06ffb1a 100644 --- a/gcc/testsuite/g++.dg/concepts/alias2.C +++ b/gcc/testsuite/g++.dg/concepts/alias2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/alias3.C b/gcc/testsuite/g++.dg/concepts/alias3.C index 6e1c39c..2901c04 100644 --- a/gcc/testsuite/g++.dg/concepts/alias3.C +++ b/gcc/testsuite/g++.dg/concepts/alias3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/alias4.C b/gcc/testsuite/g++.dg/concepts/alias4.C index e7d93d5..2c9f5de 100644 --- a/gcc/testsuite/g++.dg/concepts/alias4.C +++ b/gcc/testsuite/g++.dg/concepts/alias4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/auto1.C b/gcc/testsuite/g++.dg/concepts/auto1.C index 0c6fa46..2682940 100644 --- a/gcc/testsuite/g++.dg/concepts/auto1.C +++ b/gcc/testsuite/g++.dg/concepts/auto1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T1, class T2> class A { }; diff --git a/gcc/testsuite/g++.dg/concepts/auto3.C b/gcc/testsuite/g++.dg/concepts/auto3.C index 7b80fe3..abfb201 100644 --- a/gcc/testsuite/g++.dg/concepts/auto3.C +++ b/gcc/testsuite/g++.dg/concepts/auto3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class...> class tuple {}; diff --git a/gcc/testsuite/g++.dg/concepts/auto4.C b/gcc/testsuite/g++.dg/concepts/auto4.C index e80341e..4eb2ae8 100644 --- a/gcc/testsuite/g++.dg/concepts/auto4.C +++ b/gcc/testsuite/g++.dg/concepts/auto4.C @@ -1,5 +1,6 @@ // PR c++/85006 -// { dg-additional-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-additional-options "-fconcepts" } template<typename... Ts> struct A {}; diff --git a/gcc/testsuite/g++.dg/concepts/class-deduction1.C b/gcc/testsuite/g++.dg/concepts/class-deduction1.C index 476830d..936dd68 100644 --- a/gcc/testsuite/g++.dg/concepts/class-deduction1.C +++ b/gcc/testsuite/g++.dg/concepts/class-deduction1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool Isint = __is_same_as(T,int); diff --git a/gcc/testsuite/g++.dg/concepts/class-deduction2.C b/gcc/testsuite/g++.dg/concepts/class-deduction2.C index 286e59a..e0718d1 100644 --- a/gcc/testsuite/g++.dg/concepts/class-deduction2.C +++ b/gcc/testsuite/g++.dg/concepts/class-deduction2.C @@ -1,5 +1,6 @@ // PR c++/85706 -// { dg-additional-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-additional-options "-fconcepts" } template<class T> struct S { S(T); diff --git a/gcc/testsuite/g++.dg/concepts/class.C b/gcc/testsuite/g++.dg/concepts/class.C index 1c5242f..dc5523e 100644 --- a/gcc/testsuite/g++.dg/concepts/class.C +++ b/gcc/testsuite/g++.dg/concepts/class.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/class1.C b/gcc/testsuite/g++.dg/concepts/class1.C index 94a5d23..a738e6e 100644 --- a/gcc/testsuite/g++.dg/concepts/class1.C +++ b/gcc/testsuite/g++.dg/concepts/class1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/class2.C b/gcc/testsuite/g++.dg/concepts/class2.C index 6389128..ec87181 100644 --- a/gcc/testsuite/g++.dg/concepts/class2.C +++ b/gcc/testsuite/g++.dg/concepts/class2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/class3.C b/gcc/testsuite/g++.dg/concepts/class3.C index b275756..256370d 100644 --- a/gcc/testsuite/g++.dg/concepts/class3.C +++ b/gcc/testsuite/g++.dg/concepts/class3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/class4.C b/gcc/testsuite/g++.dg/concepts/class4.C index 86eecbc..b583e55 100644 --- a/gcc/testsuite/g++.dg/concepts/class4.C +++ b/gcc/testsuite/g++.dg/concepts/class4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/class5.C b/gcc/testsuite/g++.dg/concepts/class5.C index 76398609..7bf620e 100644 --- a/gcc/testsuite/g++.dg/concepts/class5.C +++ b/gcc/testsuite/g++.dg/concepts/class5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool One() { return sizeof(T) >= 4; } diff --git a/gcc/testsuite/g++.dg/concepts/class6.C b/gcc/testsuite/g++.dg/concepts/class6.C index 29dcb8f..bdd60918 100644 --- a/gcc/testsuite/g++.dg/concepts/class6.C +++ b/gcc/testsuite/g++.dg/concepts/class6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool One() { return sizeof(T) >= 4; } diff --git a/gcc/testsuite/g++.dg/concepts/constrained-parm.C b/gcc/testsuite/g++.dg/concepts/constrained-parm.C index feaf3bb..c2b6614a 100644 --- a/gcc/testsuite/g++.dg/concepts/constrained-parm.C +++ b/gcc/testsuite/g++.dg/concepts/constrained-parm.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/debug1.C b/gcc/testsuite/g++.dg/concepts/debug1.C index eeb6365..87f2ac9 100644 --- a/gcc/testsuite/g++.dg/concepts/debug1.C +++ b/gcc/testsuite/g++.dg/concepts/debug1.C @@ -1,5 +1,6 @@ // PR c++/84551 -// { dg-options "-g -O -std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-g -O -fconcepts" } template<typename> concept bool C() { return true; } diff --git a/gcc/testsuite/g++.dg/concepts/decl-diagnose.C b/gcc/testsuite/g++.dg/concepts/decl-diagnose.C index caf6b2e..7ac7872 100644 --- a/gcc/testsuite/g++.dg/concepts/decl-diagnose.C +++ b/gcc/testsuite/g++.dg/concepts/decl-diagnose.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } typedef concept int CINT; // { dg-error "'concept' cannot appear in a typedef declaration" } diff --git a/gcc/testsuite/g++.dg/concepts/deduction-constraint1.C b/gcc/testsuite/g++.dg/concepts/deduction-constraint1.C index 5eec87b..bebbda1 100644 --- a/gcc/testsuite/g++.dg/concepts/deduction-constraint1.C +++ b/gcc/testsuite/g++.dg/concepts/deduction-constraint1.C @@ -1,5 +1,6 @@ // PR c++/67007 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class U> concept bool A = diff --git a/gcc/testsuite/g++.dg/concepts/diagnostic1.C b/gcc/testsuite/g++.dg/concepts/diagnostic1.C index c977eaa..9bb1506 100644 --- a/gcc/testsuite/g++.dg/concepts/diagnostic1.C +++ b/gcc/testsuite/g++.dg/concepts/diagnostic1.C @@ -1,5 +1,6 @@ // PR c++/67159 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U> concept bool SameAs = __is_same_as(T, U); diff --git a/gcc/testsuite/g++.dg/concepts/disjunction1.C b/gcc/testsuite/g++.dg/concepts/disjunction1.C index 9bd5097..930adf4 100644 --- a/gcc/testsuite/g++.dg/concepts/disjunction1.C +++ b/gcc/testsuite/g++.dg/concepts/disjunction1.C @@ -1,5 +1,6 @@ // PR c++/66962 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <typename> struct remove_cv; template <typename> struct is_reference; diff --git a/gcc/testsuite/g++.dg/concepts/dr1430.C b/gcc/testsuite/g++.dg/concepts/dr1430.C index 9fd4f43..f865d5e 100644 --- a/gcc/testsuite/g++.dg/concepts/dr1430.C +++ b/gcc/testsuite/g++.dg/concepts/dr1430.C @@ -1,5 +1,6 @@ // PR c++/66092 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <type_traits> diff --git a/gcc/testsuite/g++.dg/concepts/equiv.C b/gcc/testsuite/g++.dg/concepts/equiv.C index d666d9a..faec354 100644 --- a/gcc/testsuite/g++.dg/concepts/equiv.C +++ b/gcc/testsuite/g++.dg/concepts/equiv.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check equivalence of short- and longhand declarations. diff --git a/gcc/testsuite/g++.dg/concepts/equiv2.C b/gcc/testsuite/g++.dg/concepts/equiv2.C index 694d87a..2094ca9 100644 --- a/gcc/testsuite/g++.dg/concepts/equiv2.C +++ b/gcc/testsuite/g++.dg/concepts/equiv2.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } // template<typename T> diff --git a/gcc/testsuite/g++.dg/concepts/explicit-inst1.C b/gcc/testsuite/g++.dg/concepts/explicit-inst1.C index 58d8dec..99bd72e 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-inst1.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-inst1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-inst2.C b/gcc/testsuite/g++.dg/concepts/explicit-inst2.C index f47b758..ea31387 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-inst2.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-inst2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-inst3.C b/gcc/testsuite/g++.dg/concepts/explicit-inst3.C index 00dee2f..18d3c49 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-inst3.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-inst3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-inst4.C b/gcc/testsuite/g++.dg/concepts/explicit-inst4.C index c0f585c..20f4377 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-inst4.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-inst4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec1.C b/gcc/testsuite/g++.dg/concepts/explicit-spec1.C index 3873068..bff06f2 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec1.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec1.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec2.C b/gcc/testsuite/g++.dg/concepts/explicit-spec2.C index 17d48e7..ca8b8a0 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec2.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec3.C b/gcc/testsuite/g++.dg/concepts/explicit-spec3.C index 1edc83e..fd48da1 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec3.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec4.C b/gcc/testsuite/g++.dg/concepts/explicit-spec4.C index 963c030..75a2dec 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec4.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec4.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec5.C b/gcc/testsuite/g++.dg/concepts/explicit-spec5.C index e0d89bc..d83eec1 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec5.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/explicit-spec6.C b/gcc/testsuite/g++.dg/concepts/explicit-spec6.C index 0af1df4..b548707 100644 --- a/gcc/testsuite/g++.dg/concepts/explicit-spec6.C +++ b/gcc/testsuite/g++.dg/concepts/explicit-spec6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> struct A { diff --git a/gcc/testsuite/g++.dg/concepts/expression.C b/gcc/testsuite/g++.dg/concepts/expression.C index 6430f89..33dad0a 100644 --- a/gcc/testsuite/g++.dg/concepts/expression.C +++ b/gcc/testsuite/g++.dg/concepts/expression.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> #include <iostream> diff --git a/gcc/testsuite/g++.dg/concepts/expression2.C b/gcc/testsuite/g++.dg/concepts/expression2.C index 3583452..c5447df 100644 --- a/gcc/testsuite/g++.dg/concepts/expression2.C +++ b/gcc/testsuite/g++.dg/concepts/expression2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1() diff --git a/gcc/testsuite/g++.dg/concepts/expression3.C b/gcc/testsuite/g++.dg/concepts/expression3.C index 4148aa6..26b829d 100644 --- a/gcc/testsuite/g++.dg/concepts/expression3.C +++ b/gcc/testsuite/g++.dg/concepts/expression3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() diff --git a/gcc/testsuite/g++.dg/concepts/feature-macro.C b/gcc/testsuite/g++.dg/concepts/feature-macro.C index ad2bfb0..d3d9b54 100644 --- a/gcc/testsuite/g++.dg/concepts/feature-macro.C +++ b/gcc/testsuite/g++.dg/concepts/feature-macro.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #ifndef __cpp_concepts #error __cpp_concepts not defined diff --git a/gcc/testsuite/g++.dg/concepts/fn-concept1.C b/gcc/testsuite/g++.dg/concepts/fn-concept1.C index b858c1a..a4ade7c 100644 --- a/gcc/testsuite/g++.dg/concepts/fn-concept1.C +++ b/gcc/testsuite/g++.dg/concepts/fn-concept1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Tuple() { // { dg-error "multiple statements" } diff --git a/gcc/testsuite/g++.dg/concepts/fn-concept2.C b/gcc/testsuite/g++.dg/concepts/fn-concept2.C index fe88dce..0d70728 100644 --- a/gcc/testsuite/g++.dg/concepts/fn-concept2.C +++ b/gcc/testsuite/g++.dg/concepts/fn-concept2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept auto C1() { return 0; } // { dg-error "16:concept .concept auto C1\\(\\). declared with a deduced return type" } diff --git a/gcc/testsuite/g++.dg/concepts/fn1.C b/gcc/testsuite/g++.dg/concepts/fn1.C index 800a0d3..17f14b9 100644 --- a/gcc/testsuite/g++.dg/concepts/fn1.C +++ b/gcc/testsuite/g++.dg/concepts/fn1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/fn10.C b/gcc/testsuite/g++.dg/concepts/fn10.C index 71bd82c..6993f34 100644 --- a/gcc/testsuite/g++.dg/concepts/fn10.C +++ b/gcc/testsuite/g++.dg/concepts/fn10.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Test that constraint satisfaction checks work even when // processing template declarations. diff --git a/gcc/testsuite/g++.dg/concepts/fn2.C b/gcc/testsuite/g++.dg/concepts/fn2.C index 67e35ac..250e0a8 100644 --- a/gcc/testsuite/g++.dg/concepts/fn2.C +++ b/gcc/testsuite/g++.dg/concepts/fn2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/fn3.C b/gcc/testsuite/g++.dg/concepts/fn3.C index 6695f2f..bc0e126 100644 --- a/gcc/testsuite/g++.dg/concepts/fn3.C +++ b/gcc/testsuite/g++.dg/concepts/fn3.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/fn4.C b/gcc/testsuite/g++.dg/concepts/fn4.C index ecc3d7b..830a174 100644 --- a/gcc/testsuite/g++.dg/concepts/fn4.C +++ b/gcc/testsuite/g++.dg/concepts/fn4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/fn5.C b/gcc/testsuite/g++.dg/concepts/fn5.C index d4a2e00..018b12f 100644 --- a/gcc/testsuite/g++.dg/concepts/fn5.C +++ b/gcc/testsuite/g++.dg/concepts/fn5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check shorthand notation. diff --git a/gcc/testsuite/g++.dg/concepts/fn6.C b/gcc/testsuite/g++.dg/concepts/fn6.C index 1293607..97155f8 100644 --- a/gcc/testsuite/g++.dg/concepts/fn6.C +++ b/gcc/testsuite/g++.dg/concepts/fn6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Redefinition errors. diff --git a/gcc/testsuite/g++.dg/concepts/fn7.C b/gcc/testsuite/g++.dg/concepts/fn7.C index 1df21fe..0052f1a 100644 --- a/gcc/testsuite/g++.dg/concepts/fn7.C +++ b/gcc/testsuite/g++.dg/concepts/fn7.C @@ -1,5 +1,5 @@ -// { dg-do link } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do link { target c++17 } } +// { dg-options "-fconcepts" } // FIXME: What is this actually testing? diff --git a/gcc/testsuite/g++.dg/concepts/fn8.C b/gcc/testsuite/g++.dg/concepts/fn8.C index b91f1ae..a3daf4e 100644 --- a/gcc/testsuite/g++.dg/concepts/fn8.C +++ b/gcc/testsuite/g++.dg/concepts/fn8.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/fn9.C b/gcc/testsuite/g++.dg/concepts/fn9.C index 1efde5f..84ed77c 100644 --- a/gcc/testsuite/g++.dg/concepts/fn9.C +++ b/gcc/testsuite/g++.dg/concepts/fn9.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/friend1.C b/gcc/testsuite/g++.dg/concepts/friend1.C index c437c79..9050b55 100644 --- a/gcc/testsuite/g++.dg/concepts/friend1.C +++ b/gcc/testsuite/g++.dg/concepts/friend1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Eq() { return requires(T t) { t == t; }; } diff --git a/gcc/testsuite/g++.dg/concepts/friend2.C b/gcc/testsuite/g++.dg/concepts/friend2.C index 5f14905..8ef6002 100644 --- a/gcc/testsuite/g++.dg/concepts/friend2.C +++ b/gcc/testsuite/g++.dg/concepts/friend2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Eq() { return requires(T t) { t == t; }; } diff --git a/gcc/testsuite/g++.dg/concepts/generic-fn-err.C b/gcc/testsuite/g++.dg/concepts/generic-fn-err.C index c34f832..5a95565 100644 --- a/gcc/testsuite/g++.dg/concepts/generic-fn-err.C +++ b/gcc/testsuite/g++.dg/concepts/generic-fn-err.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/generic-fn.C b/gcc/testsuite/g++.dg/concepts/generic-fn.C index 7a48e76..3b10327 100644 --- a/gcc/testsuite/g++.dg/concepts/generic-fn.C +++ b/gcc/testsuite/g++.dg/concepts/generic-fn.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> #include <type_traits> diff --git a/gcc/testsuite/g++.dg/concepts/iconv1.C b/gcc/testsuite/g++.dg/concepts/iconv1.C index 38a0b17..e99254f 100644 --- a/gcc/testsuite/g++.dg/concepts/iconv1.C +++ b/gcc/testsuite/g++.dg/concepts/iconv1.C @@ -1,5 +1,6 @@ // PR c++/67240 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } int foo(int x) { diff --git a/gcc/testsuite/g++.dg/concepts/inherit-ctor1.C b/gcc/testsuite/g++.dg/concepts/inherit-ctor1.C index 952c8f6..4b3f561 100644 --- a/gcc/testsuite/g++.dg/concepts/inherit-ctor1.C +++ b/gcc/testsuite/g++.dg/concepts/inherit-ctor1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/inherit-ctor2.C b/gcc/testsuite/g++.dg/concepts/inherit-ctor2.C index b36b993..cb81d13 100644 --- a/gcc/testsuite/g++.dg/concepts/inherit-ctor2.C +++ b/gcc/testsuite/g++.dg/concepts/inherit-ctor2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/inherit-ctor3.C b/gcc/testsuite/g++.dg/concepts/inherit-ctor3.C index c7ad84a..6f04632 100644 --- a/gcc/testsuite/g++.dg/concepts/inherit-ctor3.C +++ b/gcc/testsuite/g++.dg/concepts/inherit-ctor3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/inherit-ctor4.C b/gcc/testsuite/g++.dg/concepts/inherit-ctor4.C index 26940ba..43df6e6 100644 --- a/gcc/testsuite/g++.dg/concepts/inherit-ctor4.C +++ b/gcc/testsuite/g++.dg/concepts/inherit-ctor4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/intro1.C b/gcc/testsuite/g++.dg/concepts/intro1.C index ac8a708..84fa6db 100644 --- a/gcc/testsuite/g++.dg/concepts/intro1.C +++ b/gcc/testsuite/g++.dg/concepts/intro1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C = __is_class(T); diff --git a/gcc/testsuite/g++.dg/concepts/intro2.C b/gcc/testsuite/g++.dg/concepts/intro2.C index 928cc2e..9c7c173 100644 --- a/gcc/testsuite/g++.dg/concepts/intro2.C +++ b/gcc/testsuite/g++.dg/concepts/intro2.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/intro3.C b/gcc/testsuite/g++.dg/concepts/intro3.C index 78d091d..5e93f31 100644 --- a/gcc/testsuite/g++.dg/concepts/intro3.C +++ b/gcc/testsuite/g++.dg/concepts/intro3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename ... T> concept bool C1 = true; diff --git a/gcc/testsuite/g++.dg/concepts/intro4.C b/gcc/testsuite/g++.dg/concepts/intro4.C index 2a3e2ba..a7e5135 100644 --- a/gcc/testsuite/g++.dg/concepts/intro4.C +++ b/gcc/testsuite/g++.dg/concepts/intro4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename ... T> concept bool C1 = true; diff --git a/gcc/testsuite/g++.dg/concepts/intro5.C b/gcc/testsuite/g++.dg/concepts/intro5.C index c5fac80..e7cd7a4 100644 --- a/gcc/testsuite/g++.dg/concepts/intro5.C +++ b/gcc/testsuite/g++.dg/concepts/intro5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T, typename U = int> concept bool C() diff --git a/gcc/testsuite/g++.dg/concepts/intro6.C b/gcc/testsuite/g++.dg/concepts/intro6.C index 6624c88..57b325a 100644 --- a/gcc/testsuite/g++.dg/concepts/intro6.C +++ b/gcc/testsuite/g++.dg/concepts/intro6.C @@ -1,5 +1,6 @@ // PR c++/67003 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } namespace X { template<class> diff --git a/gcc/testsuite/g++.dg/concepts/intro7.C b/gcc/testsuite/g++.dg/concepts/intro7.C index 9cb4a76..d5bdc7e 100644 --- a/gcc/testsuite/g++.dg/concepts/intro7.C +++ b/gcc/testsuite/g++.dg/concepts/intro7.C @@ -1,5 +1,6 @@ // PR c++/66985 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <template <class> class T> concept bool _Valid = requires { typename T<int>; }; diff --git a/gcc/testsuite/g++.dg/concepts/locations1.C b/gcc/testsuite/g++.dg/concepts/locations1.C index 6e7529b..33c3b62 100644 --- a/gcc/testsuite/g++.dg/concepts/locations1.C +++ b/gcc/testsuite/g++.dg/concepts/locations1.C @@ -1,4 +1,5 @@ -// { dg-additional-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-additional-options "-fconcepts" } struct S { diff --git a/gcc/testsuite/g++.dg/concepts/member-concept.C b/gcc/testsuite/g++.dg/concepts/member-concept.C index 4eae9f5..ef577a1 100644 --- a/gcc/testsuite/g++.dg/concepts/member-concept.C +++ b/gcc/testsuite/g++.dg/concepts/member-concept.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct Base { template<typename T> diff --git a/gcc/testsuite/g++.dg/concepts/memfun-err.C b/gcc/testsuite/g++.dg/concepts/memfun-err.C index a42554a..69ce6b8 100644 --- a/gcc/testsuite/g++.dg/concepts/memfun-err.C +++ b/gcc/testsuite/g++.dg/concepts/memfun-err.C @@ -1,5 +1,5 @@ -// { dg-do run} -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> diff --git a/gcc/testsuite/g++.dg/concepts/memfun.C b/gcc/testsuite/g++.dg/concepts/memfun.C index d387234..818c7e6 100644 --- a/gcc/testsuite/g++.dg/concepts/memfun.C +++ b/gcc/testsuite/g++.dg/concepts/memfun.C @@ -1,5 +1,5 @@ -// { dg-do run} -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/concepts/memfun2.C b/gcc/testsuite/g++.dg/concepts/memfun2.C index a5965fc..78a2cf7 100644 --- a/gcc/testsuite/g++.dg/concepts/memfun2.C +++ b/gcc/testsuite/g++.dg/concepts/memfun2.C @@ -1,5 +1,6 @@ // PR c++/72415 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<int... Indices> struct indices {}; diff --git a/gcc/testsuite/g++.dg/concepts/memtmpl1.C b/gcc/testsuite/g++.dg/concepts/memtmpl1.C index fe0f1d5..dc00a07 100644 --- a/gcc/testsuite/g++.dg/concepts/memtmpl1.C +++ b/gcc/testsuite/g++.dg/concepts/memtmpl1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> struct A { diff --git a/gcc/testsuite/g++.dg/concepts/partial-concept-id1.C b/gcc/testsuite/g++.dg/concepts/partial-concept-id1.C index 90a8ec7..5f0f346 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-concept-id1.C +++ b/gcc/testsuite/g++.dg/concepts/partial-concept-id1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Type() { return true; } diff --git a/gcc/testsuite/g++.dg/concepts/partial-concept-id2.C b/gcc/testsuite/g++.dg/concepts/partial-concept-id2.C index 4c1373a..e51894b 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-concept-id2.C +++ b/gcc/testsuite/g++.dg/concepts/partial-concept-id2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Make sure that we check partial concept ids // with variable concepts. diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec.C b/gcc/testsuite/g++.dg/concepts/partial-spec.C index c3836d4..0ff8ec2 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check that constraints don't break unconstrained partial // specializations. diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec2.C b/gcc/testsuite/g++.dg/concepts/partial-spec2.C index 26d0ff4..2449c37 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec2.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec2.C @@ -1,5 +1,6 @@ // PR c++/67084 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> constexpr bool p = false; diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec3.C b/gcc/testsuite/g++.dg/concepts/partial-spec3.C index 2ac5b98..d407181 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec3.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> struct A { }; template <class T> requires false struct A<T*> { }; diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec4.C b/gcc/testsuite/g++.dg/concepts/partial-spec4.C index 5669bd4..70461b4 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec4.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool is_int = __is_same_as(T,int); diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec5.C b/gcc/testsuite/g++.dg/concepts/partial-spec5.C index 18ef242..a5b853c 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec5.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec5.C @@ -1,5 +1,6 @@ // PR c++/67138 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool _Auto = true; diff --git a/gcc/testsuite/g++.dg/concepts/partial-spec6.C b/gcc/testsuite/g++.dg/concepts/partial-spec6.C index af4411b..1d80ee3 100644 --- a/gcc/testsuite/g++.dg/concepts/partial-spec6.C +++ b/gcc/testsuite/g++.dg/concepts/partial-spec6.C @@ -1,5 +1,6 @@ // PR c++/67152 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool HasType = requires { typename T::type; }; diff --git a/gcc/testsuite/g++.dg/concepts/placeholder1.C b/gcc/testsuite/g++.dg/concepts/placeholder1.C index bf7f959..edd0003 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder1.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T, typename U> struct is_same diff --git a/gcc/testsuite/g++.dg/concepts/placeholder2.C b/gcc/testsuite/g++.dg/concepts/placeholder2.C index c8981b61..3d6fc81 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder2.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check argument deduction constraints. // TODO: We shoul have more of these... diff --git a/gcc/testsuite/g++.dg/concepts/placeholder3.C b/gcc/testsuite/g++.dg/concepts/placeholder3.C index 44dba8b..93f0c0d 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder3.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder3.C @@ -1,5 +1,6 @@ // PR c++/66218 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U> concept bool Same = __is_same_as(T, U); diff --git a/gcc/testsuite/g++.dg/concepts/placeholder4.C b/gcc/testsuite/g++.dg/concepts/placeholder4.C index b35238c..d130813 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder4.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder4.C @@ -1,5 +1,6 @@ // PR c++/66218 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U> concept bool Same = __is_same_as(T, U); diff --git a/gcc/testsuite/g++.dg/concepts/placeholder5.C b/gcc/testsuite/g++.dg/concepts/placeholder5.C index c0b67b9..245e27a 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder5.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U> concept bool Same = __is_same_as(T, U); diff --git a/gcc/testsuite/g++.dg/concepts/placeholder6.C b/gcc/testsuite/g++.dg/concepts/placeholder6.C index ab56c63..51282d9 100644 --- a/gcc/testsuite/g++.dg/concepts/placeholder6.C +++ b/gcc/testsuite/g++.dg/concepts/placeholder6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <int I> struct B { static const int i = I; }; template <int I> concept bool Few = I < 10; diff --git a/gcc/testsuite/g++.dg/concepts/pr65552.C b/gcc/testsuite/g++.dg/concepts/pr65552.C index 57375d7..318fdcc 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65552.C +++ b/gcc/testsuite/g++.dg/concepts/pr65552.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Concept() { diff --git a/gcc/testsuite/g++.dg/concepts/pr65575.C b/gcc/testsuite/g++.dg/concepts/pr65575.C index 6745b84..efaf958 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65575.C +++ b/gcc/testsuite/g++.dg/concepts/pr65575.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C = false; diff --git a/gcc/testsuite/g++.dg/concepts/pr65634.C b/gcc/testsuite/g++.dg/concepts/pr65634.C index db36a6b..e383653 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65634.C +++ b/gcc/testsuite/g++.dg/concepts/pr65634.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1() { diff --git a/gcc/testsuite/g++.dg/concepts/pr65636.C b/gcc/testsuite/g++.dg/concepts/pr65636.C index 01c72a7..2aec0e5 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65636.C +++ b/gcc/testsuite/g++.dg/concepts/pr65636.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } using TD = int; diff --git a/gcc/testsuite/g++.dg/concepts/pr65681.C b/gcc/testsuite/g++.dg/concepts/pr65681.C index 1df9a59..0d8a69d 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65681.C +++ b/gcc/testsuite/g++.dg/concepts/pr65681.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() diff --git a/gcc/testsuite/g++.dg/concepts/pr65848.C b/gcc/testsuite/g++.dg/concepts/pr65848.C index 5af6e7d..0678018 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65848.C +++ b/gcc/testsuite/g++.dg/concepts/pr65848.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Performance test... This should be fast. diff --git a/gcc/testsuite/g++.dg/concepts/pr65854.C b/gcc/testsuite/g++.dg/concepts/pr65854.C index 395fac4..28eac88 100644 --- a/gcc/testsuite/g++.dg/concepts/pr65854.C +++ b/gcc/testsuite/g++.dg/concepts/pr65854.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Handle alias templates in type requirements. diff --git a/gcc/testsuite/g++.dg/concepts/pr66091.C b/gcc/testsuite/g++.dg/concepts/pr66091.C index e5b3c28..a71cd7b 100644 --- a/gcc/testsuite/g++.dg/concepts/pr66091.C +++ b/gcc/testsuite/g++.dg/concepts/pr66091.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1() diff --git a/gcc/testsuite/g++.dg/concepts/pr67249.C b/gcc/testsuite/g++.dg/concepts/pr67249.C index 87e9bb5..a0eca9b 100644 --- a/gcc/testsuite/g++.dg/concepts/pr67249.C +++ b/gcc/testsuite/g++.dg/concepts/pr67249.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<class T> concept bool C1 = true; template<class A, class B> struct Pair {}; diff --git a/gcc/testsuite/g++.dg/concepts/pr67595.C b/gcc/testsuite/g++.dg/concepts/pr67595.C index 76d1fe6..7b5d712 100644 --- a/gcc/testsuite/g++.dg/concepts/pr67595.C +++ b/gcc/testsuite/g++.dg/concepts/pr67595.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class X> concept bool allocatable = requires{{new X}->X * }; template <class X> concept bool semiregular = allocatable<X>; diff --git a/gcc/testsuite/g++.dg/concepts/pr68434.C b/gcc/testsuite/g++.dg/concepts/pr68434.C index 19ce383..fc45898 100644 --- a/gcc/testsuite/g++.dg/concepts/pr68434.C +++ b/gcc/testsuite/g++.dg/concepts/pr68434.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class> concept bool C1 () { diff --git a/gcc/testsuite/g++.dg/concepts/pr68683.C b/gcc/testsuite/g++.dg/concepts/pr68683.C index 31a98f3..ff7709e 100644 --- a/gcc/testsuite/g++.dg/concepts/pr68683.C +++ b/gcc/testsuite/g++.dg/concepts/pr68683.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <typename, typename> struct is_same { diff --git a/gcc/testsuite/g++.dg/concepts/pr71368.C b/gcc/testsuite/g++.dg/concepts/pr71368.C index f0e0a95..5cd2b54 100644 --- a/gcc/testsuite/g++.dg/concepts/pr71368.C +++ b/gcc/testsuite/g++.dg/concepts/pr71368.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct inner; diff --git a/gcc/testsuite/g++.dg/concepts/pr71385.C b/gcc/testsuite/g++.dg/concepts/pr71385.C index bd5d08c..42d21f5 100644 --- a/gcc/testsuite/g++.dg/concepts/pr71385.C +++ b/gcc/testsuite/g++.dg/concepts/pr71385.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<class T> concept bool Addable(){ diff --git a/gcc/testsuite/g++.dg/concepts/req-neg1.C b/gcc/testsuite/g++.dg/concepts/req-neg1.C index 97b45cd..637f993 100644 --- a/gcc/testsuite/g++.dg/concepts/req-neg1.C +++ b/gcc/testsuite/g++.dg/concepts/req-neg1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } void f1(int a) requires true; // OK auto f2(int a) -> bool requires true; // OK diff --git a/gcc/testsuite/g++.dg/concepts/req1.C b/gcc/testsuite/g++.dg/concepts/req1.C index 688cb19..fedea73 100644 --- a/gcc/testsuite/g++.dg/concepts/req1.C +++ b/gcc/testsuite/g++.dg/concepts/req1.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class () { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/req10.C b/gcc/testsuite/g++.dg/concepts/req10.C index 8cbd89f..949859c 100644 --- a/gcc/testsuite/g++.dg/concepts/req10.C +++ b/gcc/testsuite/g++.dg/concepts/req10.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Test that standard conversions are checked with // implicit conversion constraints. diff --git a/gcc/testsuite/g++.dg/concepts/req11.C b/gcc/testsuite/g++.dg/concepts/req11.C index 2d0c5c0..8891cce 100644 --- a/gcc/testsuite/g++.dg/concepts/req11.C +++ b/gcc/testsuite/g++.dg/concepts/req11.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check that we can evaluate constant requires-expressions // as constant expressions, for the curious case when they diff --git a/gcc/testsuite/g++.dg/concepts/req12.C b/gcc/testsuite/g++.dg/concepts/req12.C index 38c2c3e..c6b345a 100644 --- a/gcc/testsuite/g++.dg/concepts/req12.C +++ b/gcc/testsuite/g++.dg/concepts/req12.C @@ -1,5 +1,6 @@ // PR c++/66218 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <type_traits> diff --git a/gcc/testsuite/g++.dg/concepts/req13.C b/gcc/testsuite/g++.dg/concepts/req13.C index 2f58742..4fd2312 100644 --- a/gcc/testsuite/g++.dg/concepts/req13.C +++ b/gcc/testsuite/g++.dg/concepts/req13.C @@ -1,5 +1,6 @@ // PR c++/66758 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class...Args> concept bool Constructible = diff --git a/gcc/testsuite/g++.dg/concepts/req14.C b/gcc/testsuite/g++.dg/concepts/req14.C index de00a1e..6e60b6f 100644 --- a/gcc/testsuite/g++.dg/concepts/req14.C +++ b/gcc/testsuite/g++.dg/concepts/req14.C @@ -1,5 +1,6 @@ // PR c++/66758 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U> concept bool C = requires (T t, U u) { t + u; }; diff --git a/gcc/testsuite/g++.dg/concepts/req15.C b/gcc/testsuite/g++.dg/concepts/req15.C index 53d796c..385d51d 100644 --- a/gcc/testsuite/g++.dg/concepts/req15.C +++ b/gcc/testsuite/g++.dg/concepts/req15.C @@ -1,5 +1,6 @@ // PR c++/66832 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class U, unsigned N> requires requires (T& t, U &u) { t.foo(); u.foo(); } diff --git a/gcc/testsuite/g++.dg/concepts/req16.C b/gcc/testsuite/g++.dg/concepts/req16.C index ee80da078..ca04d60 100644 --- a/gcc/testsuite/g++.dg/concepts/req16.C +++ b/gcc/testsuite/g++.dg/concepts/req16.C @@ -1,5 +1,6 @@ // PR c++/66988 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <type_traits> diff --git a/gcc/testsuite/g++.dg/concepts/req17.C b/gcc/testsuite/g++.dg/concepts/req17.C index e1e3eac..472cfef 100644 --- a/gcc/testsuite/g++.dg/concepts/req17.C +++ b/gcc/testsuite/g++.dg/concepts/req17.C @@ -1,5 +1,6 @@ // PR c++/67018 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <typename T> constexpr bool Val = true; diff --git a/gcc/testsuite/g++.dg/concepts/req18.C b/gcc/testsuite/g++.dg/concepts/req18.C index 5ddb9e7..cccfaed 100644 --- a/gcc/testsuite/g++.dg/concepts/req18.C +++ b/gcc/testsuite/g++.dg/concepts/req18.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class> struct all_same { static constexpr bool value = 1; diff --git a/gcc/testsuite/g++.dg/concepts/req19.C b/gcc/testsuite/g++.dg/concepts/req19.C index d52ac23..97cd9e5 100644 --- a/gcc/testsuite/g++.dg/concepts/req19.C +++ b/gcc/testsuite/g++.dg/concepts/req19.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct B { diff --git a/gcc/testsuite/g++.dg/concepts/req2.C b/gcc/testsuite/g++.dg/concepts/req2.C index 3f35ee8..b32845a 100644 --- a/gcc/testsuite/g++.dg/concepts/req2.C +++ b/gcc/testsuite/g++.dg/concepts/req2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class () { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/req20.C b/gcc/testsuite/g++.dg/concepts/req20.C index 38ade56..bd6b0f9 100644 --- a/gcc/testsuite/g++.dg/concepts/req20.C +++ b/gcc/testsuite/g++.dg/concepts/req20.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool C = true; diff --git a/gcc/testsuite/g++.dg/concepts/req3.C b/gcc/testsuite/g++.dg/concepts/req3.C index 8322e71..8ce58e5 100644 --- a/gcc/testsuite/g++.dg/concepts/req3.C +++ b/gcc/testsuite/g++.dg/concepts/req3.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do run { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Class () { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/req4.C b/gcc/testsuite/g++.dg/concepts/req4.C index b8c4209..fcc13c6 100644 --- a/gcc/testsuite/g++.dg/concepts/req4.C +++ b/gcc/testsuite/g++.dg/concepts/req4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct fool { constexpr fool operator&&(fool) const { return {}; } diff --git a/gcc/testsuite/g++.dg/concepts/req5.C b/gcc/testsuite/g++.dg/concepts/req5.C index a3a315c..7ad1cab 100644 --- a/gcc/testsuite/g++.dg/concepts/req5.C +++ b/gcc/testsuite/g++.dg/concepts/req5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct fool { }; diff --git a/gcc/testsuite/g++.dg/concepts/req6.C b/gcc/testsuite/g++.dg/concepts/req6.C index 50fa3b4..dd7dbdd 100644 --- a/gcc/testsuite/g++.dg/concepts/req6.C +++ b/gcc/testsuite/g++.dg/concepts/req6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct X { }; int operator==(X, X) { return 0; } diff --git a/gcc/testsuite/g++.dg/concepts/req7.C b/gcc/testsuite/g++.dg/concepts/req7.C index 38933e4..a6cfb4b 100644 --- a/gcc/testsuite/g++.dg/concepts/req7.C +++ b/gcc/testsuite/g++.dg/concepts/req7.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <vector> diff --git a/gcc/testsuite/g++.dg/concepts/req8.C b/gcc/testsuite/g++.dg/concepts/req8.C index 5a34358..201be37 100644 --- a/gcc/testsuite/g++.dg/concepts/req8.C +++ b/gcc/testsuite/g++.dg/concepts/req8.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } // Check that type requirements are normalized correctly. diff --git a/gcc/testsuite/g++.dg/concepts/req9.C b/gcc/testsuite/g++.dg/concepts/req9.C index c4d6b57..497154c 100644 --- a/gcc/testsuite/g++.dg/concepts/req9.C +++ b/gcc/testsuite/g++.dg/concepts/req9.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> struct S1 {}; diff --git a/gcc/testsuite/g++.dg/concepts/template-parm1.C b/gcc/testsuite/g++.dg/concepts/template-parm1.C index 88731d6..192226f 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm1.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_same_as(T, int); diff --git a/gcc/testsuite/g++.dg/concepts/template-parm10.C b/gcc/testsuite/g++.dg/concepts/template-parm10.C index cbce4f3..33bf372 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm10.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm10.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<int N, class T> concept bool P() { return true; } diff --git a/gcc/testsuite/g++.dg/concepts/template-parm11.C b/gcc/testsuite/g++.dg/concepts/template-parm11.C index 352acc2..04e11e2 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm11.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm11.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool NameProvider() diff --git a/gcc/testsuite/g++.dg/concepts/template-parm12.C b/gcc/testsuite/g++.dg/concepts/template-parm12.C index aee63dc..8745bb1 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm12.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm12.C @@ -1,5 +1,6 @@ // Conceptized version of template/ttp23.C -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool Foo = true; diff --git a/gcc/testsuite/g++.dg/concepts/template-parm2.C b/gcc/testsuite/g++.dg/concepts/template-parm2.C index 6a32cfe..adecc12 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm2.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_same_as(T, int); diff --git a/gcc/testsuite/g++.dg/concepts/template-parm3.C b/gcc/testsuite/g++.dg/concepts/template-parm3.C index 61fa86d..3d37e9c 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm3.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_same_as(T, int); diff --git a/gcc/testsuite/g++.dg/concepts/template-parm4.C b/gcc/testsuite/g++.dg/concepts/template-parm4.C index c384042..f546a75 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm4.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_same_as(T, int); diff --git a/gcc/testsuite/g++.dg/concepts/template-parm5.C b/gcc/testsuite/g++.dg/concepts/template-parm5.C index 5e537b0..cd93c607 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm5.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_same_as(T, int); diff --git a/gcc/testsuite/g++.dg/concepts/template-parm6.C b/gcc/testsuite/g++.dg/concepts/template-parm6.C index eb4bb16..9efe409 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm6.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename... Ts> struct are_same; diff --git a/gcc/testsuite/g++.dg/concepts/template-parm7.C b/gcc/testsuite/g++.dg/concepts/template-parm7.C index 27d19e9..1dfa0d1 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm7.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm7.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename... Ts> struct are_same; diff --git a/gcc/testsuite/g++.dg/concepts/template-parm8.C b/gcc/testsuite/g++.dg/concepts/template-parm8.C index 63a12c4..63c4512 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm8.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm8.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/template-parm9.C b/gcc/testsuite/g++.dg/concepts/template-parm9.C index e34c606..64308cd 100644 --- a/gcc/testsuite/g++.dg/concepts/template-parm9.C +++ b/gcc/testsuite/g++.dg/concepts/template-parm9.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C() { return __is_class(T); } diff --git a/gcc/testsuite/g++.dg/concepts/template-template-parm1.C b/gcc/testsuite/g++.dg/concepts/template-template-parm1.C index e828db9..6c4dc2c 100644 --- a/gcc/testsuite/g++.dg/concepts/template-template-parm1.C +++ b/gcc/testsuite/g++.dg/concepts/template-template-parm1.C @@ -1,5 +1,6 @@ // PR c++/66937 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } #include <tuple> diff --git a/gcc/testsuite/g++.dg/concepts/traits1.C b/gcc/testsuite/g++.dg/concepts/traits1.C index b5a7185..27610e2 100644 --- a/gcc/testsuite/g++.dg/concepts/traits1.C +++ b/gcc/testsuite/g++.dg/concepts/traits1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Nothrow_assignable() { return __has_nothrow_assign(T); } diff --git a/gcc/testsuite/g++.dg/concepts/traits2.C b/gcc/testsuite/g++.dg/concepts/traits2.C index 3383d26..71dcfd3 100644 --- a/gcc/testsuite/g++.dg/concepts/traits2.C +++ b/gcc/testsuite/g++.dg/concepts/traits2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool Nothrow_assignable() { return __has_nothrow_assign(T); } diff --git a/gcc/testsuite/g++.dg/concepts/var-concept1.C b/gcc/testsuite/g++.dg/concepts/var-concept1.C index 1456c07..90a88d8 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept1.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_class(T); diff --git a/gcc/testsuite/g++.dg/concepts/var-concept2.C b/gcc/testsuite/g++.dg/concepts/var-concept2.C index c71e8a4..c16d3e4 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept2.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_class(T); diff --git a/gcc/testsuite/g++.dg/concepts/var-concept3.C b/gcc/testsuite/g++.dg/concepts/var-concept3.C index d4f4f57..f3d642b 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept3.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept3.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T> concept bool C1 = __is_class(T); diff --git a/gcc/testsuite/g++.dg/concepts/var-concept4.C b/gcc/testsuite/g++.dg/concepts/var-concept4.C index 677deda..3864c9d 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept4.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept4.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T, typename U> concept bool Same = __is_same_as(T, U); diff --git a/gcc/testsuite/g++.dg/concepts/var-concept5.C b/gcc/testsuite/g++.dg/concepts/var-concept5.C index 68c4a6f..b1e9cb5 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept5.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept5.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename T1, typename T2> concept bool C1 = true; diff --git a/gcc/testsuite/g++.dg/concepts/var-concept6.C b/gcc/testsuite/g++.dg/concepts/var-concept6.C index 645e8ca..8f5ac62 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept6.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept6.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept int C = true; // { dg-error "bool" } diff --git a/gcc/testsuite/g++.dg/concepts/var-concept7.C b/gcc/testsuite/g++.dg/concepts/var-concept7.C index 0df4a49..8371b37 100644 --- a/gcc/testsuite/g++.dg/concepts/var-concept7.C +++ b/gcc/testsuite/g++.dg/concepts/var-concept7.C @@ -1,5 +1,6 @@ // PR c++/85133 -// { dg-additional-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-additional-options "-fconcepts" } template<typename> concept bool C; // { dg-error "no initializer" } diff --git a/gcc/testsuite/g++.dg/concepts/var-templ1.C b/gcc/testsuite/g++.dg/concepts/var-templ1.C index f24d76d..b69d7d8d 100644 --- a/gcc/testsuite/g++.dg/concepts/var-templ1.C +++ b/gcc/testsuite/g++.dg/concepts/var-templ1.C @@ -1,5 +1,6 @@ // PR c++/67117 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> requires false diff --git a/gcc/testsuite/g++.dg/concepts/var-templ2.C b/gcc/testsuite/g++.dg/concepts/var-templ2.C index 2e04ed6..ffe5f1f 100644 --- a/gcc/testsuite/g++.dg/concepts/var-templ2.C +++ b/gcc/testsuite/g++.dg/concepts/var-templ2.C @@ -1,5 +1,6 @@ // PR c++/67139 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> constexpr typename T::type::value_type _v = T::type::value; diff --git a/gcc/testsuite/g++.dg/concepts/var-templ3.C b/gcc/testsuite/g++.dg/concepts/var-templ3.C index 0746863..22f07ee 100644 --- a/gcc/testsuite/g++.dg/concepts/var-templ3.C +++ b/gcc/testsuite/g++.dg/concepts/var-templ3.C @@ -1,5 +1,6 @@ // PR c++/68666 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } struct A { template <class> diff --git a/gcc/testsuite/g++.dg/concepts/variadic1.C b/gcc/testsuite/g++.dg/concepts/variadic1.C index b1b5ba5..4c0f437 100644 --- a/gcc/testsuite/g++.dg/concepts/variadic1.C +++ b/gcc/testsuite/g++.dg/concepts/variadic1.C @@ -1,5 +1,6 @@ // PR c++/66712 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T, class...Args> concept bool _Constructible_ = diff --git a/gcc/testsuite/g++.dg/concepts/variadic2.C b/gcc/testsuite/g++.dg/concepts/variadic2.C index 2b64a62..4675d97 100644 --- a/gcc/testsuite/g++.dg/concepts/variadic2.C +++ b/gcc/testsuite/g++.dg/concepts/variadic2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template <class T> concept bool Copyable = requires (T t) { T(t); }; template <class T> concept bool Constructable = requires { T(); }; diff --git a/gcc/testsuite/g++.dg/concepts/variadic4.C b/gcc/testsuite/g++.dg/concepts/variadic4.C index 48bdfee..e0f7903 100644 --- a/gcc/testsuite/g++.dg/concepts/variadic4.C +++ b/gcc/testsuite/g++.dg/concepts/variadic4.C @@ -1,5 +1,6 @@ // PR c++/73456 -// { dg-options "-std=c++17 -fconcepts" } +// { dg-do compile { target c++17 } } +// { dg-options "-fconcepts" } template<typename...> struct list {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/Wpessimizing-move1.C b/gcc/testsuite/g++.dg/cpp1z/Wpessimizing-move1.C index 5974188..9dec587 100644 --- a/gcc/testsuite/g++.dg/cpp1z/Wpessimizing-move1.C +++ b/gcc/testsuite/g++.dg/cpp1z/Wpessimizing-move1.C @@ -1,5 +1,6 @@ // PR c++/86981 -// { dg-options "-Wpessimizing-move -std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wpessimizing-move" } #include <utility> #include <optional> diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base1.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base1.C index 2c6bdca..40353f4 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base1.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base1.C @@ -1,5 +1,4 @@ -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } struct base1 { int b1, b2 = 42; }; struct base2 { diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base2.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base2.C index 5d73bbf..855bed9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base2.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base2.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct derived; struct base { diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base3.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base3.C index f526a6e..c051c08 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base3.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base3.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct derived; struct base { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base4.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base4.C index 8f9126b..7a4865a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base4.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base4.C @@ -1,5 +1,4 @@ -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } struct derived; struct base { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base5.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base5.C index 5f6d9ad..17882b7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base5.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base5.C @@ -1,5 +1,5 @@ -// { dg-options "-std=c++17 -w" } -// { dg-do run } +// { dg-options "-w" } +// { dg-do run { target c++17 } } struct A { }; struct B: A { int i; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/aggr-base6.C b/gcc/testsuite/g++.dg/cpp1z/aggr-base6.C index 08578ed..3de2e72 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aggr-base6.C +++ b/gcc/testsuite/g++.dg/cpp1z/aggr-base6.C @@ -1,5 +1,5 @@ -// { dg-options "-std=c++17 -w" } -// { dg-do run } +// { dg-options "-w" } +// { dg-do run { target c++17 } } struct A { }; struct B: A { int i; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/aligned-new1.C b/gcc/testsuite/g++.dg/cpp1z/aligned-new1.C index 09f823e..48e9e94 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aligned-new1.C +++ b/gcc/testsuite/g++.dg/cpp1z/aligned-new1.C @@ -1,5 +1,4 @@ -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } #ifndef __STDCPP_DEFAULT_NEW_ALIGNMENT__ #error __STDCPP_DEFAULT_NEW_ALIGNMENT__ not defined diff --git a/gcc/testsuite/g++.dg/cpp1z/aligned-new2.C b/gcc/testsuite/g++.dg/cpp1z/aligned-new2.C index 7bf6309..5c1c4eb 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aligned-new2.C +++ b/gcc/testsuite/g++.dg/cpp1z/aligned-new2.C @@ -1,5 +1,4 @@ -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } #include <new> diff --git a/gcc/testsuite/g++.dg/cpp1z/aligned-new3.C b/gcc/testsuite/g++.dg/cpp1z/aligned-new3.C index 2bfb6b8..08cd732 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aligned-new3.C +++ b/gcc/testsuite/g++.dg/cpp1z/aligned-new3.C @@ -1,5 +1,4 @@ -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } #include <new> diff --git a/gcc/testsuite/g++.dg/cpp1z/aligned-new7.C b/gcc/testsuite/g++.dg/cpp1z/aligned-new7.C index 52011f2..5b364d6 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aligned-new7.C +++ b/gcc/testsuite/g++.dg/cpp1z/aligned-new7.C @@ -1,5 +1,6 @@ // PR c++/77742 -// { dg-options "-Wall -std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wall" } #include <new> diff --git a/gcc/testsuite/g++.dg/cpp1z/aligned-new8.C b/gcc/testsuite/g++.dg/cpp1z/aligned-new8.C index 11dd457..9c12520 100644 --- a/gcc/testsuite/g++.dg/cpp1z/aligned-new8.C +++ b/gcc/testsuite/g++.dg/cpp1z/aligned-new8.C @@ -1,6 +1,5 @@ // PR c++/82760 -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } #include <new> #include <cstddef> diff --git a/gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C b/gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C index ad7d237..1e9e996 100644 --- a/gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C +++ b/gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } #ifndef __cpp_enumerator_attributes #error __cpp_enumerator_attributes not defined diff --git a/gcc/testsuite/g++.dg/cpp1z/bool-increment1.C b/gcc/testsuite/g++.dg/cpp1z/bool-increment1.C index 236fba3..0355dc8 100644 --- a/gcc/testsuite/g++.dg/cpp1z/bool-increment1.C +++ b/gcc/testsuite/g++.dg/cpp1z/bool-increment1.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int fn (bool b) diff --git a/gcc/testsuite/g++.dg/cpp1z/byte1.C b/gcc/testsuite/g++.dg/cpp1z/byte1.C index d3b9b88..631b18d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/byte1.C +++ b/gcc/testsuite/g++.dg/cpp1z/byte1.C @@ -1,5 +1,6 @@ // Test for std::byte aliasing properties. -// { dg-options "-std=c++17 -O3" } +// { dg-do compile { target c++17 } } +// { dg-options "-O3" } #include <cstddef> diff --git a/gcc/testsuite/g++.dg/cpp1z/byte2.C b/gcc/testsuite/g++.dg/cpp1z/byte2.C index 6a395c1..717aea8 100644 --- a/gcc/testsuite/g++.dg/cpp1z/byte2.C +++ b/gcc/testsuite/g++.dg/cpp1z/byte2.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -Wall" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wall" } #include <cstddef> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction1.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction1.C index 7e1588e..752b430 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction1.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction1.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction10.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction10.C index a3879fc..eb0b15e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction10.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction10.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction11.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction11.C index 301ba9a..2a75949 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction11.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction11.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction12.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction12.C index e858dcf..a31cc15 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction12.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction12.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction13.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction13.C index 0bacf9b..7a07bef 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction13.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction13.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction14.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction14.C index 41d58db..ba2ba9b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction14.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction14.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <vector> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction15.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction15.C index 3f0e229..5d050f1 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction15.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction15.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <utility> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction16.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction16.C index 2a636e2..3db8a02 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction16.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction16.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <tuple> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction17.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction17.C index 646b5aa..e8d1ab2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction17.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction17.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <initializer_list> template <class T> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction18.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction18.C index 42f936a..a0e6a73 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction18.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction18.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class T> struct S{S(T){}}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction19.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction19.C index 5c21b74..a098e14 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction19.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction19.C @@ -1,5 +1,5 @@ // PR c++/77912 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class T> struct S{S(T){}}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction2.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction2.C index 2e1d115..a0cd20c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction2.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction2.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction20.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction20.C index 988f11b..4c009e7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction20.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction20.C @@ -1,5 +1,5 @@ // PR c++/77890 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class F> struct S{S(F&&f){}}; void f() diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction21.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction21.C index 2c2ce46..e8cd562 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction21.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction21.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class T, class D = int> struct S { T t; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction22.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction22.C index a1f0c20..0a26085 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction22.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction22.C @@ -1,10 +1,10 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <template <class> class T> void f() { T t = 42; // { dg-error "B" } -}; +} template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction23.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction23.C index a2fa406..a383304 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction23.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction23.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction24.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction24.C index c4d890c..1d05a08 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction24.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction24.C @@ -1,5 +1,5 @@ // PR c++/78894 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction25.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction25.C index d3259d8..2d8c3ef 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction25.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction25.C @@ -1,5 +1,5 @@ // Testcase from P0512R0 for C++17 NB comment US 19 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename> struct remove_ref; template<typename _Tp> struct remove_ref { typedef _Tp type; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction26.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction26.C index 74de70c..bfdba79 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction26.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction26.C @@ -1,5 +1,5 @@ // Testcase from P0512R0 for C++17 NB comment US 20 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class,class> struct same; template <class T> struct same<T,T> {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction27.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction27.C index ce58058..a9a9d8c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction27.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction27.C @@ -1,5 +1,5 @@ // PR c++/79316 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename T> struct S { S(T t) {} }; template<typename T> S(T, int = 7) -> S<T>; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction28.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction28.C index 8238e5b..2fec7f7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction28.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction28.C @@ -1,5 +1,5 @@ // PR c++/79350 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction29.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction29.C index 8c2d67e..6c24716 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction29.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction29.C @@ -1,5 +1,5 @@ // PR c++/79500 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename T> struct A {}; A(...) -> A<int>; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction3.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction3.C index 13e001a..9b32783 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction3.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction3.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int I> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction30.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction30.C index d0ef5f9..4339a5e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction30.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction30.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T = void> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction31.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction31.C index 2fd2f28..67243b2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction31.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction31.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A { A(T); // #1 diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction32.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction32.C index 0f4c85a..ef21c96 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction32.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction32.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <initializer_list> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction33.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction33.C index ee9d780..4572b0a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction33.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction33.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class,class> struct same; template <class T> struct same<T,T> {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction34.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction34.C index 380c35f..26c063a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction34.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction34.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction35.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction35.C index 63d099d..b63cf82 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction35.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction35.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction36.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction36.C index 3670cee..a9c95fe 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction36.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction36.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A { A(T&); diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction38.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction38.C index 883961e..64c276a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction38.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction38.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A { using value_type = T; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction39.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction39.C index f141e9b..772434a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction39.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction39.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction4.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction4.C index a86589c..391beee 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction4.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction4.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int I, int J> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction40.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction40.C index 3888b39..4420277 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction40.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction40.C @@ -1,5 +1,5 @@ // PR c++/81180 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template < int I > struct int_{}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction41.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction41.C index f287ce9..5557ae9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction41.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction41.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <initializer_list> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction42.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction42.C index 4623e74..dfba826 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction42.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction42.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <initializer_list> diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction43.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction43.C index 1201455..55a79b3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction43.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction43.C @@ -1,5 +1,5 @@ // PR c++/79790 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int N> struct array diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction44.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction44.C index 1571197..225652c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction44.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction44.C @@ -1,5 +1,5 @@ // PR c++/80412 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename> struct A; template <typename> struct B : A < B { , // { dg-error "" } diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction45.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction45.C index 3fe8dd3..6f72b5f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction45.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction45.C @@ -1,5 +1,5 @@ // PR c++/82308 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename, unsigned> struct array {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction46.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction46.C index cf38ed6..513e160 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction46.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction46.C @@ -1,5 +1,5 @@ // PR c++/80449 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class S> struct C; template<> struct C<int> { C(int, int) {} }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C index 1cfdc44..ab64cc4 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C @@ -1,5 +1,5 @@ // PR c++/82468 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <template <class> class TT> TT(double) -> TT<int>; // { dg-error "template template" } diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction49.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction49.C index 086f12a..658ae43 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction49.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction49.C @@ -1,5 +1,5 @@ // PR c++/84015 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int I> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction5.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction5.C index a7d56fbf..49d4c94 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction5.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction5.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction50.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction50.C index e8cdd8c..7289932 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction50.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction50.C @@ -1,5 +1,5 @@ // PR c++/84355 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class, class> struct same; template <class T> struct same<T,T> {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction51.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction51.C index eba7972..ef593ff 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction51.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction51.C @@ -1,5 +1,5 @@ // PR c++/84937 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template<int, int> struct A {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction52.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction52.C index db786ce..6ea9e80 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction52.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction52.C @@ -1,5 +1,5 @@ // PR c++/84768 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename> struct A {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction54.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction54.C index e51398b..2e87139 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction54.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction54.C @@ -1,5 +1,5 @@ // PR c++/82152 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } struct Base {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction55.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction55.C index a93d720..74fd29f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction55.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction55.C @@ -1,5 +1,5 @@ // PR c++/85883 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T> struct Bar diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction56.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction56.C index 71dbfa1..6cf54b3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction56.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction56.C @@ -1,5 +1,5 @@ // PR c++/85883 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T1, typename T2> struct Bar diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction57.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction57.C index 200ba6c..f1c776e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction57.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction57.C @@ -1,5 +1,5 @@ // PR c++/85883 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T1, typename T2, typename T3> struct Bar diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction58.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction58.C index 82c3f83..0613a9e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction58.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction58.C @@ -1,5 +1,5 @@ // PR c++/86098 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class _Res> class future; template <class T> T&& declval(); diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction6.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction6.C index 3f751ce..b20bd75 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction6.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction6.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction7.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction7.C index d635a64..ab96774 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction7.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction7.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction8.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction8.C index 9836e26..20cabe0 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction8.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction8.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction9.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction9.C index 23c58fd..c0af944 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction9.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction9.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } namespace N { template <class T> diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-83692.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-83692.C index f6b61ee..3c6592c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-83692.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-83692.C @@ -1,5 +1,5 @@ // PR c++/83692 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct integer { constexpr int value() const { return m_value; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-84684.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-84684.C index 0e7912d..43dcf71 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-84684.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-84684.C @@ -1,5 +1,5 @@ // PR c++/84684 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } typedef decltype (sizeof (0)) size_t; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C index f10d830..84d7b20 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C @@ -1,5 +1,5 @@ // PR c++/78948 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int T> void sizeof_mismatch() diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C index aaef952..56922bb 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C @@ -1,6 +1,6 @@ // Test that discarded statements differ from unevaluated operands in some // ways. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { int i; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C index db984a6..f21a989 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C @@ -1,5 +1,5 @@ // PR c++/80562 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct T { constexpr auto foo() { return false; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if13.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if13.C index 55dbfd9..459fa132 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if13.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if13.C @@ -1,5 +1,5 @@ // PR c++/83273 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int main() { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C index f6cc39a..69af775 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C @@ -1,5 +1,5 @@ // PR c++/84421 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A{ constexpr operator bool() const { return true; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if15.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if15.C index 9a9053c..1dd8bea 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if15.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if15.C @@ -1,5 +1,5 @@ // PR c++/84854 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } constexpr int foo () { return 1; } constexpr int foo (int) { return 2; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if16.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if16.C index 31a1497..dfece04 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if16.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if16.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if17.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if17.C index c6ebf1e..cf637f6 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if17.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if17.C @@ -1,6 +1,5 @@ // PR c++/85149 -// { dg-do run } -// { dg-additional-options -std=c++17 } +// { dg-do run { target c++17 } } template <typename T> struct is_void { static constexpr bool value = false; }; template <> struct is_void<void> { static constexpr bool value = true; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if18.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if18.C index 03ad620..a560117 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if18.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if18.C @@ -1,5 +1,5 @@ // PR c++/85200 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T> void f(){ diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if19.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if19.C index 40016a5..a1eaf32 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if19.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if19.C @@ -1,5 +1,5 @@ // PR c++/85200 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A{ constexpr operator int(){ return 0; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if20.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if20.C index 24343ad..2fd678b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if20.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if20.C @@ -1,5 +1,5 @@ // PR c++/85214 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } struct g { constexpr operator int() { return true; } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if21.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if21.C index 56e108b..b02417f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if21.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if21.C @@ -1,5 +1,5 @@ // PR c++/85032 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if22.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if22.C index 76f0c73..32ed5df 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if22.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if22.C @@ -1,5 +1,5 @@ // PR c++/85695 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T, T v> struct integral_constant { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if23.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if23.C index 8e31db3..4f6cf3d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if23.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if23.C @@ -1,5 +1,5 @@ // PR c++/85842 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class T> auto f = [](auto&& arg) -> T* { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if24.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if24.C index cbdb38d..8e6034c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if24.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if24.C @@ -1,5 +1,5 @@ // PR c++/86480 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class...> constexpr bool val = true; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C index 501e7d3..a2250a2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } constexpr auto Add5 = [](int i) { return i+5; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C index 2af652d..d13053a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void g() { const int n = 0; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C index f5d58ce..98b27c1 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } // 'v' & 'm' are odr-used but do not occur in a constant-expression within the nested // lambda, so are well-formed. diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C index 1ad2f68..a59bf49 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void f(int i) { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C index 35baff3..962ec8d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto l1 = []() constexpr constexpr { }; // { dg-error "duplicate" } auto l2 = []() mutable mutable { }; // { dg-error "duplicate" } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda17.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda17.C index 44bd2b8..89585f3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda17.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda17.C @@ -1,5 +1,5 @@ // PR c++/78131 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename TF> constexpr auto f(TF) diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda18.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda18.C index 639018b..c7ef8d0 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda18.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda18.C @@ -1,5 +1,5 @@ // PR c++/82570 -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } template< typename Body > inline void iterate(Body body) diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda19.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda19.C index a16d31c..c6266c2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda19.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda19.C @@ -1,5 +1,5 @@ // PR c++/84098 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A{}; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C index a6b3e53..3cf9d03 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } constexpr int AddEleven(int n){ return[n]{return n+11;}(); diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda20.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda20.C index c5109b8..d2d220c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda20.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda20.C @@ -1,5 +1,5 @@ // PR c++/82022 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> void f2() diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda21.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda21.C index 8b0c95b..210726b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda21.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda21.C @@ -1,5 +1,5 @@ // PR c++/85228 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template<int> struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C index b2772b3..ccdf697 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } constexpr auto add = [] (int n, int m) { auto L = [=] { return n; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C index 106b504..83a2029 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto ID = [] (int n) constexpr { return n; }; constexpr int I = ID(3); diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C index 8c9db95..c9fa63d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto addOne = [] (int n) { return n + 1; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C index cd7c5b9..214d382 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto monoid = [](auto v) { return [=] { return v; }; }; auto add = [](auto m1) constexpr { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C index 4dc5ae2..474ce88 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto ID = [](auto a) { return a; }; static_assert( ID (3) == 3); // OK diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C index 0bac4c1..84be68a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C @@ -1,5 +1,5 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } auto Fwd = [](int (*fp)(int), auto a) { return fp(a); }; auto C = [](auto a) { return a; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C index 23fdc93..c4999c5 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C @@ -1,4 +1,4 @@ // Testcase from P0170R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } static_assert([](int n) { return [&n] { return ++n; }(); }(3) == 4); diff --git a/gcc/testsuite/g++.dg/cpp1z/cplusplus.C b/gcc/testsuite/g++.dg/cpp1z/cplusplus.C index bc6139b..cc27e1e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/cplusplus.C +++ b/gcc/testsuite/g++.dg/cpp1z/cplusplus.C @@ -1,5 +1,4 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17_only } } #if __cplusplus != 201703L #error "__cplusplus != 201703L" diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C b/gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C index 1833bc3..1a14997 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C @@ -1,5 +1,5 @@ // Test of bit-fields. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { long i: 2; } a; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C b/gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C index 04ca9a1..1a53741 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C @@ -1,5 +1,5 @@ // Test for reference address comparison in constant expression. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int i[2]; struct A { int i, j; } a; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C b/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C index fbab025..6161e4d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C @@ -1,5 +1,5 @@ // PR c++/84420 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } int main(){ int a[1]{}; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp10.C b/gcc/testsuite/g++.dg/cpp1z/decomp10.C index b4169d3..f0723f8 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp10.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp10.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } namespace std { template<typename T> struct tuple_size; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp11.C b/gcc/testsuite/g++.dg/cpp1z/decomp11.C index edb6709..38dfb36 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp11.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp11.C @@ -1,5 +1,5 @@ // Test for decltype of direct decomposition. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class,class> struct same_type; template <class T> struct same_type<T,T> {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp12.C b/gcc/testsuite/g++.dg/cpp1z/decomp12.C index 09ed646..56fd498 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp12.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp12.C @@ -1,6 +1,5 @@ // PR c++/78358 -// { dg-do run } -// { dg-options -std=c++17 } +// { dg-do run { target c++17 } } #include <tuple> diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp15.C b/gcc/testsuite/g++.dg/cpp1z/decomp15.C index e5dc443..72e2c52 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp15.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp15.C @@ -1,5 +1,4 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } struct A { bool a, b; }; struct B { int a, b; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp16.C b/gcc/testsuite/g++.dg/cpp1z/decomp16.C index 7589c80..fe0be16 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp16.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp16.C @@ -1,5 +1,4 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } struct A { bool a, b; }; struct B { int a, b; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp17.C b/gcc/testsuite/g++.dg/cpp1z/decomp17.C index ace1f06..73dbebe 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp17.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp17.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <tuple> diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp20.C b/gcc/testsuite/g++.dg/cpp1z/decomp20.C index 8475e5d..8309ce8 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp20.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp20.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { int i,j; }; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp21.C b/gcc/testsuite/g++.dg/cpp1z/decomp21.C index 6f21c9c..9ed0da3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp21.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp21.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int a[3]; struct S { int b, c, d; } s; diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp27.C b/gcc/testsuite/g++.dg/cpp1z/decomp27.C index fd5f30e..a28f500 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp27.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp27.C @@ -1,6 +1,5 @@ // PR c++/80084 -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp29.C b/gcc/testsuite/g++.dg/cpp1z/decomp29.C index 3ccc383..3404a58 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp29.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp29.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -Wunused" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wunused" } #include <tuple> diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp30.C b/gcc/testsuite/g++.dg/cpp1z/decomp30.C index b11a312..9de3979 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp30.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp30.C @@ -1,5 +1,5 @@ // PR c++/81258 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int a[2]; auto [b, c] (a); diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp37.C b/gcc/testsuite/g++.dg/cpp1z/decomp37.C index dc47908..6bf8176 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp37.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp37.C @@ -1,5 +1,4 @@ -// { dg-additional-options -std=c++17 } -// { dg-do compile } +// { dg-do compile { target c++17 } } #include <memory> #include <tuple> diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp38.C b/gcc/testsuite/g++.dg/cpp1z/decomp38.C index fc69c02..769318e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp38.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp38.C @@ -1,5 +1,4 @@ -// { dg-additional-options -std=c++17 } -// { dg-do compile } +// { dg-do compile { target c++17 } } class X { diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp9.C b/gcc/testsuite/g++.dg/cpp1z/decomp9.C index 0a19876..845635a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/decomp9.C +++ b/gcc/testsuite/g++.dg/cpp1z/decomp9.C @@ -1,5 +1,4 @@ -// { dg-do run } -// { dg-options -std=c++17 } +// { dg-do run { target c++17 } } #define assert(X) do { if (!(X)) __builtin_abort(); } while (0) diff --git a/gcc/testsuite/g++.dg/cpp1z/elide1.C b/gcc/testsuite/g++.dg/cpp1z/elide1.C index 6875c82..7b35b9e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/elide1.C +++ b/gcc/testsuite/g++.dg/cpp1z/elide1.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/eval-order2.C b/gcc/testsuite/g++.dg/cpp1z/eval-order2.C index 95dd106..af26cb2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/eval-order2.C +++ b/gcc/testsuite/g++.dg/cpp1z/eval-order2.C @@ -1,6 +1,5 @@ // P0145R2: Refining Expression Order for C++ -// { dg-do run } -// { dg-options "-std=c++17" } +// { dg-do run { target c++17 } } #include <string> #define assert(X) if (!(X)) __builtin_abort(); diff --git a/gcc/testsuite/g++.dg/cpp1z/eval-order3.C b/gcc/testsuite/g++.dg/cpp1z/eval-order3.C index b53e96a..5773591 100644 --- a/gcc/testsuite/g++.dg/cpp1z/eval-order3.C +++ b/gcc/testsuite/g++.dg/cpp1z/eval-order3.C @@ -1,6 +1,5 @@ // P0145R2: Refining Expression Order for C++ -// { dg-do run } -// { dg-options "-std=c++17" } +// { dg-do run { target c++17 } } extern "C" int printf (const char *, ...); void sink(...) { } diff --git a/gcc/testsuite/g++.dg/cpp1z/fallthrough1.C b/gcc/testsuite/g++.dg/cpp1z/fallthrough1.C index 54a8323..c6f54ce 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fallthrough1.C +++ b/gcc/testsuite/g++.dg/cpp1z/fallthrough1.C @@ -1,6 +1,6 @@ // PR c/7652 -// { dg-do compile } -// { dg-options "-std=c++17 -Wextra -Wall -Wpedantic" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wextra -Wall -Wpedantic" } // Check that we accept attribute [[fallthrough]]. diff --git a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C index e90b744..f551892 100644 --- a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C +++ b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17 -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" } +// { dg-do compile { target c++17 } } +// { dg-options "-I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" } // C++98 features: diff --git a/gcc/testsuite/g++.dg/cpp1z/fold-ice1.C b/gcc/testsuite/g++.dg/cpp1z/fold-ice1.C index 7e71cc9..e65730b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold-ice1.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold-ice1.C @@ -1,5 +1,5 @@ // PR c++/67926 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <bool ... T> bool FUR = (T && ...); template <bool ... T> bool FUL = (... && T); diff --git a/gcc/testsuite/g++.dg/cpp1z/fold-lambda.C b/gcc/testsuite/g++.dg/cpp1z/fold-lambda.C index 5eaed4a..8ccf42b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold-lambda.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold-lambda.C @@ -1,5 +1,4 @@ -// { dg-do run } -// { dg-options -std=c++17 } +// { dg-do run { target c++17 } } template <class... T> auto f() { diff --git a/gcc/testsuite/g++.dg/cpp1z/fold-lambda2.C b/gcc/testsuite/g++.dg/cpp1z/fold-lambda2.C index e93f55f..14ca954 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold-lambda2.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold-lambda2.C @@ -1,5 +1,5 @@ // PR c++/85305 -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <int... Is> void foo() diff --git a/gcc/testsuite/g++.dg/cpp1z/fold-mangle.C b/gcc/testsuite/g++.dg/cpp1z/fold-mangle.C index 95df8ca..6957d9c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold-mangle.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold-mangle.C @@ -1,5 +1,5 @@ // PR c++/71711 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template < int > struct A {}; template < int ... N > void unary_left (A < (... + N) >); diff --git a/gcc/testsuite/g++.dg/cpp1z/fold1.C b/gcc/testsuite/g++.dg/cpp1z/fold1.C index fdaa955..6d00467 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold1.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold1.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17" } +// { dg-do run { target c++17 } } +// { dg-options "" } #include <cassert> diff --git a/gcc/testsuite/g++.dg/cpp1z/fold2.C b/gcc/testsuite/g++.dg/cpp1z/fold2.C index 093a98b..6610c19 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold2.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold2.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "" } // Check that we can fold over all of the operators required // by the standard in every possible way. diff --git a/gcc/testsuite/g++.dg/cpp1z/fold3.C b/gcc/testsuite/g++.dg/cpp1z/fold3.C index 7caa848..787bf79 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold3.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold3.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "" } // Check that empty expansions and required failures. diff --git a/gcc/testsuite/g++.dg/cpp1z/fold4.C b/gcc/testsuite/g++.dg/cpp1z/fold4.C index 2365d50..e0ee131 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold4.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold4.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class...T> constexpr auto f(T... t) diff --git a/gcc/testsuite/g++.dg/cpp1z/fold6.C b/gcc/testsuite/g++.dg/cpp1z/fold6.C index 29a2048..df29033 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold6.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold6.C @@ -1,7 +1,7 @@ // Test that we reject a fold-expression with an LHS that is not a // cast-expression. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int i; diff --git a/gcc/testsuite/g++.dg/cpp1z/fold7.C b/gcc/testsuite/g++.dg/cpp1z/fold7.C index 74ef4ab..d65d6e9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold7.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold7.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } #ifndef __cpp_fold_expressions #error __cpp_fold_expressions not defined diff --git a/gcc/testsuite/g++.dg/cpp1z/fold8.C b/gcc/testsuite/g++.dg/cpp1z/fold8.C index 68827e6..983e9ee 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold8.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold8.C @@ -1,5 +1,5 @@ // PR c++/68377 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct Sink { } s; template <class T> Sink& operator<<(Sink&, const T&); diff --git a/gcc/testsuite/g++.dg/cpp1z/fold9.C b/gcc/testsuite/g++.dg/cpp1z/fold9.C index 142c8b2c..956d51d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/fold9.C +++ b/gcc/testsuite/g++.dg/cpp1z/fold9.C @@ -1,5 +1,5 @@ // PR c++/71285 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<typename... Args> void spurious(Args... args) diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement2.C b/gcc/testsuite/g++.dg/cpp1z/init-statement2.C index d1dc918..df788172 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement2.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement2.C @@ -1,4 +1,5 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } +// { dg-options "" } // Test C++17 selection statements with initializer, basic use. extern int foo (void); diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement3.C b/gcc/testsuite/g++.dg/cpp1z/init-statement3.C index b0cd148..5b067a9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement3.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement3.C @@ -1,5 +1,4 @@ -// { dg-do run } -// { dg-options -std=c++17 } +// { dg-do run { target c++17 } } // Test C++17 selection statements with initializer, side-effects. int diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement4.C b/gcc/testsuite/g++.dg/cpp1z/init-statement4.C index 32a3f2d..a049adb 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement4.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement4.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } extern int foo (void); extern void bar (int), die (void); diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement5.C b/gcc/testsuite/g++.dg/cpp1z/init-statement5.C index cf2b16a2..867955b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement5.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement5.C @@ -1,5 +1,5 @@ // Testcase from P0305R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } enum class status_code { SUCCESS }; extern int get_value (); diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement6.C b/gcc/testsuite/g++.dg/cpp1z/init-statement6.C index 6f00d9d..e1848aa 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement6.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement6.C @@ -1,5 +1,5 @@ // Testcase from P0305R1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <string> #include <map> diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement7.C b/gcc/testsuite/g++.dg/cpp1z/init-statement7.C index e4a598e..b2cf72d 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement7.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement7.C @@ -1,5 +1,4 @@ -// { dg-do run } -// { dg-options -std=c++17 } +// { dg-do run { target c++17 } } int main () diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement8.C b/gcc/testsuite/g++.dg/cpp1z/init-statement8.C index 574cc21..9b613e7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement8.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement8.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int f () diff --git a/gcc/testsuite/g++.dg/cpp1z/init-statement9.C b/gcc/testsuite/g++.dg/cpp1z/init-statement9.C index f695a73..84b24d4 100644 --- a/gcc/testsuite/g++.dg/cpp1z/init-statement9.C +++ b/gcc/testsuite/g++.dg/cpp1z/init-statement9.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void f () diff --git a/gcc/testsuite/g++.dg/cpp1z/inline-var1.C b/gcc/testsuite/g++.dg/cpp1z/inline-var1.C index 7c014b5..3011676 100644 --- a/gcc/testsuite/g++.dg/cpp1z/inline-var1.C +++ b/gcc/testsuite/g++.dg/cpp1z/inline-var1.C @@ -1,5 +1,5 @@ -// { dg-do run } -// { dg-options "-std=c++17 -Wno-deprecated" } +// { dg-do run { target c++17 } } +// { dg-options "-Wno-deprecated" } // { dg-require-weak "" } // { dg-additional-sources "inline-var1a.C" } diff --git a/gcc/testsuite/g++.dg/cpp1z/inline-var1a.C b/gcc/testsuite/g++.dg/cpp1z/inline-var1a.C index 62d3708..b07c1d2 100644 --- a/gcc/testsuite/g++.dg/cpp1z/inline-var1a.C +++ b/gcc/testsuite/g++.dg/cpp1z/inline-var1a.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-std=c++17 -Wno-deprecated -g" } +// { dg-do compile { target c++17 } } +// { dg-options "-Wno-deprecated -g" } #include "inline-var1.h" diff --git a/gcc/testsuite/g++.dg/cpp1z/inline-var4.C b/gcc/testsuite/g++.dg/cpp1z/inline-var4.C index 48563b3..e9eb190 100644 --- a/gcc/testsuite/g++.dg/cpp1z/inline-var4.C +++ b/gcc/testsuite/g++.dg/cpp1z/inline-var4.C @@ -1,5 +1,5 @@ // PR c++/82782 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <const auto& Value> struct make_char_sequence; diff --git a/gcc/testsuite/g++.dg/cpp1z/lambda-__func__.C b/gcc/testsuite/g++.dg/cpp1z/lambda-__func__.C index d5d1c1c..d1b02ef 100644 --- a/gcc/testsuite/g++.dg/cpp1z/lambda-__func__.C +++ b/gcc/testsuite/g++.dg/cpp1z/lambda-__func__.C @@ -1,5 +1,5 @@ // PR c++/84925 -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } template <typename> struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/lambda-inherit1.C b/gcc/testsuite/g++.dg/cpp1z/lambda-inherit1.C index 75ef586..f89eb07 100644 --- a/gcc/testsuite/g++.dg/cpp1z/lambda-inherit1.C +++ b/gcc/testsuite/g++.dg/cpp1z/lambda-inherit1.C @@ -1,5 +1,5 @@ // PR c++/80767 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename... Fs> struct overloader : Fs... diff --git a/gcc/testsuite/g++.dg/cpp1z/lambda-this3.C b/gcc/testsuite/g++.dg/cpp1z/lambda-this3.C index c505ce3..93f2eb3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/lambda-this3.C +++ b/gcc/testsuite/g++.dg/cpp1z/lambda-this3.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct S { int i; diff --git a/gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C b/gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C index b4dc5c4..dd18551 100644 --- a/gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C +++ b/gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "" } namespace A __attribute ((visibility ("default"))) {} diff --git a/gcc/testsuite/g++.dg/cpp1z/namespace-attribs2.C b/gcc/testsuite/g++.dg/cpp1z/namespace-attribs2.C index 2049da3..193dbf6 100644 --- a/gcc/testsuite/g++.dg/cpp1z/namespace-attribs2.C +++ b/gcc/testsuite/g++.dg/cpp1z/namespace-attribs2.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } // { dg-additional-options "-pedantic" } namespace B [[deprecated]] {} // { dg-warning "ignored|must precede" } diff --git a/gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C b/gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C index 8a6f007..c9b16df 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C +++ b/gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C @@ -1,4 +1,5 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "" } namespace A::B::C { diff --git a/gcc/testsuite/g++.dg/cpp1z/nodiscard3.C b/gcc/testsuite/g++.dg/cpp1z/nodiscard3.C index 4d4e60e..4d24ce5 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nodiscard3.C +++ b/gcc/testsuite/g++.dg/cpp1z/nodiscard3.C @@ -1,6 +1,6 @@ /* nodiscard attribute tests, adapted from gcc.dg/attr-warn-unused-result.c. */ -/* { dg-do compile } */ -/* { dg-options "-std=c++17 -O -ftrack-macro-expansion=0" } */ +/* { dg-do compile { target c++17 } } */ +/* { dg-options "-O -ftrack-macro-expansion=0" } */ #define WUR [[nodiscard]] #define WURAI [[nodiscard, gnu::always_inline]] inline diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C index 59c0255..00d9509 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C @@ -1,5 +1,5 @@ // Testcase from P0012r1 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void (*p)() throw(int); // { dg-error "dynamic exception specification" } void (**pp)() noexcept = &p; // { dg-error "" } cannot convert to pointer to noexcept function diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C index 74404ad..051a452 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class R, class... A, bool B> void f(R (*)(A...) noexcept(B)) { } diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type15.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type15.C index cc5a3ed..8543859 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type15.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type15.C @@ -1,5 +1,5 @@ // PR c++/80384 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<class> struct foo; template<bool B> diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C index 2b6a108..b7a76fd 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C @@ -1,5 +1,5 @@ // PR c++/80614 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T> void fn() {} diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C index c8c731b..734f8f9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C @@ -1,5 +1,5 @@ // PR c++/80465 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } int foo(...); int main() { diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type18.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type18.C index e01fd0a..a018c94 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type18.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type18.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } template<typename T> struct S; diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C index 467bd46..f4e9e3b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C @@ -1,9 +1,9 @@ // Test for function pointer conversion on template arguments. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <void (*P)()> struct A { }; -void f() noexcept { }; +void f() noexcept { } constexpr void (*p)() noexcept = f; A<f> a; diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C index b23c1c7..b678e05 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C @@ -1,5 +1,5 @@ // Test for overload resolution. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void f(void (*)() noexcept) = delete; void f(void (*)()) { } diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C index 4777eef..ff02a0b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C @@ -1,5 +1,5 @@ // Test for deduction. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class R, class... A> void f(R (*)(A...)); diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C index 6c1ebd1..753a0b7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C @@ -1,5 +1,5 @@ // Test for composite pointer type. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } typedef void (*P)(); typedef void (*NP)() noexcept; diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C index 8734c8d..67e0bf8 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C @@ -1,5 +1,5 @@ // Test for lambda conversion. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void f() { diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C index 7c77a8d..5327647 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C @@ -1,5 +1,5 @@ // Test for static_cast. -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } void f() { diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C index db70a68..007f14f7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C @@ -1,6 +1,5 @@ // Test for exception handling. -// { dg-options -std=c++17 } -// { dg-do run } +// { dg-do run { target c++17 } } void f() {} void g() noexcept {} diff --git a/gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C b/gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C index 45b6499..c965d9e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C +++ b/gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C @@ -1,6 +1,5 @@ // Test for PMF template args. -// { dg-options -std=c++17 } -// { dg-do compile } +// { dg-do compile { target c++17 } } struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C index def697c..960f1ee 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C @@ -1,5 +1,5 @@ // Testcase from P0127R2 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <long n> struct A { }; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C index 38d070c..ec57b54 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C @@ -1,5 +1,5 @@ // PR c++/80096 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<auto> struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto12.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto12.C index 7bff75c..cc4022c 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto12.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto12.C @@ -1,5 +1,5 @@ // PR c++/79092 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<auto V> struct val {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto13.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto13.C index 2152cef..32f109e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto13.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto13.C @@ -1,5 +1,5 @@ // PR c++/82331 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <auto> class X; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto14.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto14.C index d7ab133..0d350a3 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto14.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto14.C @@ -1,5 +1,5 @@ // PR c++/82231 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<int> struct x {}; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C index 7152768..dc6ec48 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C @@ -1,5 +1,5 @@ // Testcase from P0127R2 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <typename T> struct S; template <typename T, T n> struct S<int[n]> { diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C index 9b96c1f..b1aed43 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C @@ -1,5 +1,5 @@ // Testcase from P0127R2 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template<auto n> struct B { decltype(n) f = n; }; B<5> b1; // OK: template parameter type is int diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C index 5833c08..36b2b3f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T, T n> void f(T, int (&)[n]); template <class T, T n> void g(int (&)[n], T); diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C index 323a896..90d8ba9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A { diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C index bca6576..2637a89 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C @@ -1,5 +1,5 @@ // PR c++/78334 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <auto> auto constexpr_string([](auto) {}); -void foo() { constexpr_string<0>(0); }; +void foo() { constexpr_string<0>(0); } diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C index 146ad44..9b26d8a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C @@ -1,5 +1,5 @@ // PR c++/79549 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <auto...> struct meow; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C b/gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C index 65f5cfe..be4ee9f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C @@ -1,5 +1,5 @@ // PR c++/79556 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } template <auto> struct A; template <auto...> struct B; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype1.C b/gcc/testsuite/g++.dg/cpp1z/nontype1.C index 342a0a6..4bbab5e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype1.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype1.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct S { int m; static int s; } s; diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype2.C b/gcc/testsuite/g++.dg/cpp1z/nontype2.C index feb4b4a..393c833 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype2.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype2.C @@ -1,4 +1,4 @@ -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } #include <typeinfo> diff --git a/gcc/testsuite/g++.dg/cpp1z/nontype3.C b/gcc/testsuite/g++.dg/cpp1z/nontype3.C index 29805b5..80f1e98 100644 --- a/gcc/testsuite/g++.dg/cpp1z/nontype3.C +++ b/gcc/testsuite/g++.dg/cpp1z/nontype3.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } #ifndef __cpp_nontype_template_args #error __cpp_nontype_template_args not defined diff --git a/gcc/testsuite/g++.dg/cpp1z/pr78771.C b/gcc/testsuite/g++.dg/cpp1z/pr78771.C index 80e3a92..54ea56a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr78771.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr78771.C @@ -1,5 +1,5 @@ // PR c++/78771 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } // ICE instantiating a deleted inherited ctor diff --git a/gcc/testsuite/g++.dg/cpp1z/pr79143.C b/gcc/testsuite/g++.dg/cpp1z/pr79143.C index ef8c1f6..9d57a1a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr79143.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr79143.C @@ -1,6 +1,5 @@ // PR c++/79143 -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } struct base { base (int, int) {} diff --git a/gcc/testsuite/g++.dg/cpp1z/pr81016.C b/gcc/testsuite/g++.dg/cpp1z/pr81016.C index 4826fbfb..358b120 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr81016.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr81016.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } template <typename a, a> struct b; template <typename c> struct b<bool, c::d>; // { dg-error "template parameter" } diff --git a/gcc/testsuite/g++.dg/cpp1z/pr83020.C b/gcc/testsuite/g++.dg/cpp1z/pr83020.C index 43a7e38..0bd724b 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr83020.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr83020.C @@ -1,5 +1,5 @@ // PR c++/83020 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } struct NoDefault { int val = 1234; diff --git a/gcc/testsuite/g++.dg/cpp1z/pr83644.C b/gcc/testsuite/g++.dg/cpp1z/pr83644.C index 493d8c7..3bce916 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr83644.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr83644.C @@ -1,6 +1,5 @@ // PR c++/83644 -// { dg-do compile } -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } namespace std { template <typename> bool is_invocable_v; diff --git a/gcc/testsuite/g++.dg/cpp1z/pr83918.C b/gcc/testsuite/g++.dg/cpp1z/pr83918.C index d4fe826..cbeb6cc 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr83918.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr83918.C @@ -1,6 +1,5 @@ // PR c++/83918 -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } constexpr unsigned foo (unsigned x, unsigned y) diff --git a/gcc/testsuite/g++.dg/cpp1z/pr84325.C b/gcc/testsuite/g++.dg/cpp1z/pr84325.C index dddadc3..6ccbb2f 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr84325.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr84325.C @@ -1,6 +1,5 @@ // PR c++/84325 -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } struct seconds { int i_{0}; constexpr seconds (int) {} }; template <char... _Digits> constexpr seconds operator""_s() { diff --git a/gcc/testsuite/g++.dg/cpp1z/pr84533.C b/gcc/testsuite/g++.dg/cpp1z/pr84533.C index 0a71fe1..4aff8bd 100644 --- a/gcc/testsuite/g++.dg/cpp1z/pr84533.C +++ b/gcc/testsuite/g++.dg/cpp1z/pr84533.C @@ -1,3 +1,3 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } enum E { e, e }; // { dg-error "redefinition" } diff --git a/gcc/testsuite/g++.dg/cpp1z/range-for1.C b/gcc/testsuite/g++.dg/cpp1z/range-for1.C index fc134b8..4bca986 100644 --- a/gcc/testsuite/g++.dg/cpp1z/range-for1.C +++ b/gcc/testsuite/g++.dg/cpp1z/range-for1.C @@ -1,5 +1,5 @@ // P0184R0: Generalizing the Range-Based For Loop -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } struct A { int ar[4]; diff --git a/gcc/testsuite/g++.dg/cpp1z/regress1.C b/gcc/testsuite/g++.dg/cpp1z/regress1.C index 2bebed0..a62833df 100644 --- a/gcc/testsuite/g++.dg/cpp1z/regress1.C +++ b/gcc/testsuite/g++.dg/cpp1z/regress1.C @@ -1,5 +1,5 @@ // PR c++/67114 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } typedef unsigned uint32_t; class A { diff --git a/gcc/testsuite/g++.dg/cpp1z/regress2.C b/gcc/testsuite/g++.dg/cpp1z/regress2.C index 3950dbf..aa05204 100644 --- a/gcc/testsuite/g++.dg/cpp1z/regress2.C +++ b/gcc/testsuite/g++.dg/cpp1z/regress2.C @@ -1,5 +1,5 @@ // PR c++/67142 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } namespace detail { template <int> int split_at; diff --git a/gcc/testsuite/g++.dg/cpp1z/static1.C b/gcc/testsuite/g++.dg/cpp1z/static1.C index cb87299..2e61337 100644 --- a/gcc/testsuite/g++.dg/cpp1z/static1.C +++ b/gcc/testsuite/g++.dg/cpp1z/static1.C @@ -1,5 +1,5 @@ // PR c++/84582 -// { dg-options -std=c++17 } +// { dg-do compile { target c++17 } } class C { static inline const long b = 0; diff --git a/gcc/testsuite/g++.dg/cpp1z/static2.C b/gcc/testsuite/g++.dg/cpp1z/static2.C index b87bfec..9462e03 100644 --- a/gcc/testsuite/g++.dg/cpp1z/static2.C +++ b/gcc/testsuite/g++.dg/cpp1z/static2.C @@ -1,4 +1,4 @@ -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template <class T> struct A diff --git a/gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C b/gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C index 6f787cd..9749e14 100644 --- a/gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C +++ b/gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } template<typename T> struct is_float diff --git a/gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C b/gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C index 6ab5746..0e92196 100644 --- a/gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C +++ b/gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C @@ -1,5 +1,4 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } constexpr int operator""_foo(char c) diff --git a/gcc/testsuite/g++.dg/cpp1z/utf8-2.C b/gcc/testsuite/g++.dg/cpp1z/utf8-2.C index da2e83f..6333269 100644 --- a/gcc/testsuite/g++.dg/cpp1z/utf8-2.C +++ b/gcc/testsuite/g++.dg/cpp1z/utf8-2.C @@ -1,4 +1,4 @@ -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } #ifndef __cpp_unicode_characters #error __cpp_unicode_characters not defined diff --git a/gcc/testsuite/g++.dg/cpp1z/utf8-neg.C b/gcc/testsuite/g++.dg/cpp1z/utf8-neg.C index cb9f7b5..0a94f1a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/utf8-neg.C +++ b/gcc/testsuite/g++.dg/cpp1z/utf8-neg.C @@ -1,5 +1,4 @@ -/* { dg-do compile } */ -/* { dg-options "-std=c++17" } */ +/* { dg-do compile { target c++17 } } */ const static char c0 = u8''; // { dg-error "empty character" } const static char c1 = u8'ab'; // { dg-warning "multi-character character constant" } diff --git a/gcc/testsuite/g++.dg/cpp1z/utf8.C b/gcc/testsuite/g++.dg/cpp1z/utf8.C index ff98b58..e08fbb9 100644 --- a/gcc/testsuite/g++.dg/cpp1z/utf8.C +++ b/gcc/testsuite/g++.dg/cpp1z/utf8.C @@ -1,5 +1,4 @@ -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } #include <cassert> #include <experimental/type_traits> diff --git a/gcc/testsuite/g++.dg/cpp2a/lambda-this3.C b/gcc/testsuite/g++.dg/cpp2a/lambda-this3.C index 5e5c8b3..d1738ea 100644 --- a/gcc/testsuite/g++.dg/cpp2a/lambda-this3.C +++ b/gcc/testsuite/g++.dg/cpp2a/lambda-this3.C @@ -1,6 +1,6 @@ // P0806R2 -// { dg-do compile } -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "" } struct X { int x; diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C b/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C index 6a12d6c..fc3e6fd 100644 --- a/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C +++ b/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-O -std=c++17 -g -dA -gno-strict-dwarf" } +// { dg-do compile { target c++17 } } +// { dg-options "-O -g -dA -gno-strict-dwarf" } // { dg-require-weak "" } // { dg-final { scan-assembler-times "0x3\[^\n\r]* DW_AT_inline" 6 { xfail *-*-aix* } } } // { dg-final { scan-assembler-times "0x1\[^\n\r]* DW_AT_inline" 2 { xfail *-*-aix* } } } diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C b/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C index ed00fb5..cdb2696 100644 --- a/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C +++ b/gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-O -std=c++17 -gdwarf-5 -dA -gno-strict-dwarf" } +// { dg-do compile { target c++17 } } +// { dg-options "-O -gdwarf-5 -dA -gno-strict-dwarf" } // { dg-require-weak "" } // { dg-final { scan-assembler-not "DW_TAG_member" { xfail *-*-aix* } } } diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-1.C b/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-1.C index 5ab8ca8..85e4434 100644 --- a/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-1.C +++ b/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-1.C @@ -1,6 +1,6 @@ // PR debug/80234 -// { dg-do compile } -// { dg-options "-gdwarf-4 -std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "-gdwarf-4" } struct S { diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-2.C b/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-2.C index 145beac..0d612d8 100644 --- a/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-2.C +++ b/gcc/testsuite/g++.dg/debug/dwarf2/pr80234-2.C @@ -1,6 +1,6 @@ // PR debug/80234 -// { dg-do compile } -// { dg-options "-gdwarf-5 -std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "-gdwarf-5" } struct S { diff --git a/gcc/testsuite/g++.dg/ext/integer-pack4.C b/gcc/testsuite/g++.dg/ext/integer-pack4.C index 6e5125b..4859d95 100644 --- a/gcc/testsuite/g++.dg/ext/integer-pack4.C +++ b/gcc/testsuite/g++.dg/ext/integer-pack4.C @@ -1,4 +1,4 @@ -// { dg-additional-options -std=c++17 } +// { dg-do compile { target c++17 } } template<int ... Ns> int f() { return (Ns + ...); } template<int N> int g() { diff --git a/gcc/testsuite/g++.dg/gomp/pr84556.C b/gcc/testsuite/g++.dg/gomp/pr84556.C index 188d5a4..97a58ee 100644 --- a/gcc/testsuite/g++.dg/gomp/pr84556.C +++ b/gcc/testsuite/g++.dg/gomp/pr84556.C @@ -1,6 +1,6 @@ // PR c++/84556 -// { dg-do compile } -// { dg-options "-std=c++17 -fopenmp-simd" } +// { dg-do compile { target c++17 } } +// { dg-options "-fopenmp-simd" } void foo () diff --git a/gcc/testsuite/g++.dg/ipa/pr81248.C b/gcc/testsuite/g++.dg/ipa/pr81248.C index d55d2e7..d7796ff 100644 --- a/gcc/testsuite/g++.dg/ipa/pr81248.C +++ b/gcc/testsuite/g++.dg/ipa/pr81248.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-O2 -std=c++17 -fdump-tree-eipa_sra" } +// { dg-do compile { target c++17 } } +// { dg-options "-O2 -fdump-tree-eipa_sra" } #include <type_traits> diff --git a/gcc/testsuite/g++.dg/pr81194.C b/gcc/testsuite/g++.dg/pr81194.C index 5f94938..08f6fc0 100644 --- a/gcc/testsuite/g++.dg/pr81194.C +++ b/gcc/testsuite/g++.dg/pr81194.C @@ -1,5 +1,5 @@ -// { dg-do compile } -// { dg-options "-O2 -std=c++17 -fno-exceptions" } +// { dg-do compile { target c++17 } } +// { dg-options "-O2 -fno-exceptions" } // { dg-additional-options "-Wno-return-type" } template <class a> struct b { typedef a *c; }; diff --git a/gcc/testsuite/g++.dg/pr82836.C b/gcc/testsuite/g++.dg/pr82836.C index 5469614..82d3260 100644 --- a/gcc/testsuite/g++.dg/pr82836.C +++ b/gcc/testsuite/g++.dg/pr82836.C @@ -1,5 +1,5 @@ // PR c++/82836 -// { dg-options "-std=c++17" } +// { dg-do compile { target c++17 } } // { dg-require-effective-target int128 } // { dg-require-effective-target __float128 } // { dg-additional-options "-Wno-pedantic -Wno-return-type" } diff --git a/gcc/testsuite/g++.dg/ubsan/pr79589.C b/gcc/testsuite/g++.dg/ubsan/pr79589.C index 4b72bc8..d19ca2d 100644 --- a/gcc/testsuite/g++.dg/ubsan/pr79589.C +++ b/gcc/testsuite/g++.dg/ubsan/pr79589.C @@ -1,6 +1,6 @@ // PR sanitizer/79589 -// { dg-do compile } -// { dg-options "-fsanitize=undefined -std=c++17" } +// { dg-do compile { target c++17 } } +// { dg-options "-fsanitize=undefined" } struct A { char a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r; } a[64]; diff --git a/gcc/testsuite/lib/g++-dg.exp b/gcc/testsuite/lib/g++-dg.exp index 12af1fd..36d68e7 100644 --- a/gcc/testsuite/lib/g++-dg.exp +++ b/gcc/testsuite/lib/g++-dg.exp @@ -52,7 +52,7 @@ proc g++-dg-runtest { testcases flags default-extra-flags } { if { [llength $gpp_std_list] > 0 } { set std_list $gpp_std_list } else { - set std_list { 98 11 14 } + set std_list { 98 14 17 } } set option_list { } foreach x $std_list { |