*.C: Use target c++17 instead of explicit dg-options.
authorMarek Polacek <polacek@redhat.com>
Sat, 20 Oct 2018 17:21:19 +0000 (17:21 +0000)
committerMarek Polacek <mpolacek@gcc.gnu.org>
Sat, 20 Oct 2018 17:21:19 +0000 (17:21 +0000)
* 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.

From-SVN: r265343

369 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/concepts/alias1.C
gcc/testsuite/g++.dg/concepts/alias2.C
gcc/testsuite/g++.dg/concepts/alias3.C
gcc/testsuite/g++.dg/concepts/alias4.C
gcc/testsuite/g++.dg/concepts/auto1.C
gcc/testsuite/g++.dg/concepts/auto3.C
gcc/testsuite/g++.dg/concepts/auto4.C
gcc/testsuite/g++.dg/concepts/class-deduction1.C
gcc/testsuite/g++.dg/concepts/class-deduction2.C
gcc/testsuite/g++.dg/concepts/class.C
gcc/testsuite/g++.dg/concepts/class1.C
gcc/testsuite/g++.dg/concepts/class2.C
gcc/testsuite/g++.dg/concepts/class3.C
gcc/testsuite/g++.dg/concepts/class4.C
gcc/testsuite/g++.dg/concepts/class5.C
gcc/testsuite/g++.dg/concepts/class6.C
gcc/testsuite/g++.dg/concepts/constrained-parm.C
gcc/testsuite/g++.dg/concepts/debug1.C
gcc/testsuite/g++.dg/concepts/decl-diagnose.C
gcc/testsuite/g++.dg/concepts/deduction-constraint1.C
gcc/testsuite/g++.dg/concepts/diagnostic1.C
gcc/testsuite/g++.dg/concepts/disjunction1.C
gcc/testsuite/g++.dg/concepts/dr1430.C
gcc/testsuite/g++.dg/concepts/equiv.C
gcc/testsuite/g++.dg/concepts/equiv2.C
gcc/testsuite/g++.dg/concepts/explicit-inst1.C
gcc/testsuite/g++.dg/concepts/explicit-inst2.C
gcc/testsuite/g++.dg/concepts/explicit-inst3.C
gcc/testsuite/g++.dg/concepts/explicit-inst4.C
gcc/testsuite/g++.dg/concepts/explicit-spec1.C
gcc/testsuite/g++.dg/concepts/explicit-spec2.C
gcc/testsuite/g++.dg/concepts/explicit-spec3.C
gcc/testsuite/g++.dg/concepts/explicit-spec4.C
gcc/testsuite/g++.dg/concepts/explicit-spec5.C
gcc/testsuite/g++.dg/concepts/explicit-spec6.C
gcc/testsuite/g++.dg/concepts/expression.C
gcc/testsuite/g++.dg/concepts/expression2.C
gcc/testsuite/g++.dg/concepts/expression3.C
gcc/testsuite/g++.dg/concepts/feature-macro.C
gcc/testsuite/g++.dg/concepts/fn-concept1.C
gcc/testsuite/g++.dg/concepts/fn-concept2.C
gcc/testsuite/g++.dg/concepts/fn1.C
gcc/testsuite/g++.dg/concepts/fn10.C
gcc/testsuite/g++.dg/concepts/fn2.C
gcc/testsuite/g++.dg/concepts/fn3.C
gcc/testsuite/g++.dg/concepts/fn4.C
gcc/testsuite/g++.dg/concepts/fn5.C
gcc/testsuite/g++.dg/concepts/fn6.C
gcc/testsuite/g++.dg/concepts/fn7.C
gcc/testsuite/g++.dg/concepts/fn8.C
gcc/testsuite/g++.dg/concepts/fn9.C
gcc/testsuite/g++.dg/concepts/friend1.C
gcc/testsuite/g++.dg/concepts/friend2.C
gcc/testsuite/g++.dg/concepts/generic-fn-err.C
gcc/testsuite/g++.dg/concepts/generic-fn.C
gcc/testsuite/g++.dg/concepts/iconv1.C
gcc/testsuite/g++.dg/concepts/inherit-ctor1.C
gcc/testsuite/g++.dg/concepts/inherit-ctor2.C
gcc/testsuite/g++.dg/concepts/inherit-ctor3.C
gcc/testsuite/g++.dg/concepts/inherit-ctor4.C
gcc/testsuite/g++.dg/concepts/intro1.C
gcc/testsuite/g++.dg/concepts/intro2.C
gcc/testsuite/g++.dg/concepts/intro3.C
gcc/testsuite/g++.dg/concepts/intro4.C
gcc/testsuite/g++.dg/concepts/intro5.C
gcc/testsuite/g++.dg/concepts/intro6.C
gcc/testsuite/g++.dg/concepts/intro7.C
gcc/testsuite/g++.dg/concepts/locations1.C
gcc/testsuite/g++.dg/concepts/member-concept.C
gcc/testsuite/g++.dg/concepts/memfun-err.C
gcc/testsuite/g++.dg/concepts/memfun.C
gcc/testsuite/g++.dg/concepts/memfun2.C
gcc/testsuite/g++.dg/concepts/memtmpl1.C
gcc/testsuite/g++.dg/concepts/partial-concept-id1.C
gcc/testsuite/g++.dg/concepts/partial-concept-id2.C
gcc/testsuite/g++.dg/concepts/partial-spec.C
gcc/testsuite/g++.dg/concepts/partial-spec2.C
gcc/testsuite/g++.dg/concepts/partial-spec3.C
gcc/testsuite/g++.dg/concepts/partial-spec4.C
gcc/testsuite/g++.dg/concepts/partial-spec5.C
gcc/testsuite/g++.dg/concepts/partial-spec6.C
gcc/testsuite/g++.dg/concepts/placeholder1.C
gcc/testsuite/g++.dg/concepts/placeholder2.C
gcc/testsuite/g++.dg/concepts/placeholder3.C
gcc/testsuite/g++.dg/concepts/placeholder4.C
gcc/testsuite/g++.dg/concepts/placeholder5.C
gcc/testsuite/g++.dg/concepts/placeholder6.C
gcc/testsuite/g++.dg/concepts/pr65552.C
gcc/testsuite/g++.dg/concepts/pr65575.C
gcc/testsuite/g++.dg/concepts/pr65634.C
gcc/testsuite/g++.dg/concepts/pr65636.C
gcc/testsuite/g++.dg/concepts/pr65681.C
gcc/testsuite/g++.dg/concepts/pr65848.C
gcc/testsuite/g++.dg/concepts/pr65854.C
gcc/testsuite/g++.dg/concepts/pr66091.C
gcc/testsuite/g++.dg/concepts/pr67249.C
gcc/testsuite/g++.dg/concepts/pr67595.C
gcc/testsuite/g++.dg/concepts/pr68434.C
gcc/testsuite/g++.dg/concepts/pr68683.C
gcc/testsuite/g++.dg/concepts/pr71368.C
gcc/testsuite/g++.dg/concepts/pr71385.C
gcc/testsuite/g++.dg/concepts/req-neg1.C
gcc/testsuite/g++.dg/concepts/req1.C
gcc/testsuite/g++.dg/concepts/req10.C
gcc/testsuite/g++.dg/concepts/req11.C
gcc/testsuite/g++.dg/concepts/req12.C
gcc/testsuite/g++.dg/concepts/req13.C
gcc/testsuite/g++.dg/concepts/req14.C
gcc/testsuite/g++.dg/concepts/req15.C
gcc/testsuite/g++.dg/concepts/req16.C
gcc/testsuite/g++.dg/concepts/req17.C
gcc/testsuite/g++.dg/concepts/req18.C
gcc/testsuite/g++.dg/concepts/req19.C
gcc/testsuite/g++.dg/concepts/req2.C
gcc/testsuite/g++.dg/concepts/req20.C
gcc/testsuite/g++.dg/concepts/req3.C
gcc/testsuite/g++.dg/concepts/req4.C
gcc/testsuite/g++.dg/concepts/req5.C
gcc/testsuite/g++.dg/concepts/req6.C
gcc/testsuite/g++.dg/concepts/req7.C
gcc/testsuite/g++.dg/concepts/req8.C
gcc/testsuite/g++.dg/concepts/req9.C
gcc/testsuite/g++.dg/concepts/template-parm1.C
gcc/testsuite/g++.dg/concepts/template-parm10.C
gcc/testsuite/g++.dg/concepts/template-parm11.C
gcc/testsuite/g++.dg/concepts/template-parm12.C
gcc/testsuite/g++.dg/concepts/template-parm2.C
gcc/testsuite/g++.dg/concepts/template-parm3.C
gcc/testsuite/g++.dg/concepts/template-parm4.C
gcc/testsuite/g++.dg/concepts/template-parm5.C
gcc/testsuite/g++.dg/concepts/template-parm6.C
gcc/testsuite/g++.dg/concepts/template-parm7.C
gcc/testsuite/g++.dg/concepts/template-parm8.C
gcc/testsuite/g++.dg/concepts/template-parm9.C
gcc/testsuite/g++.dg/concepts/template-template-parm1.C
gcc/testsuite/g++.dg/concepts/traits1.C
gcc/testsuite/g++.dg/concepts/traits2.C
gcc/testsuite/g++.dg/concepts/var-concept1.C
gcc/testsuite/g++.dg/concepts/var-concept2.C
gcc/testsuite/g++.dg/concepts/var-concept3.C
gcc/testsuite/g++.dg/concepts/var-concept4.C
gcc/testsuite/g++.dg/concepts/var-concept5.C
gcc/testsuite/g++.dg/concepts/var-concept6.C
gcc/testsuite/g++.dg/concepts/var-concept7.C
gcc/testsuite/g++.dg/concepts/var-templ1.C
gcc/testsuite/g++.dg/concepts/var-templ2.C
gcc/testsuite/g++.dg/concepts/var-templ3.C
gcc/testsuite/g++.dg/concepts/variadic1.C
gcc/testsuite/g++.dg/concepts/variadic2.C
gcc/testsuite/g++.dg/concepts/variadic4.C
gcc/testsuite/g++.dg/cpp1z/Wpessimizing-move1.C
gcc/testsuite/g++.dg/cpp1z/aggr-base1.C
gcc/testsuite/g++.dg/cpp1z/aggr-base2.C
gcc/testsuite/g++.dg/cpp1z/aggr-base3.C
gcc/testsuite/g++.dg/cpp1z/aggr-base4.C
gcc/testsuite/g++.dg/cpp1z/aggr-base5.C
gcc/testsuite/g++.dg/cpp1z/aggr-base6.C
gcc/testsuite/g++.dg/cpp1z/aligned-new1.C
gcc/testsuite/g++.dg/cpp1z/aligned-new2.C
gcc/testsuite/g++.dg/cpp1z/aligned-new3.C
gcc/testsuite/g++.dg/cpp1z/aligned-new7.C
gcc/testsuite/g++.dg/cpp1z/aligned-new8.C
gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C
gcc/testsuite/g++.dg/cpp1z/bool-increment1.C
gcc/testsuite/g++.dg/cpp1z/byte1.C
gcc/testsuite/g++.dg/cpp1z/byte2.C
gcc/testsuite/g++.dg/cpp1z/class-deduction1.C
gcc/testsuite/g++.dg/cpp1z/class-deduction10.C
gcc/testsuite/g++.dg/cpp1z/class-deduction11.C
gcc/testsuite/g++.dg/cpp1z/class-deduction12.C
gcc/testsuite/g++.dg/cpp1z/class-deduction13.C
gcc/testsuite/g++.dg/cpp1z/class-deduction14.C
gcc/testsuite/g++.dg/cpp1z/class-deduction15.C
gcc/testsuite/g++.dg/cpp1z/class-deduction16.C
gcc/testsuite/g++.dg/cpp1z/class-deduction17.C
gcc/testsuite/g++.dg/cpp1z/class-deduction18.C
gcc/testsuite/g++.dg/cpp1z/class-deduction19.C
gcc/testsuite/g++.dg/cpp1z/class-deduction2.C
gcc/testsuite/g++.dg/cpp1z/class-deduction20.C
gcc/testsuite/g++.dg/cpp1z/class-deduction21.C
gcc/testsuite/g++.dg/cpp1z/class-deduction22.C
gcc/testsuite/g++.dg/cpp1z/class-deduction23.C
gcc/testsuite/g++.dg/cpp1z/class-deduction24.C
gcc/testsuite/g++.dg/cpp1z/class-deduction25.C
gcc/testsuite/g++.dg/cpp1z/class-deduction26.C
gcc/testsuite/g++.dg/cpp1z/class-deduction27.C
gcc/testsuite/g++.dg/cpp1z/class-deduction28.C
gcc/testsuite/g++.dg/cpp1z/class-deduction29.C
gcc/testsuite/g++.dg/cpp1z/class-deduction3.C
gcc/testsuite/g++.dg/cpp1z/class-deduction30.C
gcc/testsuite/g++.dg/cpp1z/class-deduction31.C
gcc/testsuite/g++.dg/cpp1z/class-deduction32.C
gcc/testsuite/g++.dg/cpp1z/class-deduction33.C
gcc/testsuite/g++.dg/cpp1z/class-deduction34.C
gcc/testsuite/g++.dg/cpp1z/class-deduction35.C
gcc/testsuite/g++.dg/cpp1z/class-deduction36.C
gcc/testsuite/g++.dg/cpp1z/class-deduction38.C
gcc/testsuite/g++.dg/cpp1z/class-deduction39.C
gcc/testsuite/g++.dg/cpp1z/class-deduction4.C
gcc/testsuite/g++.dg/cpp1z/class-deduction40.C
gcc/testsuite/g++.dg/cpp1z/class-deduction41.C
gcc/testsuite/g++.dg/cpp1z/class-deduction42.C
gcc/testsuite/g++.dg/cpp1z/class-deduction43.C
gcc/testsuite/g++.dg/cpp1z/class-deduction44.C
gcc/testsuite/g++.dg/cpp1z/class-deduction45.C
gcc/testsuite/g++.dg/cpp1z/class-deduction46.C
gcc/testsuite/g++.dg/cpp1z/class-deduction48.C
gcc/testsuite/g++.dg/cpp1z/class-deduction49.C
gcc/testsuite/g++.dg/cpp1z/class-deduction5.C
gcc/testsuite/g++.dg/cpp1z/class-deduction50.C
gcc/testsuite/g++.dg/cpp1z/class-deduction51.C
gcc/testsuite/g++.dg/cpp1z/class-deduction52.C
gcc/testsuite/g++.dg/cpp1z/class-deduction54.C
gcc/testsuite/g++.dg/cpp1z/class-deduction55.C
gcc/testsuite/g++.dg/cpp1z/class-deduction56.C
gcc/testsuite/g++.dg/cpp1z/class-deduction57.C
gcc/testsuite/g++.dg/cpp1z/class-deduction58.C
gcc/testsuite/g++.dg/cpp1z/class-deduction6.C
gcc/testsuite/g++.dg/cpp1z/class-deduction7.C
gcc/testsuite/g++.dg/cpp1z/class-deduction8.C
gcc/testsuite/g++.dg/cpp1z/class-deduction9.C
gcc/testsuite/g++.dg/cpp1z/constexpr-83692.C
gcc/testsuite/g++.dg/cpp1z/constexpr-84684.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if13.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if15.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if16.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if17.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if18.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if19.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if20.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if21.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if22.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if23.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if24.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda17.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda18.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda19.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda20.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda21.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C
gcc/testsuite/g++.dg/cpp1z/cplusplus.C
gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C
gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C
gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C
gcc/testsuite/g++.dg/cpp1z/decomp10.C
gcc/testsuite/g++.dg/cpp1z/decomp11.C
gcc/testsuite/g++.dg/cpp1z/decomp12.C
gcc/testsuite/g++.dg/cpp1z/decomp15.C
gcc/testsuite/g++.dg/cpp1z/decomp16.C
gcc/testsuite/g++.dg/cpp1z/decomp17.C
gcc/testsuite/g++.dg/cpp1z/decomp20.C
gcc/testsuite/g++.dg/cpp1z/decomp21.C
gcc/testsuite/g++.dg/cpp1z/decomp27.C
gcc/testsuite/g++.dg/cpp1z/decomp29.C
gcc/testsuite/g++.dg/cpp1z/decomp30.C
gcc/testsuite/g++.dg/cpp1z/decomp37.C
gcc/testsuite/g++.dg/cpp1z/decomp38.C
gcc/testsuite/g++.dg/cpp1z/decomp9.C
gcc/testsuite/g++.dg/cpp1z/elide1.C
gcc/testsuite/g++.dg/cpp1z/eval-order2.C
gcc/testsuite/g++.dg/cpp1z/eval-order3.C
gcc/testsuite/g++.dg/cpp1z/fallthrough1.C
gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
gcc/testsuite/g++.dg/cpp1z/fold-ice1.C
gcc/testsuite/g++.dg/cpp1z/fold-lambda.C
gcc/testsuite/g++.dg/cpp1z/fold-lambda2.C
gcc/testsuite/g++.dg/cpp1z/fold-mangle.C
gcc/testsuite/g++.dg/cpp1z/fold1.C
gcc/testsuite/g++.dg/cpp1z/fold2.C
gcc/testsuite/g++.dg/cpp1z/fold3.C
gcc/testsuite/g++.dg/cpp1z/fold4.C
gcc/testsuite/g++.dg/cpp1z/fold6.C
gcc/testsuite/g++.dg/cpp1z/fold7.C
gcc/testsuite/g++.dg/cpp1z/fold8.C
gcc/testsuite/g++.dg/cpp1z/fold9.C
gcc/testsuite/g++.dg/cpp1z/init-statement2.C
gcc/testsuite/g++.dg/cpp1z/init-statement3.C
gcc/testsuite/g++.dg/cpp1z/init-statement4.C
gcc/testsuite/g++.dg/cpp1z/init-statement5.C
gcc/testsuite/g++.dg/cpp1z/init-statement6.C
gcc/testsuite/g++.dg/cpp1z/init-statement7.C
gcc/testsuite/g++.dg/cpp1z/init-statement8.C
gcc/testsuite/g++.dg/cpp1z/init-statement9.C
gcc/testsuite/g++.dg/cpp1z/inline-var1.C
gcc/testsuite/g++.dg/cpp1z/inline-var1a.C
gcc/testsuite/g++.dg/cpp1z/inline-var4.C
gcc/testsuite/g++.dg/cpp1z/lambda-__func__.C
gcc/testsuite/g++.dg/cpp1z/lambda-inherit1.C
gcc/testsuite/g++.dg/cpp1z/lambda-this3.C
gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C
gcc/testsuite/g++.dg/cpp1z/namespace-attribs2.C
gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C
gcc/testsuite/g++.dg/cpp1z/nodiscard3.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type15.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type18.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto12.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto13.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto14.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C
gcc/testsuite/g++.dg/cpp1z/nontype1.C
gcc/testsuite/g++.dg/cpp1z/nontype2.C
gcc/testsuite/g++.dg/cpp1z/nontype3.C
gcc/testsuite/g++.dg/cpp1z/pr78771.C
gcc/testsuite/g++.dg/cpp1z/pr79143.C
gcc/testsuite/g++.dg/cpp1z/pr81016.C
gcc/testsuite/g++.dg/cpp1z/pr83020.C
gcc/testsuite/g++.dg/cpp1z/pr83644.C
gcc/testsuite/g++.dg/cpp1z/pr83918.C
gcc/testsuite/g++.dg/cpp1z/pr84325.C
gcc/testsuite/g++.dg/cpp1z/pr84533.C
gcc/testsuite/g++.dg/cpp1z/range-for1.C
gcc/testsuite/g++.dg/cpp1z/regress1.C
gcc/testsuite/g++.dg/cpp1z/regress2.C
gcc/testsuite/g++.dg/cpp1z/static1.C
gcc/testsuite/g++.dg/cpp1z/static2.C
gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C
gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C
gcc/testsuite/g++.dg/cpp1z/utf8-2.C
gcc/testsuite/g++.dg/cpp1z/utf8-neg.C
gcc/testsuite/g++.dg/cpp1z/utf8.C
gcc/testsuite/g++.dg/cpp2a/lambda-this3.C
gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C
gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C
gcc/testsuite/g++.dg/debug/dwarf2/pr80234-1.C
gcc/testsuite/g++.dg/debug/dwarf2/pr80234-2.C
gcc/testsuite/g++.dg/ext/integer-pack4.C
gcc/testsuite/g++.dg/gomp/pr84556.C
gcc/testsuite/g++.dg/ipa/pr81248.C
gcc/testsuite/g++.dg/pr81194.C
gcc/testsuite/g++.dg/pr82836.C
gcc/testsuite/g++.dg/ubsan/pr79589.C
gcc/testsuite/lib/g++-dg.exp

index 86fa75673efcc603281114ed5e1decd1cc6807fd..eff5d08faed8141d2ca2a1e2f74d142182d6d523 100644 (file)
@@ -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
index 1b643cdd1c9e1fc0ac2d8cd7ca9c0b4296c98261..279a478757680e3cb44afdce18a10137b68be9b2 100644 (file)
@@ -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); }
index 2de2aa4da940a5665ea96aa9cf7c41a331f9f9b2..06ffb1af5297db49420d2800e2966412758a9a99 100644 (file)
@@ -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); }
index 6e1c39ce1746a3ff55deae20e5fa562d16a7561b..2901c04188165cafe6f665b70e9c3223e978407d 100644 (file)
@@ -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); }
index e7d93d5875f6b43619f3466f5c9e013afd9ad6ed..2c9f5defeb0115b781d7c90c2640aef0c091c0d4 100644 (file)
@@ -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); }
index 0c6fa465fa67a13aa6b05bb3f87caaa7cc5b6d61..2682940cedd36185c9dcdcd91a715c37ece4f147 100644 (file)
@@ -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 { };
 
index 7b80fe314b8abaa1a13c3dbc200d40b29f6ca3da..abfb20191251a8e93aee61d86b728aa8aac9c147 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 template <class...> class tuple {};
 
index e80341ec0387b7ba8f4c3e6025d677a3b3a07f4e..4eb2ae8f7d53d7af1163b5505536cfc56bd3b6f2 100644 (file)
@@ -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 {};
 
index 476830d9252828b6113f922084e71d82d97fb000..936dd6826f0e4ede0bf1f25cc86334e9b6781991 100644 (file)
@@ -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);
index 286e59a503911e749ca979e3db32a1399e525b8f..e0718d1d0cf8228c7928ab43c8baf7bb7133ae52 100644 (file)
@@ -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);
index 1c5242f8089897e8c2c73ff6ee6bc5bd891fb24c..dc5523e240733a019b3521cc467e1325178cb4ef 100644 (file)
@@ -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); }
index 94a5d23a873aa9284272781b9529d2942368306a..a738e6e82cde5987635e23d3e2764e1b2fecc1bc 100644 (file)
@@ -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); }
index 63891282085983feec15f03404038c6c22966601..ec8718114a7368c19a65aa13c9109f0c41fe905a 100644 (file)
@@ -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); }
index b2757567d4f6bb3d42a711aae8ab675476209fc9..256370df46d61b1957d24df9c0e665019ec5d067 100644 (file)
@@ -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); }
index 86eecbc457294e6ab2829179a92d02b6cada6705..b583e55411df8359f9b54de5856793b02c277485 100644 (file)
@@ -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); }
index 76398609709c9e7da17358b64ce265119b96b4cf..7bf620edc5cafef3c436d72d9ddd5cca7af84f59 100644 (file)
@@ -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; }
index 29dcb8ff97e6f07ec39dfc8407b4e82185e42693..bdd60918c8e096ea5477dcd0c583c757140ec8c4 100644 (file)
@@ -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; }
index feaf3bb64297dba9e1d0160aab6540d3ed59aaaa..c2b6614aeea3955997afef377ed2e8f9e91c9bde 100644 (file)
@@ -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); }
index eeb63654243c018780a008ff99a6fac6d5ba1869..87f2ac90b20177a85399d9f2329d34d80efdfd3f 100644 (file)
@@ -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; }
 
index caf6b2e5e3fd09519e3153dccbc63cfb54cd51c5..7ac7872efb585294572aa8b387dda7fe5a27fba2 100644 (file)
@@ -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" }
 
index 5eec87b3c0bb501587052bca28dba2120aec1de0..bebbda1a1faea11a3c878a8bc4da9fefec8b35f6 100644 (file)
@@ -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 =
index c977eaa8fcda93ae0881ce6754750528f75391e2..9bb150605731aadc107482269ac664c7acbfdf01 100644 (file)
@@ -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);
index 9bd50974f57801df385b010072d92af9b104d55f..930adf405c9ec0a26a47d5016ad9438fee7d2cd8 100644 (file)
@@ -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;
index 9fd4f4301fcd86d44dd1380c25bc0724a91a22d2..f865d5ec2c70f4fccc194c2f817684fc431be338 100644 (file)
@@ -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>
 
index d666d9a7567006c5bcd729d5092434da98b0fc3e..faec3543461f7d8ccd8f469f4607969f914f36dc 100644 (file)
@@ -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.
 
index 694d87a2c5632d17e7aac9a6956ba7feabef6f40..2094ca9f388b996f79b04ae2887b59c424c47e8c 100644 (file)
@@ -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>
index 58d8dec0db6ad532153e19451481a99cb1aa1693..99bd72e069c88f58fd32d66a485b6c67c1564eb3 100644 (file)
@@ -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); }
index f47b7585e62d56d3242abb0f892e6fca5b9243e6..ea313876f017945c7f86efe283418a18294c2a7f 100644 (file)
@@ -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); }
index 00dee2fb2b9b87649bc3ee56f3242a89d1a2c7b0..18d3c496f38919a3e06e6542b431a41010c8ef13 100644 (file)
@@ -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); }
index c0f585c957a8403302a7a01c3969174edee7fb9a..20f437705391138beb9200d3408bc425fad60bf4 100644 (file)
@@ -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); }
index 38730680e14d9360718fe0c33c786c718045522f..bff06f21b6fe6433e17c84493fa154e855c0b762 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index 17d48e7c220d1205b66d4bfc7922d835452ad187..ca8b8a037bcbc9f3d289d13bf406c6f4921997d1 100644 (file)
@@ -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); }
index 1edc83e95a88cef29889e35721e77bbf9c903faa..fd48da1c2805aec26932bf319099bdca3f675e0d 100644 (file)
@@ -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); }
index 963c030d464302cf5f295d2f0dfa9a7d9b877e7b..75a2dec6f49b3e5dffd90d77486bfde3b30be7c0 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index e0d89bce2d6ad86da38aa8e730f7138c8b5bfca4..d83eec11bc288592c1b2c2626735e5d846129ff2 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index 0af1df46d60ac1f7289c5938962046d062da63b7..b5487072e22e6300a530ae93b2f68c9e56648a09 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 template<typename T>
 struct A {
index 6430f89e309c4c386a0697af6fa538206df99ec8..33dad0a47a6892aa77c9e88981b0433df8733cc6 100644 (file)
@@ -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>
index 3583452d47efaaac781bc0e2abee69b4e669fb7a..c5447df1d87a439e0a78f957d70f5fe51d421eb7 100644 (file)
@@ -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()
index 4148aa6511e3f125f5ba3ce031c12e75c27c2066..26b829d338dca05e5d433c1324fd5380b2d9c7d2 100644 (file)
@@ -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()
index ad2bfb080a0643bd2dd30e8d20711fb11043cd7c..d3d9b5420a85676241316a2eba09da1057cead41 100644 (file)
@@ -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
index b858c1ac93f38a1868c52a8c25f07539bfed5d79..a4ade7c628d1da5e1a88906efbf92e0bf12cbf1c 100644 (file)
@@ -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" }
index fe88dce1bd4863b27866a2841d1d1ffecd653f25..0d70728abe87412e048dd61a1ce525a434c4d2b3 100644 (file)
@@ -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" }
index 800a0d36f0b948b3a30a25cf9c6420f7f8791ef9..17f14b9a46bfec4fb104af7b082c0d39cfde759b 100644 (file)
@@ -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); }
index 71bd82c5f6044c3c63457e556d72450cfb30bafb..6993f34a89fc11b422c3943e3060678d36ee17ed 100644 (file)
@@ -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.
index 67e35acc362639d7adc4dc785275477607af9cf9..250e0a8713aee9a48ac7cfd30596f92fa0d454a7 100644 (file)
@@ -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); }
index 6695f2f98a6d5d5ff21a0dab3aebe9898da86de9..bc0e126c96c88ae6e6caf1bf28daae9dc5424c27 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index ecc3d7b1beebee8a12a418c93a9c866045496ea5..830a1747865ecff5413f33fed2bf6fb817960e9c 100644 (file)
@@ -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); }
index d4a2e003b9c089bf8e604adfdf95da0bbf782136..018b12f86e111371e3d8b22d1ac5aa3145d4bbae 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 // Check shorthand notation.
 
index 12936076449556add0ad827aff452a9abb0b3f4b..97155f8eb8651c87c9c197e52f67eb50374d7105 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 // Redefinition errors.
 
index 1df21fe9024d55de95deeaac506bffa9acf9f07c..0052f1aee73943060dd5914c92716d3fb9e85dbb 100644 (file)
@@ -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?
 
index b91f1ae95116a985c0677b5c323a4c087fcf4c33..a3daf4e1bade0d31b5a2ad60534defba9ffae8dc 100644 (file)
@@ -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); }
index 1efde5f744a7ab529ec668d98754b305dceed2c9..84ed77ce1c1de47336389bfda0d4fbe88669a3a4 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index c437c79d01fbb0d75ed5c5e8805f0779e2c6ffed..9050b557b3bc9a02d951cde7afc3a161823bf326 100644 (file)
@@ -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; }; }
index 5f14905a738624bcad9bf99686755e62f32e0e87..8ef600222e5cc0dd2a71eaabf5921de2e757d701 100644 (file)
@@ -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; }; }
index c34f832816ef809747fb1222b263c4f1950eae87..5a9556531e75067a864949ca4b08fb6085eabf74 100644 (file)
@@ -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); }
index 7a48e7640d00ba49f77f6f56e8ec6a09c521dc5f..3b10327a493e03c4f23dbfa04b76888493c53022 100644 (file)
@@ -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>
index 38a0b17b1f82d76e7ff9988163bad1973a1c57e2..e99254f3c27af5e5e2ea2107bd8843e20424346e 100644 (file)
@@ -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)
 {
index 952c8f61ef4941992ec28e06ddc07c5cb0dd0ae7..4b3f56193317b3d3988a5cd3fa0545f8a309cffc 100644 (file)
@@ -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); }
index b36b993098ab198cd3cccb0feb8516bf10317bd9..cb81d13e6d909a7a7a5dba2980ee6f974ae711d4 100644 (file)
@@ -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); }
index c7ad84aa6e7b5963afb0baf691a47c4588354cd7..6f046323346a3dcfe6cf232db619b7a8220dddae 100644 (file)
@@ -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); }
index 26940ba44be8278a4bb547c7d83de3476b6097b6..43df6e671862369dc4cd2d30b066c0fc653d388a 100644 (file)
@@ -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); }
index ac8a708b107924eaa4092684ee2bd955c7e13de7..84fa6dbbed4ec35e035a0f127b24b8cdff43bb75 100644 (file)
@@ -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);
index 928cc2e54878fdb67a337f4373c96db71201ddf8..9c7c1733c6df1b3958d83ae6da0f00971253514d 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index 78d091d3a883c0181ecad5cb256f2e366c55b3d5..5e93f31327058bf2eb1cd94c9a50a7371f39b3af 100644 (file)
@@ -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;
index 2a3e2ba17e424aa32187f373096dc7d8984645a1..a7e513535aaffc1721c1b674cab31e790a07617b 100644 (file)
@@ -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;
index c5fac8000c35d3382560833e2fc053b79850902a..e7cd7a48066417b7841071139d2d2479aa9f9f9e 100644 (file)
@@ -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()
index 6624c8888a9ae145ac8afeded827f0fde1474fe8..57b325a0e38fb4e3b15873402879cc61ccde7169 100644 (file)
@@ -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>
index 9cb4a76740b5918f497b2876a2038b767224fc44..d5bdc7e2789e09c2f446aa50fb50dd2f8ebaf440 100644 (file)
@@ -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>; };
index 6e7529b0ee1a9d22047bb5bef9d047643216393e..33c3b6227c739f3ae41abadd3ddedf4d9148b987 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-additional-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-additional-options "-fconcepts" }
 
 struct S
 {
index 4eae9f5b30134aaf61e77445e8b31443c2a82d77..ef577a19d0770dd1327e0a9e73383902680c1937 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 struct Base {
   template<typename T>
index a42554ad31a0602f69d8703074739cdc6538edb0..69ce6b845d1acea6b7819e0bcbe2caeeff67be7a 100644 (file)
@@ -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>
index d387234312a9aedd5e93801d93defe252d3b993d..818c7e61c8a862343b559cf5df18d2bc5374b3c0 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run}
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do run { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <cassert>
 
index a5965fc869cde77b76bf76f8b5be7428b6a48cec..78a2cf7badaefb63e643c19067e80a84868d1a63 100644 (file)
@@ -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 {};
index fe0f1d5df690bf87fa724ebcff693ba9bca62307..dc00a07a22b9ae93645268885f44e4a714c04c92 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 template <class T>
 struct A {
index 90a8ec72b2180110a467360b157975b928d169a1..5f0f3468ea120fa271c55090f90fe1ccd752c85c 100644 (file)
@@ -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; }
index 4c1373a0edad437cca799f1cb4a82c2967ac7716..e51894bb1c02f71de16046d8bbb6cdf005a52153 100644 (file)
@@ -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.
index c3836d445ccca438fb08030dacc863e8a0e0ee83..0ff8ec2fa1a4d15fa4b6a5a929a1d6ba6f9c63d6 100644 (file)
@@ -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.
index 26d0ff42f557b1d7279d163aa89208cf8be7b25c..2449c37fc9930183aa960d97178d96adc49d36c0 100644 (file)
@@ -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;
index 2ac5b9818e5fc4db7297aacae6c24154f12b2cb6..d4071814909ea49ee0dd57b9f29e3af8df03fe15 100644 (file)
@@ -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*> { };
index 5669bd4ec857aa678eb3d42b794133a01aded8ee..70461b4370f6f16da3c525e9db8f7d43c8473d74 100644 (file)
@@ -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);
 
index 18ef242c27144169538aa8d820a8f07f982f160a..a5b853cfb3f3325ba39273277a95b130892602bd 100644 (file)
@@ -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;
index af4411baae582792492f674555864faa502fe358..1d80ee36e5c38945455da269a9fda8763b83e7a8 100644 (file)
@@ -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; };
index bf7f959e2279b18b487bf212fe82a0db791df145..edd00033603dadb6ec9a9c54baf6638fbe4cb88c 100644 (file)
@@ -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
index c8981b617de52ef842666291fef55606a9e0be36..3d6fc813a6acc860075939784e96e440924bcf81 100644 (file)
@@ -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...
index 44dba8b98a2cd20d553313eb449787970b11e877..93f0c0d161fa3eeb06ef3ceea497a7622205f5e3 100644 (file)
@@ -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);
index b35238c1ce23f1e0615bbc9d05605dbef5e8a209..d1308137c0481077ba8c03a21fc68d1bcc8e715c 100644 (file)
@@ -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);
index c0b67b9e78cb1ae9a5ac4d41bcd5603ac3f6e70f..245e27a75ed3d6d9ca809249ec57f64666164aa7 100644 (file)
@@ -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);
index ab56c637d3edb4d51a91ae2c85d8db6f5e3f1cde..51282d93a5d302ec1ab3a10226267a549258f694 100644 (file)
@@ -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;
index 57375d748025fcc121a0109a6d865caf7366da05..318fdccfbdc9439e854f086d861f9dbe7b71d884 100644 (file)
@@ -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() {
index 6745b843d31d45bdf7004b304e0ca752b83afd99..efaf958121bfeee2be6fad7146d698183406d6b7 100644 (file)
@@ -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;
index db36a6be29f6c5c203c992a010a16cd4bc335449..e383653b6a3b3e65afbb643ced05c5363651bcb0 100644 (file)
@@ -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() {
index 01c72a7fac4e898ffd7c295463298fb4b6e21931..2aec0e545d2e6aac68088048e49b76767515972b 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 using TD = int;
 
index 1df9a5949d88f2ee51ff0a674278b8376626ae1d..0d8a69d0bd1acb8f64244768af19abc49ad012c6 100644 (file)
@@ -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()
index 5af6e7dc622fc7211e8f32c7561152218390cd2e..067801844dccdca91cf9933fc779473592d343b0 100644 (file)
@@ -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.
 
index 395fac4f5016d7c8fb729388ef373b4a6b43925a..28eac885a4628e9c63dabbf6c43c2e5b8d044f52 100644 (file)
@@ -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.
 
index e5b3c287c84c0363760cb53f29f2ccb4aa6f9491..a71cd7b8bee77ad29901008e61bfaa5f52dabe1a 100644 (file)
@@ -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()
index 87e9bb582481138ce3b41545bcb4418007956e63..a0eca9ba8c0e72955ff0a50884994d35253289b9 100644 (file)
@@ -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 {};
index 76d1fe62132d9b2644c07ad24bdbc59675bdf346..7b5d712512eeb5d249b9f5a2129de3444f8c6fd5 100644 (file)
@@ -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>;
index 19ce383246a00a26ecae888ff48c837636385491..fc458989c3430b762ea6f585b7d3d3ba5fb79468 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 template <class>
 concept bool C1 () {
index 31a98f3cf88f8fc13f30fe7c53f3713807d60af8..ff7709e40aaac911468daddd308450ede5626331 100644 (file)
@@ -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 {
index f0e0a9563667a57d70f3c3bcd62a3bfecfec3baa..5cd2b54cd7cd5ce7bf3f1fa7d4cec6877fb69155 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 struct inner;
 
index bd5d08cb6f0bec28e1e097c5088c16b4dcb548ab..42d21f57161578a8e33e51a7f2edbd4eb1627355 100644 (file)
@@ -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(){
index 97b45cd15f071d4685f7aafb09001244ea0d4434..637f9932870720ec06c0f8679512ba0ec5655096 100644 (file)
@@ -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
index 688cb19ad433bf1fd81de91e9e820a261c4e53aa..fedea73587c8352230b11a5dae27b19987d67689 100644 (file)
@@ -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); }
index 8cbd89f294b7eec45a2afac78a19a0a0e633eadf..949859ccce0d573cfd7f72e17807e875f6b25396 100644 (file)
@@ -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.
index 2d0c5c005d91582db8cdf393a035f3e074b7b344..8891cce08a91354f6e988932bf4c2c74d7e0f7e3 100644 (file)
@@ -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
index 38c2c3e1ada83bf064c75494925095bdee2c3a82..c6b345a08e993be76300064e2617952a3d0891f5 100644 (file)
@@ -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>
 
index 2f58742c532e65e54bf553128abd540d52060fb6..4fd2312ef8c687616c7927d8a920f9b75d589146 100644 (file)
@@ -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 =
index de00a1eb49cab3fae9aea71fda8adab70aa93204..6e60b6f194f0939b301e9332738e9dca3da357e1 100644 (file)
@@ -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; };
index 53d796c1a8405170e7f00eed6c04d86e830072d0..385d51da8cd6b90d5d0c78b25651ca69016f9b1a 100644 (file)
@@ -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(); }
index ee80da078cd9d410a3ed1144486b05a8e3061f4a..ca04d60180c90d29a89822c3cb385a1fa687223b 100644 (file)
@@ -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>
 
index e1e3eac416cab2c8cc6d585d195cd0deabbd1d13..472cfef34a0a8882a8984233d472ff1e2c13d8a8 100644 (file)
@@ -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;
index 5ddb9e7dda9f62dd979b731ad428a7865c998fe2..cccfaed7bb6d943f672be4d5f94e63fd58427bb1 100644 (file)
@@ -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;
index d52ac23ddda22585f036aa23a4d1e3d54c524669..97cd9e52fe2155259837e52259fc774211207bf9 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 struct B
 {
index 3f35ee8f0f5f6f637ce11c2961fccb099228fe9e..b32845a96c9fb00cc18a7935fc3284017b543868 100644 (file)
@@ -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); }
index 38ade5607531670cd14a93ab535a015f1639150d..bd6b0f98390c97ee6dc82a210dd9e08edfd1e1b2 100644 (file)
@@ -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;
 
index 8322e71623bac9f23a0818dbb3cb8b48b84268df..8ce58e56ebfe51306284f61349208dbc2279d4da 100644 (file)
@@ -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); }
index b8c420939119dd3d851bdb0c0dc5146ece0d1f0b..fcc13c6dcea7e74f1ac49a7a3dc50d202641d02f 100644 (file)
@@ -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 {}; }
index a3a315c600b7bebd4314f6fb8fcc0803bfbd8853..7ad1cab9e93e119d0aac3de056bd0b05af39e955 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 struct fool { };
 
index 50fa3b4daddf112dc6945067e03be634a80ea31a..dd7dbdd9239550be754bf915a8b9d8b739c6d69d 100644 (file)
@@ -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; }
index 38933e4cf091c6cb437b52d74081efacc837eabb..a6cfb4bf56d8769ee7cdaffdc44d21f50df2a763 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <vector>
 
index 5a34358bbd5528872b19b41796929c179bb92d60..201be37e9c71beff5912b2ead42f93beb0a5a9a6 100644 (file)
@@ -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.
 
index c4d6b57ab659437dceb4b33837c8571c314b6015..497154cd11fb031eeebb799cd62528fbab5652de 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 template<typename T>
 struct S1 {};
index 88731d6e24950fab005ca8540748ce7d09fdc052..192226f6ae2d5f72d5c57517b0c40d87208b3da5 100644 (file)
@@ -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);
index cbce4f3be6d57f00044ab103548a6c02328c6dd7..33bf372d64688a09e9754fffaa20d116d8484bb8 100644 (file)
@@ -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; }
index 352acc2271d9140e744f3b8a2853f0c2faf38b9f..04e11e2e69788f1c5d2235816ebb13914dcdd6fe 100644 (file)
@@ -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()
index aee63dc9d2cdf47dacda3cfaa3a45aa6d6fe09f5..8745bb1d9216d8e454f43c592d10a02aae98abdc 100644 (file)
@@ -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;
 
index 6a32cfee88530fea46af45d5128cee98c454a84c..adecc12f0f9ec17e8e8ea19fd1db8214e4214e7e 100644 (file)
@@ -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);
index 61fa86dc435aecebca2cd7116c892bb21eace24d..3d37e9c4c250e3da0138c6bc7536e706014671c0 100644 (file)
@@ -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);
index c38404239f5ddcdce7ab7296bd80b0165c0babb5..f546a758c06d696b92c6bbef8ec5e8a2097bc0d9 100644 (file)
@@ -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);
index 5e537b048ba243c2495dbfd176d52d466963cba6..cd93c60778a50b9ef98d1297fcf6d12b2110a2b5 100644 (file)
@@ -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);
index eb4bb1670b153fb24d804fae14c16790a272a603..9efe4094f215ce8e019154ebd47a37425d1fb60d 100644 (file)
@@ -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;
 
index 27d19e97719a2a30017ec9be887a802d0f13128d..1dfa0d16ee537cb43d3e99ec6054d999ad19947d 100644 (file)
@@ -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;
 
index 63a12c47f69634fed55f23ea77f611bf28e7a6aa..63c451242226de810dabf9cda8659c5874785c25 100644 (file)
@@ -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); }
index e34c606e3d6adcd1248ee2c41dd984f1c4df486d..64308cdd6e67fbe509b0adbc997bee4cf933643b 100644 (file)
@@ -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); }
index e828db96a8153836e150e3c7e29218bceeee6f20..6c4dc2cec3149449b47c02908a2458664a04ac12 100644 (file)
@@ -1,5 +1,6 @@
 // PR c++/66937
-// { dg-options "-std=c++17 -fconcepts" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-fconcepts" }
 
 #include <tuple>
 
index b5a718565457e3e34e6cd3dd3206faa6c55190ee..27610e25a5403ab43696c7e9811fcd2ca0c43987 100644 (file)
@@ -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); }
index 3383d26469d076a35b8c3dbf163e6b43a259bd3e..71dcfd37e6a5c2b98ab8ed2b781229f17158c328 100644 (file)
@@ -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); }
index 1456c077b4a84a9a8f4ecdd5ebe02ad7432ab5b6..90a88d83cc9947c9b865000256917bbdd0d95d57 100644 (file)
@@ -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);
index c71e8a40a3658c66384ef1e432510c1a3b066391..c16d3e4a57e0e2c00073fc1f6816b71bb79f6ab7 100644 (file)
@@ -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);
index d4f4f5732051a3b35484b88fab72e8733b462537..f3d642b1a5352cbe15d90e9167817dcfbeac098f 100644 (file)
@@ -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);
index 677deda08d819336cc2a48cd3dfe4576ff61e3dc..3864c9db99c84442745868c57f0d463e5c1940aa 100644 (file)
@@ -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);
index 68c4a6f99d9e7f1006967f3a4265e04ce89abd61..b1e9cb5379c864d4a67405f305a102fbfea97d39 100644 (file)
@@ -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;
index 645e8cac966c45f29b58efe7f5e6ac824dfccb8e..8f5ac62953821484667e315a50872842e68fee4a 100644 (file)
@@ -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" }
index 0df4a498a0dd9486803cce1abcd0a3767237ed4b..8371b373f6472352a1b07c9c0d0f3e58f0291c05 100644 (file)
@@ -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" }
 
index f24d76db2a922b762727e9aa9218dca132fdb639..b69d7d8d6a2aa61861713d42b8e2cd195930feb7 100644 (file)
@@ -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
index 2e04ed64833c265dc94f2d632e5d7934aebc47a7..ffe5f1ffe05670ec5d5fb8422532c8ba4fd4d68a 100644 (file)
@@ -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;
index 07468637900942a74669a90c4221f118bbe0710b..22f07eef827aa8d885451bcb899811fc96ccfd00 100644 (file)
@@ -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>
index b1b5ba5bc4437d780000f74120dbde7b908e3fe5..4c0f437c32c9f94b98fa8a11fa243039f987b81a 100644 (file)
@@ -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_ =
index 2b64a62edef39331979c01dffe0045aca46520c3..4675d97ca1885c0164f433ec804b323b49e88d36 100644 (file)
@@ -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(); };
index 48bdfeed5486daf3642a194f353093e9770ce99b..e0f7903cac557e4f63f3ca6ef98f4ff8408b0e3d 100644 (file)
@@ -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 {};
 
index 59741889707924320a37d75cf43d11013744d414..9dec587cb0f07f860599d9e9c08c531964950456 100644 (file)
@@ -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>
index 2c6bdcafb0cd392201921e9fb7b983cf61521056..40353f480e2b1972847dd56b49c39c985c22454e 100644 (file)
@@ -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 {
index 5d73bbf67392b7a00dcbb14aced222e9d1f0f73f..855bed9d7b997dbfee75656a6a98d8f698baed9a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct derived;
 struct base {
index f526a6e8812ea5199980ef8da16b04dd03b232a6..c051c086488f0b53b3077b22116c6576db7aab7f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct derived;
 struct base { };
index 8f9126bc23fb6d4ab15e859b50e732891006ddf5..7a4865a1dd0bbdbd9308ff2c80d8a9e0f6938c54 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-options -std=c++17 }
-// { dg-do run }
+// { dg-do run { target c++17 } }
 
 struct derived;
 struct base { };
index 5f6d9ad8beb1b89036b4c51db3920ee7ac12c4d7..17882b7be59255cad9545f0a33ce91da816734fe 100644 (file)
@@ -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; };
index 08578ed0b0ba6573f317c6d2e655fdd1f2b92fa8..3de2e722f7dce07e59c38afd970e6ba1bf297e6f 100644 (file)
@@ -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; };
index 09f823e1cefb05ef812b9dcdbc855a4dd43c66d2..48e9e945766aa6a5d00ba62029929fccd49a40f2 100644 (file)
@@ -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
index 7bf63091614fa7b4a6f3dee24b1ef8c2d311d844..5c1c4eb09defa091c5c9a63e957a4f7663248584 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-options -std=c++17 }
-// { dg-do run }
+// { dg-do run { target c++17 } }
 
 #include <new>
 
index 2bfb6b8d51933480fcedefaf4fce83ac9c3e6947..08cd732ac7b90a7c86cda371777b5a75fe56be00 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-options -std=c++17 }
-// { dg-do run }
+// { dg-do run { target c++17 } }
 
 #include <new>
 
index 52011f254ff7ece77b75d5fb62a496290df9059c..5b364d6966201bd9c1ccbbc310e7356c964905cd 100644 (file)
@@ -1,5 +1,6 @@
 // PR c++/77742
-// { dg-options "-Wall -std=c++17" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-Wall" }
 
 #include <new>
 
index 11dd45722b78a8553bf0112d966dd1e7733db8de..9c125204d635b4a84e104d206aa3da725ed9e15b 100644 (file)
@@ -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>
index ad7d2374897d3a6108646f9eda978f9ba01de513..1e9e996568c5edc29b08a55343405ec58b096b36 100644 (file)
@@ -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
index 236fba33fedd2fc236ecd0a622c68aa124295e3d..0355dc879a6bd9f9cf6ef7e9d49b32cd1358035a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 int
 fn (bool b)
index d3b9b8818fcf4c9c172182f619a8b232d0d9012c..631b18d126c67862cdc29348b7809ab3e3334244 100644 (file)
@@ -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>
 
index 6a395c155307199c4b98abadad57785c0beb052c..717aea85c5ca8791d8dba2d4bf127a993e6af788 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -Wall" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-Wall" }
 
 #include <cstddef>
 
index 7e1588e747574c5bf1a8eaa75836c1b6e08b1433..752b430181df678e53c51424642de97c2a06cc05 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index a3879fcde97efeb10367341214c4284a8f763f3e..eb0b15ee14977f7105bee38eb14bb9177cd33f8a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 301ba9acffafacc3f2f7114fe0aa09c639f4628b..2a7594918e5a42368c56e56619623e6603e9edf8 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index e858dcf8da1db0c563796dbfd75dec24086c9bb6..a31cc1526db1a814a5a8e40e1c2cd31d8c4df9de 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 0bacf9b304e4d70060ec279ac4e4d480bc719aca..7a07befc4746b1eefaa4ee900b51aaca4c695492 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 41d58db18bab41efe954cde2d046058d38eee650..ba2ba9bd1ec164c65390f6ac9f768cb0d8c0782d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <vector>
 
index 3f0e2290441d7a4f1c2a4f393a2d78f9082174db..5d050f13e308ddb744f3e461b052ef12c34369e0 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <utility>
 
index 2a636e2f70e630020c97363dbb11cf2d0b360d54..3db8a0238c198376d5363f83a758bbb9bc2c7b39 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <tuple>
 
index 646b5aac882236160e457b20009f364ce6671bb0..e8d1ab22e3638a11cbed09a82cc2b33efc49a29e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <initializer_list>
 template <class T>
index 42f936aa5cc337660247490b2ef21c1823564c27..a0e6a73f197e5e00a614f90a48e2db7e1b7013b4 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<class T> struct S{S(T){}};
 
index 5c21b74ca387260df50b9f61824ee8376427b4ba..a098e1472dd3c2fbf38f296f21919a65bb58bf6b 100644 (file)
@@ -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){}}; 
 
index 2e1d115c58d7abd6650e894d249ef4f827a5467d..a0cd20ce2fa812db1346facc488957a130f1c44b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 988f11bcc62de99b359bf648a6b645fabecfad88..4c009e70140b54bab9a21991bbee09c4e81ce49b 100644 (file)
@@ -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()
index 2c2ce467efa9f98f36803529651e7a47e93965f8..e8cd5621a095e7c0a2288057873c6527079aa948 100644 (file)
@@ -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; };
index a1f0c203750439e2721fccee4af67eb365042869..0a260850be073c702d3af8a925cc42405f2a5439 100644 (file)
@@ -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
index a2fa40616212c8b1a830e4370260e282bc1a33d3..a383304667db1ea577ba5b43c005d5021e2079d8 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index c4d890c1a833fe5ece0dbfcb1fedd541b4a6681e..1d05a0867ffa7d512a4cf1eaaea7d6575d988053 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78894
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A
 {
index d3259d88f14dbef5ce367fd77e0893c653f5c925..2d8c3ef46514802f6997ba03aa6e2c29c563a85a 100644 (file)
@@ -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; };
index 74de70ce21f2a1252306ed068f50fd548772045e..bfdba796d0a5256afc45df1bc54626eaf83039b8 100644 (file)
@@ -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> {};
index ce58058b1785bb0aa99e6263a61bc59127cd7d7e..a9a9d8c0c3cd760e2395032f3f6daa303d9d3ce7 100644 (file)
@@ -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>;
index 8238e5bc25e52b92f1b25568ac83024dca62afbd..2fec7f79bac347c81871f9f338e6ec8bcf794a49 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79350
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 8c2d67ef4b489f427510f15292e9bdb2c78b1349..6c2471696212c15b31ecdde4844357c59e375898 100644 (file)
@@ -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>;
index 13e001afd6b111439b0561c405bef3c895d35d00..9b327835f3822002836f2fa77f373d238e9edb38 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int I>
 struct A { };
index d0ef5f9e060f750c3eb121c9a21c7193c9d5d275..4339a5e08c5a77f0acaa69bfa9b5b6d14c087be7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T = void> struct A { };
 
index 2fd2f28fad878699f22b1684a90d970603f6850d..67243b2f80074093cbc288acd26b6aa960bba361 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A {
   A(T); // #1
index 0f4c85ad35f5607e38d7bd9dcd7f082a665e0902..ef21c9620acfafc1159f2187af5a89e41dcd28ad 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <initializer_list>
 
index ee9d780aaeaafd59c4a982f3539d9a77a6e734de..4572b0a2265f79f02d0153ca8c420b30e6a43901 100644 (file)
@@ -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> {};
index 380c35fdb031bf8fddcec0d0d2b3bac520e34ff0..26c063a9e729b4d2d7d9b99a938413441640fc49 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 63d099dc1fd7c2a4c360ab20367aa675933d2fa7..b63cf8209da9d57a5f763ae0e277ecc7d01c3400 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A;
 
index 3670ceea03a627cfec2da2aa6bbdfc620901dac6..a9c95fe9fc4b1df6b1de085da28535af7d3e22c2 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A {
   A(T&);
index 883961e04c7825505821aee253413af25a62283f..64c276aecae0737cb290fc549b0591ed6657d6bf 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A {
   using value_type = T;
index f141e9bedfb88393a18c58d37a91d437dadecff7..772434aee716f9f3688402c80a9708d4ba402529 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A { };
 
index a86589cf228868eee4e135f6763a21b0a69afb46..391beee8d8f41ed876a5be6255898fc4189bea5d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int I, int J>
 struct A { };
index 3888b3992e22018f56622151a8cb0f6eb7a6685d..4420277479ac65dd5b82b6aba8889e48a118dec8 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/81180
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template < int I > struct int_{};
 
index f287ce925c948252f2da4ad3270c9b9caed10c51..5557ae99161358eac1b85840c676bb57ec411f54 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <initializer_list>
 
index 4623e742fb8212e7a1d19788943563e712186e02..dfba8266da6f4623af129ca504a45d268fc8db21 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <initializer_list>
 
index 120145516b1fd94031594bda6e35f7730bf0f5f7..55a79b327f4eb34977c7e645432c7a7d6eba2a78 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79790
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int N>
 struct array
index 15711971f51fa685eb7aee2c2f95e10afdc2d56c..225652cd2e43470184d3b54e9678e5f2513e1bc0 100644 (file)
@@ -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 "" }
index 3fe8dd33b79745b8f2fdff2e801f6746f3efd31c..6f72b5f15ae4cf207609184e61ada2a0d8cf3b5c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/82308
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<typename, unsigned>
 struct array {};
index cf38ed65fa883b368c1f32344df014527e9d32a4..513e16057af76b22484747246b305d9cfe871c94 100644 (file)
@@ -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) {} };
index 1cfdc44a993f80297c9786587bbd63372a7c8130..ab64cc4a0a60fe5af19c897b73a0890018515f5e 100644 (file)
@@ -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" }
index 086f12ad3c61baf626accf012d23b31f8e3dbc4c..658ae43e7005564e43161a5f07de6b2e00d580df 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84015
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int I>
 struct A { };
index a7d56fbf93dd3e61d96e297bb536af08e43d86d4..49d4c948aff1568040211300b927c443d864d99a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index e8cdd8c710fa8a8b3e9e9cc34d95b7da7234e3b6..7289932c486a8ea8e914ae6566d839cf137a7749 100644 (file)
@@ -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> {};
index eba7972c3c63e4908b34896b937618c9ebd7688e..ef593ff614b8296c04d2eb86a7fbb979230ffa10 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84937
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<int, int> struct A {};
 
index db786ce7d626fa590f5f91c5fb5cca1503078b14..6ea9e8087d64a97dfcad3c1fbe4f33febf605aba 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84768
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<typename> struct A {};
 
index e51398bbbb0ad0310865110ed5426705873fc2e7..2e87139b4d804304ce82d638f4928af9c28c55f3 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/82152
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct Base {};
 
index a93d720368129560176cbef72c4394d19e4d33ba..74fd29f66dc4517e809ad8e27b42ce2bf627a5ba 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/85883
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <typename T>
 struct Bar
index 71dbfa1904df05ef0f7c55ffb1cd89c3d4ff1b12..6cf54b31e2dc64b09f3d47e57e3cac54d08f3e03 100644 (file)
@@ -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
index 200ba6c35366b7e8ee08d8045f29ce13e74f2dd5..f1c776ec70decf80bc7d26936ae14fd85535b516 100644 (file)
@@ -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
index 82c3f83710faf7a7ba2949b6dea455a2d68c4728..0613a9e9a7b076fb2e008c7ff192feeb6c86b7c1 100644 (file)
@@ -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();
index 3f751cee3e270295c5726803cd91ac8260b82f4d..b20bd75b98d9d1fcb446bc7eb47d8de037e437d5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index d635a642bfb9c822148ee843dbcbcb463d8ac90f..ab96774d5e9ca95f277bb3348fb5b8c433f13870 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 9836e26d8bbd952ed3521c05ca1df75869954def..20cabe00a74605421f473506cd94094fa40d1739 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 23c58fd20268d1a00489f2f6cd35b42e01d6ea2e..c0af9447e7b53ad6f10553c045d9a4a31a29b7a4 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 namespace N {
   template <class T>
index f6b61eeab859d0404fdbfb2b979db83317bb8884..3c6592c2dde6e4077d7ea4c79719b027c423075f 100644 (file)
@@ -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;        }
index 0e7912d406704b9ee4af211ee0c9fcb112b00dd0..43dcf7145026e0439548fc707a50df5a61c9db03 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84684
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 typedef decltype (sizeof (0)) size_t;
 
index f10d83008883d027455a78db7fda0c15b4c90adb..84d7b20b10a18349a5245ea88f095c19e507ba73 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78948
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int T>
 void sizeof_mismatch()
index aaef952400be246666745e5e67e7c3b921bcfd66..56922bb19ea6dde5b674bdc7994378ff48bd722d 100644 (file)
@@ -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; };
 
index db984a6467774faf0d2349f79a8372bedc2a2823..f21a9896ff288f7569c5d1f9f3242989cbf93936 100644 (file)
@@ -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; }
index 55dbfd902eea989ef495abf7b9596efeebeda2da..459fa132d63b4573dd6eb5637bd9f55faedde973 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/83273
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 int main()
 {
index f6cc39a0c2f23b47bd55c1ec92ebbab7fe42c336..69af7753116b11e132cf52d4f30efe372850f77d 100644 (file)
@@ -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; }
index 9a9053c3305066deab72bbb4351d29b1cf73c35a..1dd8beab89ca5d17e82e4e4b0a8f3f646ead257c 100644 (file)
@@ -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; }
index 31a149702fd41e41864b02c549802d2caf147270..dfece047ca2b011b5ce721a634d424d46a840e78 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A
 {
index c6ebf1ebab28a023235492485ccd31945eb12e41..cf637f6c3d7dd8aca583d96a0087553562e8d801 100644 (file)
@@ -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; };
index 03ad620e8d92e63a3e9416b52d4aa0234d2655eb..a5601176be139b8489cf9c5e49f158198b465cf2 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/85200
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <typename T>
 void f(){
index 40016a5b7e1176bda81e4d1e2c3e7ddc92e3d2de..a1eaf320221f4930d4758a14d673a2e5828ea123 100644 (file)
@@ -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; }
index 24343adb74825fc82cb7b568b09c9ccb14efa638..2fd678bb38362a08383acc3ac26dc7526c860cd9 100644 (file)
@@ -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; }
index 56e108be4ad5da7b0f2064dd48993da74002dd97..b02417fd34e635ce54c80ae9834715b9b82568ab 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/85032
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A
 {
index 76f0c73476b3172a45a2fd2e025c5dfad9e0da89..32ed5df8b4e7f152163b0ceb77f7f408942e4b2f 100644 (file)
@@ -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 {
index 8e31db3e8633543d51492175b653f06e753889c7..4f6cf3d5490081fa747ee77dcfbc5902daaef69d 100644 (file)
@@ -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* {
index cbdb38d95c353f8181174af2a25b67afc00243a3..8e6034c4dfc7cd5f1651a988fed5f983e948b7d5 100644 (file)
@@ -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;
 
index 501e7d32cd7f8e9a9a294b4fad841ebcd68378da..a2250a2e84560ec576c99fbfb783499afc5eb89e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 constexpr auto Add5 = [](int i) { return i+5; };
 
index 2af652d0a060a5652f80194647f813d7c6b69689..d13053a9c4e2a4dd8e484163501605bdbe018b63 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 void g() {
   const int n = 0;
index f5d58ce9429f1d6a2d4384c166132abca7803f82..98b27c1d06b12065f35a9ae57c7b82526661e5a5 100644 (file)
@@ -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.
index 1ad2f6859f87e135ca27ad519bd0e290d4e65bed..a59bf497b30adc9bc1a35cc7717f578147762c7e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 void f(int i)
 {
index 35baff35dedaeaea17a0c8e49f5aa225821b17a6..962ec8db62c0e99e40428675273acb0e97167e8a 100644 (file)
@@ -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" }
index 44bd2b83f945e9c0900279e8e385715599bbe7f4..89585f3a39512fda0f750aab2aa6f6e803faab24 100644 (file)
@@ -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)
index 639018ba945326864435a469338ace65969cda81..c7ef8d0752e8ef3553b5c44050dc9bf3702bcb51 100644 (file)
@@ -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)
index a16d31c59eb8ac620e1febdbedb3f0decb4e4841..c6266c2bfbbe2f611a750bcc017fe04a5a06eb13 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84098
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A{};
 
index a6b3e532649a2dab6ef9b8a41cc48b0b98b7630b..3cf9d03e741a4bb8f8e7bd8617f761a70f3207be 100644 (file)
@@ -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;}();
index c5109b85de3046e69d7ddc6c21949c3e26152c71..d2d220c2d6c59a14d21ec73f78ba098d1312695c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/82022
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 void f2()
index 8b0c95b37f3b12d77ee0f621fe7b7b70f43afd01..210726b82775517c40283b0755f23e43603da67c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/85228
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<int> struct A
 {
index b2772b3fd67c363616d33ab214552e13181a0e5d..ccdf697708240890ccdd4f299beac72d7d4e7674 100644 (file)
@@ -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; };
index 106b50441e9b21dc34d5f965983b250b82f26beb..83a2029fdb3a338469765b1d00349557e9923887 100644 (file)
@@ -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);
index 8c9db952f24d191546ce2ee898cdcdc683cacb46..c9fa63d1bf5cb22ef65b2bd282b78fefa0e5f1ae 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 auto addOne = [] (int n) {
   return n + 1;
index cd7c5b9f3efc39f7eef43b2d25cb83acf611e94e..214d3821299e216b2b287e5b6118798811da622a 100644 (file)
@@ -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 {
index 4dc5ae2382bb139d5c8d0a16a729efd7c9e507dc..474ce88f81f3151b9711e2f67fbc2d1414934d5c 100644 (file)
@@ -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
index 0bac4c1ea3515db0e3187a7cf441f730593f5b52..84be68ab7f042177b181c75f62b3212dc234c09f 100644 (file)
@@ -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; };
index 23fdc9390aaf60619f62787ed4e0b6950da2ac4c..c4999c59acc9ee2e9dea1c508be6f01b95a0bad0 100644 (file)
@@ -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);
index bc6139b2e86bcb2e2ebaba028130e9029e00d8c3..cc27e1e803644d385d9e454165e00446eb8d6a16 100644 (file)
@@ -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"
index 1833bc3cda83eb40f05745fb51b07480646c2df2..1a14997a76f116e60d2e5a3a99d5004310b6dfaa 100644 (file)
@@ -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;
 
index 04ca9a128a4a76f0c37710b10b65b5e61d96b977..1a5374158d19b7300e0e2de7e139126be29af518 100644 (file)
@@ -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;
index fbab025964384693e2850c70e371a8f6d6e8c7f6..6161e4da23eac12e89810566894fcba9fd0f2f10 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84420
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 int main(){
     int a[1]{};
index b4169d343204700bc4b2d8c3eef7773f9b00b484..f0723f8d85f2f909ff9fb7977f57aa0091659835 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 namespace std {
   template<typename T> struct tuple_size;
index edb6709116c0a6e976dc499c76741d3646029b5e..38dfb366dd923ba77b9d1d71c730efac1e4db0d9 100644 (file)
@@ -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> {};
index 09ed6461d3cf81a22d42678d292551147071c00b..56fd49871659624d325fc3dfef01a08de27a6e7d 100644 (file)
@@ -1,6 +1,5 @@
 // PR c++/78358
-// { dg-do run }
-// { dg-options -std=c++17 }
+// { dg-do run { target c++17 } }
 
 #include <tuple>
 
index e5dc443598e6989dc10ba158caf0d5c4b3d4b80d..72e2c52f5c68cd99e4554d53b1849d067b2b46b1 100644 (file)
@@ -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; };
index 7589c8015a518743288ede0d304f0e9a1b69c63a..fe0be16e167ab9045cf38207cf8946518df5bf9a 100644 (file)
@@ -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; };
index ace1f06a5a7bbf9cb9e308b3bb82cba3efde5ab6..73dbebea896a4ecb51279bd377ba22fdd47b426f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <tuple>
 
index 8475e5d9707df6bf44e9864832500727b856edc5..8309ce8896c2d8e71e7c65f28985529df58a2f87 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A { int i,j; };
 
index 6f21c9c9ec22c051733c390780a49e862437ebce..9ed0da3de3e36f704e0eb5b935dd50af7f5de17a 100644 (file)
@@ -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;
index fd5f30e05a58aaa3cfe473c160e954674e14fc82..a28f500c038ef7627756a4006f17bb547c27f666 100644 (file)
@@ -1,6 +1,5 @@
 // PR c++/80084
-// { dg-options -std=c++17 }
-// { dg-do run }
+// { dg-do run { target c++17 } }
 
 struct A
 {
index 3ccc3839580a517215c6e4fc055a8a1e61dd28cd..3404a58f2258754a431ea0e2b9df2b58201d7e40 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17 -Wunused" }
+// { dg-do compile { target c++17 } }
+// { dg-options "-Wunused" }
 
 #include <tuple>
 
index b11a3127777a39554557625dc6df201075663da8..9de3979edce38322383549366dec0bce4510b69b 100644 (file)
@@ -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);
index dc47908cddfc7685497632ff60dc62f2201c53f1..6bf81769b7ef5aa853bd9a63e356f93a6b84daa7 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-additional-options -std=c++17 }
-// { dg-do compile }
+// { dg-do compile { target c++17 } }
 
 #include <memory>
 #include <tuple>
index fc69c02e4d39c45db5ba304021fe1f64755c82bb..769318e89763a8318581d3f26b699809f6634c08 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-additional-options -std=c++17 }
-// { dg-do compile }
+// { dg-do compile { target c++17 } }
 
 class X
 {
index 0a19876471d5bc832b2d69341d9634bc0f826130..845635a2994e54af6a245b2166fe82629a0d8bf3 100644 (file)
@@ -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)
 
index 6875c82561b4b34107e0374b7c87a25abe2d2be6..7b35b9e0391b159f09ebe4a2e086b4684f919b04 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct A
 {
index 95dd10648f624bc31d92707a106847b69483042a..af26cb20744e1aa34a18be6a7153346ef93e265f 100644 (file)
@@ -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();
index b53e96a9f8f01baf4763e71c5c1f1830ba77fbe3..5773591d49f216cf33fe9c0583ea5889a0efdf0f 100644 (file)
@@ -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(...) { }
index 54a8323dfac8f34dbbe5a5ee3c31da6ed12416b8..c6f54ce06d7e77e85d804f5ee066212a1f39a347 100644 (file)
@@ -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]].
 
index e90b74440ac26ab61c726e4b229b4f7d9a548e7b..f551892a045d1fdbc99c4f0610cd3d3e1909339d 100644 (file)
@@ -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:
 
index 7e71cc9dd21d9d690d05e8764eb2f1ad0156eda3..e65730bce263206da639816334bde70c9379def0 100644 (file)
@@ -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);
index 5eaed4a01561feeb304e232d8a84d9d14bce6556..8ccf42bedb320666da6c7b6b6fc807e367dea79a 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options -std=c++17 }
+// { dg-do run { target c++17 } }
 
 template <class... T>
 auto f() {
index e93f55f7fd83774d797dbe6d191224d868790801..14ca95457da71d64ea9167781dab54070c67c902 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/85305
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <int... Is>
 void foo()
index 95df8ca494d255f8ecd37d747a332c5c7e7b277b..6957d9c37c9cf701f3e949400de4fb56e501052a 100644 (file)
@@ -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) >);
index fdaa9559699824a2ad5cafb5dbaafcfd99adb45b..6d004676707d40e4360f2c8d17e3cbf5b926f24e 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-std=c++17" }
+// { dg-do run { target c++17 } }
+// { dg-options "" }
 
 #include <cassert>
 
index 093a98bb33458657083a4bce526180366f455bf5..6610c19a6a93758ec8e465930d459bcd97e4d852 100644 (file)
@@ -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.
index 7caa8483b6a050f1880aed93b895690a1b1fd1ac..787bf792be9b08c9bfad7b6145b4d700bb9bcc51 100644 (file)
@@ -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.
 
index 2365d50c3c482955be6e5747ea340a060ace18b7..e0ee131a9bbaa706cef9f10339ed4fe6eb77f802 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class...T>
 constexpr auto f(T... t)
index 29a20480e7776280f8d6eeaeb29697360ae441a4..df290335b14387adf6dd9f6d667af8943e82664e 100644 (file)
@@ -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;
 
index 74ef4abfaf7d7dbc9c92061e778bb0f4293b637b..d65d6e9d805dfd02f55d0d922aef5ca3681c34d7 100644 (file)
@@ -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
index 68827e6f68067fdc869503385dc577f1b8cf1475..983e9eeec0d6ec571032c00ebf49b94411bc8179 100644 (file)
@@ -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&);
index 142c8b2c818e5dee38b829ee1bee8b920164f045..956d51d3c4947f22de8c638a348a6a687850b7d0 100644 (file)
@@ -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)
index d1dc9188b1c575c9c30a4d61ecf79250b3615901..df788172c55c9168ad2bb4b6eb5e254fa4ada632 100644 (file)
@@ -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);
index b0cd14885ff39a559a267e8480cdc149cebe1b77..5b067a98574124a320de4580f79c5ee27233940a 100644 (file)
@@ -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
index 32a3f2d8b665cc39726beae21d5541115cc9f38c..a049adb657a5f58e1a2ba184febf10881290aad1 100644 (file)
@@ -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);
index cf2b16a27bb3faac3b95792338e91c8a352efdbe..867955b285eb331262e65c25530b572f5bb80f67 100644 (file)
@@ -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 ();
index 6f00d9de4160ff1533ced7d2a4fad993242246a2..e1848aa5e4abfdaa50e1dfb68b9dda3639f7356c 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0305R1
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <string>
 #include <map>
index e4a598e145d4a2e8029f899cec94e9a2ca9ffe13..b2cf72d6d4aae5a60dec3ffe2c0a27dd0f525658 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options -std=c++17 }
+// { dg-do run { target c++17 } }
 
 int
 main ()
index 574cc213787f38fc293ef62d85b12214bfee1858..9b613e706316aa609c25a8ec5a34fcda50a50261 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 int
 f ()
index f695a73fb3d468b692b475182a3e2d8d1057a8fd..84b24d4eb2dd8f21ed2bee3e746b4766b38f30a9 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 void
 f ()
index 7c014b52c24f1d9c920c8d68c42d9847ef818e26..3011676021d9d1ad2dfd7fdfc643a660256cc1c9 100644 (file)
@@ -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" }
 
index 62d3708232d02ebd109e2e736ac6164484669b6b..b07c1d2387752b557e98658adc629ad113dc50b8 100644 (file)
@@ -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"
 
index 48563b33e3e5699ab379ddd80dd2bb4dfdfba804..e9eb1902c0de0176956ec31761adf9623ec01bca 100644 (file)
@@ -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;
index d5d1c1cb7b697c3db328458abcc5bb13f62de4e2..d1b02ef02813536f25c4ab9a9b3c6782a8f46abb 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/84925
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 template <typename>
 struct A {
index 75ef586b542e366c72c81fafe493b74ed7ef3d9c..f89eb07b5a1a516f9d64a63a929ffd8bde1a08cb 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80767
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <typename... Fs> 
 struct overloader : Fs...
index c505ce3e1f93b6472e04288b5b0bfb24aec899ce..93f2eb3496ca2946cdb907e76a9db688fdc8676f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct S {
   int i;
index b4dc5c4e01741ac671183ae083c455599faecf2e..dd1855137de254eb87131b62ebd2b345de063b84 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
+// { dg-options "" }
 
 namespace A __attribute ((visibility ("default"))) {}
 
index 2049da33ab5d7d8d85e0b360ab660f4c4a960648..193dbf6e017f9b23cc765f848190873e0dd03493 100644 (file)
@@ -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" }
index 8a6f0074fe8c32470607214529d83e8870203c8a..c9b16dfacedceb6d62ab498d76bef8c7c7538617 100644 (file)
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
+// { dg-options "" }
 
 namespace A::B::C
 {
index 4d4e60e42c9d4ae4637707289c5648ecced8bd9f..4d24ce54413debd860d8a9f038adba2bd6427fa8 100644 (file)
@@ -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
index 59c02552d60bf9811a435be0b7535ae4f6c02178..00d9509c74b481f8fdec61257309eb27e1a66f1a 100644 (file)
@@ -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
index 74404ad7ad16aba25f31c70814af59919e227e39..051a452fb6b5a7dbdf0a0638421d7d5653531ded 100644 (file)
@@ -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)) { }
index cc5a3edf1e4b64bb62c5ba65457a41d777e323b9..8543859b3f54a3471353732cd88e8feed7c3dfe5 100644 (file)
@@ -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>
index 2b6a108eb8ee28f3199cdf1a8b10b5f22e43dffe..b7a76fdd9849133d7168a0f607129a906cf5d214 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80614
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <typename T> void fn() {}
 
index c8c731b5bbdb85c47f08f2fe9714a6a23d048e5c..734f8f97935da67dd7f83971995f1c87a1f7ce10 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80465
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 int foo(...);
 int main() {
index e01fd0a20308605d4c44efdb5005158373622dd2..a018c9403972fede454d4201efb36699a2cfe021 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 template<typename T>
 struct S;
index 467bd46725c026f9ff41cfb9f4ed8efb93a5b378..f4e9e3b6c7ac976ed1e3ba2b1592c1d416733ba4 100644 (file)
@@ -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;
index b23c1c779f9ee3de97496d22860596e247414848..b678e05a74e570e1961ff933ae5ab36babbf02b1 100644 (file)
@@ -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 (*)()) { }
index 4777eef54d8b3667200d6cbdc8bd50c23773a77d..ff02a0bba874299442044bbae52f9dc66154f70e 100644 (file)
@@ -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...));
index 6c1ebd1f13e6f24c1084d7071ed56e09a5dc975d..753a0b7bccb2a4d3d117f62b081ef571fa996e14 100644 (file)
@@ -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;
index 8734c8d9c08cf1d27178970d54102c2c3ed3b5f0..67e0bf8cf8c37874b59ad7bd2f8ef5169e710714 100644 (file)
@@ -1,5 +1,5 @@
 // Test for lambda conversion.
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 void f()
 {
index 7c77a8d63df632784b4455bbe53883e852e609c9..53276478fbea4deca1ad43cd61f7d5769f7e22b7 100644 (file)
@@ -1,5 +1,5 @@
 // Test for static_cast.
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 void f()
 {
index db70a680a78600ad11497b14511a87cf55c55401..007f14f7fe45c925276cdb1af1a41725a08f1e84 100644 (file)
@@ -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 {}
index 45b64997072b61653e25f2e545b2d26eb8260cd1..c965d9e4b1470efa68e2b2b30c83043bf3047457 100644 (file)
@@ -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
 {
index def697c1a47b73179bfb4c395d4f7e29319a39cd..960f1ee2c1c266c9daf38de9af38255be579bc81 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0127R2
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <long n> struct A { };
 
index 38d070ccaae852044525ade366edaad6a5407af9..ec57b5436e78d356db38fbdca0d1820221ada1de 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80096
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<auto> struct A
 {
index 7bff75c3484a8c8bb505e94c67f1fe325ff01d5a..cc4022c5f3e86b17361920c4550b3dc27f1fcd96 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79092
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<auto V> struct val {};
 
index 2152cef811ec9053e21edaee61877eefb8f9c37a..32f109e8af9fcdf0ef92e27bca0ab8b7a075bb4e 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/82331
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <auto>
 class X;
index d7ab133baaa8ec8d0e085c55e302347b110458e4..0d350a398fecb188e23488bee2899e3efb887a6b 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/82231
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template<int>
 struct x {};
index 7152768fd92cce39b3bc44bad857a8ba14eba49f..dc6ec483bff5274c374663ac7b8f7944f6490de2 100644 (file)
@@ -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]> {
index 9b96c1fd18b57b574701fa2e2c61674eb14b53a7..b1aed4392a78eac4bca1af529cf3dd55f861a14c 100644 (file)
@@ -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
index 5833c08531bcc6be16c791f11db0e0f145028382..36b2b3fc4d629aabfb8a45923bf4d48c60d9b840 100644 (file)
@@ -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);
index 323a89632a9e1ae208f98e8ec7461761941ac985..90d8ba91e184c80c9b122c6730c56b0d8979133e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T> struct A
 {
index bca6576d590a82e5083f995958568b67bb54155c..2637a890afb27238606773abf2d0ef17a765ccd3 100644 (file)
@@ -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); }
index 146ad440d98996824781203217d61e5d12080154..9b26d8a81c1a9b00dec07c634706df1212085158 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79549
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <auto...>
 struct meow;
index 65f5cfe7ce41a1638936c8a57f95e1cf8e7c2c6a..be4ee9f31a4eeacc56ccec3e4d5f60142e89a098 100644 (file)
@@ -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;
index 342a0a6aa1d4b80665628152a911b12386657cae..4bbab5ee7fcdf2c6fa00dfd013a46c12396a5a3e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct S { int m; static int s; } s;
 
index feb4b4aaf6eef72344304b4ba0a18bbf64e1e44e..393c8332c76d2818af47b1e62d817c08797fbcb5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 #include <typeinfo>
 
index 29805b5617fecb6d594819a402de41d13619ae3f..80f1e98ab76bbc477cb22ee2e04559f56fcbe144 100644 (file)
@@ -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
index 80e3a92ed913220e5671bab711333f751488b07b..54ea56ae4e07bf4a6daa1e76c260ccc9b8c91997 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78771
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 // ICE instantiating a deleted inherited ctor
 
index ef8c1f6bddefdea14f6a7179c79583294b0dbce0..9d57a1abdebb9e76ff9394b72e7be1fe6d8dfd51 100644 (file)
@@ -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) {}
index 4826fbfb775ab45bff0623f997954e65efa94924..358b12056c0ec0abe11da561f6bbf2886206ddd0 100644 (file)
@@ -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" }
index 43a7e382d39ab61102f836e8347c2dde3f33d726..0bd724b422f2eab267fdd250a91caf4a42202301 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/83020
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 struct NoDefault {
     int val = 1234;
index 493d8c7cbe463629144523f65db87c37c6325cb5..3bce9167e01a5f0e8648463e0e619010ff3e9a1a 100644 (file)
@@ -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;
index d4fe82631edf9e4729be125da91a02735f80fbb1..cbeb6cc9ef985ffdb2fb0ac23aedcc1a4f375d17 100644 (file)
@@ -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)
index dddadc32692420075c7ad8d5f59ed15a76c7bd9e..6ccbb2fae3bfdd4a2a126b1f17083b5d6f0c9437 100644 (file)
@@ -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() {
index 0a71fe1b7de766ca5bb8c1b57fda072a5c76fa4e..4aff8bd34c42d187c6f6f1cc38d3fe9e7341289d 100644 (file)
@@ -1,3 +1,3 @@
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 enum E { e, e };  // { dg-error "redefinition" }
index fc134b80fbc0c6657995425e0d1ceeee669d0687..4bca986d3b55a8eb69685f92a36ccce42e4a4677 100644 (file)
@@ -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];
index 2bebed02b1a9922c274916d26a7c6d6ec5d1927c..a62833dfb089bf9442ffa2399fa4e4a20256c42f 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67114
-// { dg-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 typedef unsigned uint32_t;
 class A {
index 3950dbf3a26fbf100de1b47dda0c85a1d1522637..aa052044baed371ae38d5bf672e40f39556c0182 100644 (file)
@@ -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;
index cb872997c5a07788399dda6bc5cc998edfe1b06f..2e61337d9d1ba5ea7a3ad4210acf7f7804e98e34 100644 (file)
@@ -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;
index b87bfec3aaa40774d4803a8bf2ff1f88bf88de5f..9462e0355c8684ea7564703a3bc0b582b0b3ab78 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-additional-options -std=c++17 }
+// { dg-do compile { target c++17 } }
 
 template <class T>
 struct A
index 6f787cde95889fc3bab78e3be8432522e3dfd2ca..9749e14ccd0365e1934d594f91b285b020eb32a2 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 template<typename T>
   struct is_float
index 6ab57463203b6a0a399a1da38b8e2eabbd366c57..0e92196383522afe863f3354f6ceca076dffe2c6 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 constexpr int
 operator""_foo(char c)
index da2e83f5f0b1884a45e93df65bf07b227d277309..633326931ab7e2486ac4d65906b8fda115d65b26 100644 (file)
@@ -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
index cb9f7b55084d3c67fdd4d5a8e26922a0d2707528..0a94f1ac650de1b69c594123762aa4ec2735910b 100644 (file)
@@ -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" }
index ff98b58835c95ab4522fd2df752b8a7c5793cf37..e08fbb9c86e5b6486a667a554022d6a20781bbc2 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++17" }
+// { dg-do compile { target c++17 } }
 
 #include <cassert>
 #include <experimental/type_traits>
index 5e5c8b3d50fc824cba446080ceca1197489fb958..d1738ea7d17c3fcb8b5505bfe089245411948d8a 100644 (file)
@@ -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;
index 6a12d6c0ee7f1cd3f3430039866a808336d8cc55..fc3e6fd435f45627722f583339d01d4efb395310 100644 (file)
@@ -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* } } }
index ed00fb5d2c922da1f3ee7fae80c57fd54fa34a06..cdb2696a86dbb079241bd96b04a71741b81caee1 100644 (file)
@@ -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* } } }
 
index 5ab8ca84aafaa7a29a0dd9cf28e4167fbc61ef11..85e4434f7b092a7c57eb1c8a6b96694ffe1a9cb1 100644 (file)
@@ -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
 {
index 145beacf6eb2c2983a4d9cab24f980a0facd43b3..0d612d8fe25627f5b2243fda4cfc7b2e34f521e2 100644 (file)
@@ -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
 {
index 6e5125baab038aa5c8f81409cd228536f70c75c2..4859d95d7411f764f714eb09da7448e6ec378e85 100644 (file)
@@ -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() {
index 188d5a49b9107f92c24a44d462efb3b9403aaa8e..97a58ee9d12d7f66501fe1957ebe93dcabe6a55b 100644 (file)
@@ -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 ()
index d55d2e751e87f440ec7e7105753f7be1c3105b77..d7796ff7ab790f6b0809c7b71ba203f2b4a4dfd5 100644 (file)
@@ -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>
index 5f949389ec6a1f064d73803c17e086498879ccb9..08f6fc0f39f39994c9e67b9822433c0d0ffae4f3 100644 (file)
@@ -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; };
index 5469614cf8fe624e24bd1d8f26c1ec97ff9b04ad..82d32609704597d37198cce0140f53e34ff21828 100644 (file)
@@ -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" }
index 4b72bc8b9bae7adca5d79daf2fd17b67b3c2b5ee..d19ca2d9b4f60c7abbd32ecc51a5a9c673f25b47 100644 (file)
@@ -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];
 
index 12af1fdf682d9799d0da4b916c0c5bdc5050d0bc..36d68e727ad74cd942de9cf64e33925ab299c83f 100644 (file)
@@ -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 {