summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog13
-rw-r--r--gcc/testsuite/g++.dg/abi/anon2.C24
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle32.C6
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle37.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle39.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle42.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle45.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle47.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle48.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle49.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle50.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle51.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle53.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle54.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle55.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle56.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle57.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle58.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle59.C3
-rw-r--r--gcc/testsuite/g++.dg/abi/regparm1.C2
-rw-r--r--gcc/testsuite/g++.dg/cilk-plus/AN/braced_list.cc4
-rw-r--r--gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns.cc3
-rw-r--r--gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc3
-rw-r--r--gcc/testsuite/g++.dg/constexpr-null1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp/paste1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp/paste2.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp/ucn-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/Wliteral-suffix.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/Wunused-parm.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/__func__.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/access01.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-0.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-11.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alias-decl-debug-0.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alignof.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alignof2.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alignof3.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/alignof4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto1.C1
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto10.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto14.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto19.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto27.C6
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto29.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto30.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto36.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto41.C6
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto9.C27
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bad_array_new1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bad_array_new2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bind.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bracket1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bracket2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bracket3.C1
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/bracket4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/cast-bug.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/cast.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/collapse-bug.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/collapse.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-47969.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-49776.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-51369.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-52672.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-53094-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-53094-2.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-53094-3.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-55573.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-56302.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-99.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-abi1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-access.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-and.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr3.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array-tparm.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-array4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-attribute.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-attribute2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-auto.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-base.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-base2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-base3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-base4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-builtin1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-cache1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-complex.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-compound.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-condition.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-condition2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor10.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor11.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor7.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-data1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-data2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-decl.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-defarg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-defarg2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-delegating.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-delegating2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-delete.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-deref.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-diag1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-diag2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-diag3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-diag4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-diag5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-eh-spec.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-empty.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-empty2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-empty3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-empty4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-empty5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ex1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ex2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ex4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-expinst.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-explicit-inst.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-fnptr.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-friend.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-function1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-function3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-generated1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ice6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-initlist6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-is_literal.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-memfn1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-missing.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-mutable1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-nonstatic.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-nullptr.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-object1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-object2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-overflow2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-pedantic.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-pos1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-potential1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ptrmem.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ptrsub.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-pure.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-recursion.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ref3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ref4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-sassert.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-specialization.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static3.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-stmtexpr.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-string.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-switch.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-switch2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-synth1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-targ.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-template1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-template2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-template6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-throw.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-typedef1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-typeid.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-union.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-union2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-union3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-union5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-using.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-using2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-value.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-value2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-value3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-variadic.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-virtual.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-virtual4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-wstring1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-wstring2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dc1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dc2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dc3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dc5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype-1212.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype-33837.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype-33838.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype-54581.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype-refbug.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype10.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype12.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype15.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype17.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype2.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype27.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype29.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype3.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype30.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype31.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype32.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype33.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype34.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype35.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype36.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype40.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype47.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype48.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/decltype9.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/deduce.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted19.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted19a.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted22.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted27.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted29.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted30.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted31.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted32.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted34.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted35.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted39.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted40.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/defaulted9.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dependent1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/diag1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/elision.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/elision2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/elision_neg.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum11.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum12.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum13.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum19.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum21b.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum26.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum_base.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/enum_base_warn.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/error7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/explicit7.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/extern_template-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/extern_template-2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/fntmpdefarg1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/fntmpdefarg2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/fntmpdefarg4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum10.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum6.C9
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum7.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/forw_enum9.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/friend1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/friend2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-35.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-36.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-37.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-4.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-42.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit-copy.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit-trivial1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/implicit9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor10.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor12.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inh-ctor9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-array2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-arrray1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-ctor1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-deduce.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-explicit-sfinae.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-lifetime1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-lifetime2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-opt.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-postfix-open-square.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-protected.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-pure.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-value.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist-value2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist13.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist16.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist18.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist19.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist25.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist26.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist27.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist29.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist30.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist31.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist32.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist33.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist34.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist35.C6
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist36.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist37.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist38.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist39.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist40.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist41.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist42.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist43.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist44.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist45.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist46.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist47.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist48.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist49.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist50.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist51.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist52.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist53.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist54.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist55.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist56.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist57.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist58.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist59.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist62.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist63.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist64.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist65.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inline-ns1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inline-ns2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/inline-ns3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/iop.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-50220.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-__func__.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-array.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-auto1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-redundancy.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const2.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctor-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctors.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-debug.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-decltype1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-direct-init.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-field-names.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-for.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-lookup-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mixed.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mutable.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-non-const.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nop.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ns-scope.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-pass.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-qualified.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-recursive.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref-default.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-syntax1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template10.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-type.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/linkage2.C8
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/long_long.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/move1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/named.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/named_refs.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept01.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept02.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept03.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept04.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept05.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept06.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept07.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept08.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept09.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept18.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept19.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nolinkage1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/not_special.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-const1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-defer1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-defer2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-defer3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-defer4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-defer5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-eh1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-list1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-list2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-template1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-template2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi7.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr01.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr02.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr03.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr04.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr05.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr06.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr07.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr08.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr09.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr10.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr11.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr12.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr13.C12
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr14.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr15.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr16.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr17.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr18.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr19.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr20.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr21.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr22.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr23.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr27.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nullptr29.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overload-conv-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overload-conv-2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overload.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overload2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overload3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/overloadn.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/override1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/override2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/override4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/parse1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31431-2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31431.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31432.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31434.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31437.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31438.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31439.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31442.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31443.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31444.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31445.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr31993.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32114.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32115.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32125.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32126.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32127.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32128.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32252.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32253.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr32566.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr33839.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr33930.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr33955.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr33996.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34054.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34056.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34057.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34058.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34060.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr34061.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr38646.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr38795.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr39639.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr42844-2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr45908.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr47416.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr47476.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr48522.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr50025.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr50491.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr50901.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51150.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51216.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51225.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51313.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51420.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51463.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51547.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr51619.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr57101.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr57981.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr58072.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr59111.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr59641.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/ptrmem-cst-arg1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for10.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for11.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for12.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for13.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for14.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for15.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for16.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for17.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for18.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for19.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for7.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/range-for8.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/reference_collapsing.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/README3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/abi-empty7.C20
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/debug-debug7.C19
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/error-recovery1.C11
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/ext-cond1.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/ext-label10.C17
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/parse-ambig5.C8
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/regress/template-function1.C30
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-bitfield.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-bitfield2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-cast.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-cast2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-conv1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-deduce.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-deduce2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-dotstar.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-func.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-func2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-func3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-lvalue-req.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-reinterpret.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-restrict.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-return.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-template1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv1n.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv1p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv2n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv2p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv3n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv3p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv4n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv4p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv5n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv5p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv6n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv6p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv7n.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv7p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv8p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rv9p.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/rvo.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/scoped_enum.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/scoped_enum2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/scoped_enum_examples.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae16.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae19.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae27.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae29.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae31.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae32.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae33.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae34.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae35.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae36.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae43.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/sfinae9.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/static_assert7.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/std-layout1.C8
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/std_fext-numeric-literals.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/std_fno-ext-numeric-literals.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/syntax-err1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp-constructor-bug.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp-va-arg-bug.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp_default1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp_default2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp_default3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp_default4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/temp_default5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/template_deduction.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing2.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trailing7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/trivial1.C6
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-addr.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-args-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-args.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-args2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-clink-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-concat-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-concat.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-constexpr.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-declare-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-embed-quote.C7
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-friend.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-general.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-implicit-conv-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-inline.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-linkage-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-mangle.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-member-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-namespace.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-nofunc-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-nonempty-str-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-nospace-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-nosuffix-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-nounder-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-operator-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-overflow-neg.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-overflow.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-preproc-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-raw-op-string-neg.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-raw-op.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-raw-str.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-resolve.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-shadow-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-string-length.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-string-literal.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-suffix-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-systemheader.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-template.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/union1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/union2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/union3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/union4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/union5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/unnamed_refs.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-104.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-bind.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-crash1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-crash2.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-default.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ex9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-explicit1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-function.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-init.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-lambda.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-mem_fn.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-new.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-new2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-nondeduce1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-rref.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-throw.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-ttp.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-unify-2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-unify.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic-unresolved.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic100.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic101.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic102.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic103.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic105.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic106.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic107.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic108.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic109.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic110.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic111.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic112.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic113.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic114.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic115.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic116.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic117.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic118.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic121.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic122.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic124.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic135.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic143.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic149.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic15.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic17.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic19.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic23.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic24.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic25.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic26.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic27.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic28.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic29.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic30.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic31.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic32.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic33.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic34.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic35.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic36.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic37.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic38.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic39.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic4.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic40.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic41.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic42.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic43.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic44.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic45.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic46.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic47.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic48.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic49.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic50.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic51.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic52.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic53.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic54.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic55.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic56.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic57.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic58.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic59.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic60.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic63.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic64.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic65.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic66.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic67.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic68.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic69.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic70.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic71.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic72.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic73.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic75.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic76.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic77.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic78.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic79.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic80.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic81.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic82.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic83.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic84.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic85.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic86.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic87.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic88.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic89.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic90.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic91.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic92.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic93.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic94.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic95.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic96.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic97.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic98.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic99.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-33964.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34050.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34051-2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34051.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34052.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34055.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34102.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34103.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34219-2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34219.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34314.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34399.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34606.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34751.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34753.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34754.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34755.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34919.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-34961.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35023.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35024.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35026.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35147.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35242.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35243.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-35331.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-40092.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-51314.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-55323.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/vt-55542.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/warn_cxx0x.C1
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/warn_cxx0x2.C1
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/warn_cxx0x3.C1
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/attr-deprecated-neg.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/attr-deprecated.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-dtor1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn14.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn15.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn16.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn17.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn18.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn19.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn20.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn21.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn22.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn23.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn24.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn3.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn4.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-fn9.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-mangle1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/auto-neg1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/cplusplus.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/digit-sep-cxx11-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/digit-sep.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/fn-generic-member-ool.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-deduce-mult.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-cfun.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-dep.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-mixed.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-udt.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-vla1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-x.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-xcfun.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-xudt.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init1.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init2.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init3.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init5.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init6.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-init7.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/mangle1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr57640.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58500.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58533.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58534.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58535.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58536.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58548.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58549.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58637.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr58708.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59110.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59112.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59113.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59629.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59635.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59636.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr59638.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60052.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60053.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60064.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60065.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60190.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60311.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60376.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr60377.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/regress1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/system-binary-constants-1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/udlit-char-template-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/udlit-char-template.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/udlit-empty-string-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/udlit-enc-prefix-neg.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/udlit-userdef-string.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla-initlist1.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla1.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla10.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla11.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla12.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla13.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla2.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla3.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla4.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla5.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla6.C3
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla8.C2
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/vla9.C2
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/anonname1.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/auto1.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/enum1.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/pr52260.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/pubnames-2.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/pubnames-3.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/rv1.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C4
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-params-7.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/localclass1.C3
-rw-r--r--gcc/testsuite/g++.dg/debug/nullptr01.C3
-rw-r--r--gcc/testsuite/g++.dg/eh/dtor3.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/alias-decl-attr1.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/alias-decl-attr2.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/alias-decl-attr3.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/alias-decl-attr4.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/anon-struct4.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/bases.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/complex8.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/desig6.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/has_nothrow_constructor-2.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/has_nothrow_copy-8.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/int128-4.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/is_final.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/is_literal_type1.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/is_pod.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/pr57509.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type10.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type3.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type5.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type6.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type7.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type8.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/underlying_type9.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-array.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-badconcat.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-badconcat2.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-cvt.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-cxx0x.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-gnuxx0x.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-mangle.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-rtti.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-type.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-typedef-cxx0x.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf-typespec.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf16-1.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf16-2.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf16-3.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf16-4.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf32-1.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf32-2.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf32-3.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf32-4.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/utf8-1.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/utf8-2.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/vector18.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/vector19.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/vector20.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/vector23.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/vector26.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/visibility/anon8.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/vla11.C3
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr38639.C4
-rw-r--r--gcc/testsuite/g++.dg/gomp/tls-wrap4.C3
-rw-r--r--gcc/testsuite/g++.dg/init/array37.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress5.C)2
-rw-r--r--gcc/testsuite/g++.dg/init/brace2.C2
-rw-r--r--gcc/testsuite/g++.dg/init/brace6.C2
-rw-r--r--gcc/testsuite/g++.dg/init/ctor11.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/ctor1.C)2
-rw-r--r--gcc/testsuite/g++.dg/init/no-elide1.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/no-elide1.C)2
-rw-r--r--gcc/testsuite/g++.dg/init/null1.C2
-rw-r--r--gcc/testsuite/g++.dg/init/pr25811.C36
-rw-r--r--gcc/testsuite/g++.dg/init/pr29043.C6
-rw-r--r--gcc/testsuite/g++.dg/init/pr43719.C36
-rw-r--r--gcc/testsuite/g++.dg/init/pr44086.C2
-rw-r--r--gcc/testsuite/g++.dg/ipa/devirt-12.C4
-rw-r--r--gcc/testsuite/g++.dg/ipa/devirt-29.C4
-rw-r--r--gcc/testsuite/g++.dg/ipa/pr56310.C4
-rw-r--r--gcc/testsuite/g++.dg/opt/builtins2.C2
-rw-r--r--gcc/testsuite/g++.dg/opt/dump1.C3
-rw-r--r--gcc/testsuite/g++.dg/opt/pr56381.C4
-rw-r--r--gcc/testsuite/g++.dg/opt/pr57661.C4
-rw-r--r--gcc/testsuite/g++.dg/opt/pr59947.C4
-rw-r--r--gcc/testsuite/g++.dg/opt/value-init1.C3
-rw-r--r--gcc/testsuite/g++.dg/other/anon-union3.C2
-rw-r--r--gcc/testsuite/g++.dg/other/anon3.C2
-rw-r--r--gcc/testsuite/g++.dg/other/crash-6.C4
-rw-r--r--gcc/testsuite/g++.dg/other/crash-7.C4
-rw-r--r--gcc/testsuite/g++.dg/other/crash-8.C3
-rw-r--r--gcc/testsuite/g++.dg/other/final1.C4
-rw-r--r--gcc/testsuite/g++.dg/other/final2.C3
-rw-r--r--gcc/testsuite/g++.dg/other/gc5.C4
-rw-r--r--gcc/testsuite/g++.dg/other/isnan.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/isnan.C)1
-rw-r--r--gcc/testsuite/g++.dg/other/var_copy-1.C3
-rw-r--r--gcc/testsuite/g++.dg/other/vector-compare.C4
-rw-r--r--gcc/testsuite/g++.dg/parse/ambig9.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress6.C)1
-rw-r--r--gcc/testsuite/g++.dg/parse/bitfield5.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/bitfield-err1.C)1
-rw-r--r--gcc/testsuite/g++.dg/parse/crash56.C3
-rw-r--r--gcc/testsuite/g++.dg/parse/error11.C34
-rw-r--r--gcc/testsuite/g++.dg/parse/error12.C6
-rw-r--r--gcc/testsuite/g++.dg/parse/template21.C2
-rw-r--r--gcc/testsuite/g++.dg/parse/tmpl-outside1.C2
-rw-r--r--gcc/testsuite/g++.dg/parse/tmpl-outside2.C2
-rw-r--r--gcc/testsuite/g++.dg/plugin/plugin.exp2
-rw-r--r--gcc/testsuite/g++.dg/pr57175.C3
-rw-r--r--gcc/testsuite/g++.dg/pr57878.C3
-rw-r--r--gcc/testsuite/g++.dg/simulate-thread/atomics-1.C3
-rw-r--r--gcc/testsuite/g++.dg/simulate-thread/atomics-2.C3
-rw-r--r--gcc/testsuite/g++.dg/template/access28.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress4.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/aggr-init1.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress1.C)2
-rw-r--r--gcc/testsuite/g++.dg/template/arg2.C2
-rw-r--r--gcc/testsuite/g++.dg/template/array27.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/array1.C)2
-rw-r--r--gcc/testsuite/g++.dg/template/canon-type-12.C2
-rw-r--r--gcc/testsuite/g++.dg/template/canon-type-9.C3
-rw-r--r--gcc/testsuite/g++.dg/template/condition1.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/condition1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/const5.C2
-rw-r--r--gcc/testsuite/g++.dg/template/const7.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/template-const1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/const8.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/template-const2.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/defarg12.C2
-rw-r--r--gcc/testsuite/g++.dg/template/dependent-expr8.C3
-rw-r--r--gcc/testsuite/g++.dg/template/enum8.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/enum1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/error-recovery3.C8
-rw-r--r--gcc/testsuite/g++.dg/template/explicit-args2.C2
-rw-r--r--gcc/testsuite/g++.dg/template/inherit6.C3
-rw-r--r--gcc/testsuite/g++.dg/template/inherit7.C3
-rw-r--r--gcc/testsuite/g++.dg/template/koenig10.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress3.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/new12.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/call1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/non-const1.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/non-const1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/nontype25.C4
-rw-r--r--gcc/testsuite/g++.dg/template/ptrmem25.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/ptrmem1.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/ptrmem26.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/regress2.C)1
-rw-r--r--gcc/testsuite/g++.dg/template/qualttp18.C2
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae15.C3
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae16.C3
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae20.C2
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae22.C2
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae23.C2
-rw-r--r--gcc/testsuite/g++.dg/template/typedef25.C3
-rw-r--r--gcc/testsuite/g++.dg/template/typedef38.C3
-rw-r--r--gcc/testsuite/g++.dg/template/unify11.C2
-rw-r--r--gcc/testsuite/g++.dg/template/value-dep1.C (renamed from gcc/testsuite/g++.dg/cpp0x/regress/value-dep1.C)1
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-cse.C4
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-ice.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-ice2.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-order1.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-order2.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-wrap1.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-wrap2.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-wrap3.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local-wrap4.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local1.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local2.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local2g.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local6.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local6g.C3
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local7.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local7g.C2
-rw-r--r--gcc/testsuite/g++.dg/tls/thread_local8.C2
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-1.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-2.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-3.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-4.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-5.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/noexcept-6.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/pr58516.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/pr58635-1.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/pr58635-2.C4
-rw-r--r--gcc/testsuite/g++.dg/tm/template-2.C4
-rw-r--r--gcc/testsuite/g++.dg/torture/pr40991.C2
-rw-r--r--gcc/testsuite/g++.dg/torture/pr47559.C4
-rw-r--r--gcc/testsuite/g++.dg/torture/pr49770.C4
-rw-r--r--gcc/testsuite/g++.dg/torture/pr51198.C2
-rw-r--r--gcc/testsuite/g++.dg/torture/pr53161.C2
-rw-r--r--gcc/testsuite/g++.dg/torture/pr53602.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/pr55260-1.C4
-rw-r--r--gcc/testsuite/g++.dg/torture/pr56768.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/pr59265.C4
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-main.inc3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v16hi.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v16qi.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v2df.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v2di.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v2sf.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v2si.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v4df.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v4di.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v4sf.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v4si.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v8hi.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v8qi.C3
-rw-r--r--gcc/testsuite/g++.dg/torture/vshuf-v8si.C3
-rw-r--r--gcc/testsuite/g++.dg/tree-prof/pr59255.C2
-rw-r--r--gcc/testsuite/g++.dg/tree-ssa/pr18178.C2
-rw-r--r--gcc/testsuite/g++.dg/ubsan/cxx11-shift-1.C4
-rw-r--r--gcc/testsuite/g++.dg/ubsan/cxx11-shift-2.C4
-rw-r--r--gcc/testsuite/g++.dg/ubsan/cxx1y-vla.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/Wconversion-null-3.C2
-rw-r--r--gcc/testsuite/g++.dg/warn/Wdiv-by-zero-2.C3
-rw-r--r--gcc/testsuite/g++.dg/warn/Wsequence-point-2.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/Wshadow-6.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/Wunused-var-19.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/Wvla-2.C2
-rw-r--r--gcc/testsuite/g++.dg/warn/delete-non-virtual-dtor.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/format8.C2
-rw-r--r--gcc/testsuite/g++.dg/warn/pr13358-3.C4
-rw-r--r--gcc/testsuite/g++.dg/warn/pr13358-4.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/crash64.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/enum11.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/enum8.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/enum9.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/friend3.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/init2.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/init4.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/misc14.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.jason/cond.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.law/init1.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.law/operators32.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/anon9.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/linkage1.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/linkage2.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/linkage4.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/using3.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/enum6.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/explicit70.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/overload13.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/t29.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/t30.C2
-rw-r--r--gcc/testsuite/lib/g++-dg.exp4
-rw-r--r--gcc/testsuite/lib/target-supports.exp33
1474 files changed, 1851 insertions, 2147 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f516a7554d1..fb7bf706cca 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,16 @@
+2014-03-07 Jason Merrill <jason@redhat.com>
+
+ * lib/g++-dg.exp (g++-dg-runtest): Run tests in C++1y mode, too.
+ * lib/target-supports.exp (check_effective_target_c++11): Now
+ means C++11 and up.
+ (check_effective_target_c++11_only): New.
+ (check_effective_target_c++11_down): New.
+ (check_effective_target_c++1y): New.
+ (check_effective_target_c++1y_only): New.
+ (check_effective_target_c++98_only): Rename from
+ check_effective_target_c++98.
+ * g++.dg/*: Use { target c++11 } instead of -std=c++11.
+
2014-03-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58609
diff --git a/gcc/testsuite/g++.dg/abi/anon2.C b/gcc/testsuite/g++.dg/abi/anon2.C
index d90eb333aa3..cee92371043 100644
--- a/gcc/testsuite/g++.dg/abi/anon2.C
+++ b/gcc/testsuite/g++.dg/abi/anon2.C
@@ -6,9 +6,9 @@ namespace N1 {
typedef enum { X, Y } A;
typedef struct { } B;
struct C {
- // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N11D1C3fn1ENS0_1BE" { target { ! c++98 } } } }
+ // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N11D1C3fn1ENS0_1BE" { target c++11 } } }
static void fn1 (B) { }
- // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N11D1C3fn2ES1_" { target { ! c++98 } } } }
+ // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N11D1C3fn2ES1_" { target c++11 } } }
static void fn2 (C) { }
};
} D;
@@ -22,10 +22,10 @@ namespace N2 {
typedef enum { X, Y } A;
typedef struct { } B;
struct C {
- // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N23._31C3fn1ENS0_1BE" { target { ! c++98 } } } }
- static void fn1 (B) { } // { dg-error "no linkage" "" { target c++98 } }
- // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N23._31C3fn2ES1_" { target { ! c++98 } } } }
- static void fn2 (C) { } // { dg-error "no linkage" "" { target c++98 } }
+ // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N23._31C3fn1ENS0_1BE" { target c++11 } } }
+ static void fn1 (B) { } // { dg-error "no linkage" "" { target { ! c++11 } } }
+ // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N23._31C3fn2ES1_" { target c++11 } } }
+ static void fn2 (C) { } // { dg-error "no linkage" "" { target { ! c++11 } } }
};
} const D;
@@ -38,9 +38,9 @@ namespace N3 {
typedef enum { X, Y } A;
typedef struct { } B;
template <class T> struct C {
- // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N31D1CIiE3fn1ENS0_1BE" { target { ! c++98 } } } }
+ // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N31D1CIiE3fn1ENS0_1BE" { target c++11 } } }
static void fn1 (B) { }
- // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N31D1CIiE3fn2ES2_" { target { ! c++98 } } } }
+ // { dg-final { scan-assembler ".weak\(_definition\)?\[ \t\]_?_ZN2N31D1CIiE3fn2ES2_" { target c++11 } } }
static void fn2 (C) { }
};
} D;
@@ -54,10 +54,10 @@ namespace N4 {
typedef enum { X, Y } A;
typedef struct { } B;
template <class T> struct C {
- // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N43._91CIiE3fn1ENS0_1BE" { target { ! c++98 } } } }
- static void fn1 (B) { } // { not-dg-error "no linkage" "" { target c++98 } }
- // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N43._91CIiE3fn2ES2_" { target { ! c++98 } } } }
- static void fn2 (C) { } // { not-dg-error "no linkage" "" { target c++98 } }
+ // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N43._91CIiE3fn1ENS0_1BE" { target c++11 } } }
+ static void fn1 (B) { } // { not-dg-error "no linkage" "" { target { ! c++11 } } }
+ // { dg-final { scan-assembler-not ".weak\(_definition\)?\[ \t\]_?_ZN2N43._91CIiE3fn2ES2_" { target c++11 } } }
+ static void fn2 (C) { } // { not-dg-error "no linkage" "" { target { ! c++11 } } }
};
} const D;
diff --git a/gcc/testsuite/g++.dg/abi/mangle32.C b/gcc/testsuite/g++.dg/abi/mangle32.C
index 244d07490f8..6ae0113a27b 100644
--- a/gcc/testsuite/g++.dg/abi/mangle32.C
+++ b/gcc/testsuite/g++.dg/abi/mangle32.C
@@ -3,7 +3,7 @@
// namespace-scope unnamed types have no linkage, so we only test that they
// are distinct.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
typedef struct { } *A;
typedef struct { } *B;
@@ -14,7 +14,7 @@ void f(B) { }
struct C
{
typedef struct { }* D;
- typedef enum { }* E;
+ typedef enum { e }* E;
};
// { dg-final { scan-assembler "_Z2g1PN1CUt_E" } }
@@ -30,7 +30,7 @@ void h2(T t) { }
inline void j()
{
- typedef enum { }* F;
+ typedef enum { f }* F;
// { dg-final { scan-assembler "_Z2h1IPZ1jvEUt_EvT_" } }
h1(F());
typedef struct { }* G;
diff --git a/gcc/testsuite/g++.dg/abi/mangle37.C b/gcc/testsuite/g++.dg/abi/mangle37.C
index 7270861ac5c..691566b384b 100644
--- a/gcc/testsuite/g++.dg/abi/mangle37.C
+++ b/gcc/testsuite/g++.dg/abi/mangle37.C
@@ -1,5 +1,5 @@
// Testcase for mangling of expressions involving operator names.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_Z1fI1AEDTclonplfp_fp_EET_" } }
// { dg-final { scan-assembler "_Z1gI1AEDTclonplIT_Efp_fp_EES1_" } }
// { dg-final { scan-assembler "_Z1hI1AEDTcldtfp_miEET_" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle39.C b/gcc/testsuite/g++.dg/abi/mangle39.C
index 28963561065..a36f98127cc 100644
--- a/gcc/testsuite/g++.dg/abi/mangle39.C
+++ b/gcc/testsuite/g++.dg/abi/mangle39.C
@@ -1,5 +1,6 @@
// PR c++/42338
-// { dg-options "-std=c++0x -fabi-version=5" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=5" }
// { dg-final { scan-assembler "_Z1fIPiEDTcmppfp_Li0EET_" } }
// { dg-final { scan-assembler "_Z1gIiEvRK1AIT_EDTixfL0p_Li0EE" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle42.C b/gcc/testsuite/g++.dg/abi/mangle42.C
index b7e3bd561eb..c7cce5e7ff1 100644
--- a/gcc/testsuite/g++.dg/abi/mangle42.C
+++ b/gcc/testsuite/g++.dg/abi/mangle42.C
@@ -1,6 +1,7 @@
// Origin: PR c++/43375
// { dg-do compile { target i?86-*-* x86_64-*-* } }
-// { dg-options "-msse2 -std=gnu++0x" }
+// { dg-require-effective-target c++11 }
+// { dg-options "-msse2" }
// { dg-require-effective-target sse2 }
typedef float __v4sf __attribute__ ((__vector_size__ (16)));
diff --git a/gcc/testsuite/g++.dg/abi/mangle45.C b/gcc/testsuite/g++.dg/abi/mangle45.C
index 3ce9abcb0e7..5e202a2f52b 100644
--- a/gcc/testsuite/g++.dg/abi/mangle45.C
+++ b/gcc/testsuite/g++.dg/abi/mangle45.C
@@ -1,5 +1,6 @@
// Testcase for mangling of parameters used other than in a trailing return type
-// { dg-options "-std=c++0x -fabi-version=5" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=5" }
template<class T> void f(T p, decltype(p)) { } // L = 1
template<class T> void g(T p, decltype(p) (*)()) { } // L = 1
diff --git a/gcc/testsuite/g++.dg/abi/mangle47.C b/gcc/testsuite/g++.dg/abi/mangle47.C
index 2c1b636dc05..3bb5e9ab7e3 100644
--- a/gcc/testsuite/g++.dg/abi/mangle47.C
+++ b/gcc/testsuite/g++.dg/abi/mangle47.C
@@ -1,5 +1,5 @@
// PR c++/47132
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_Z1fIiEDToRfp_Li1EET_" } }
template <typename T>
diff --git a/gcc/testsuite/g++.dg/abi/mangle48.C b/gcc/testsuite/g++.dg/abi/mangle48.C
index 6c0e99c8de8..f9afa1ad0b2 100644
--- a/gcc/testsuite/g++.dg/abi/mangle48.C
+++ b/gcc/testsuite/g++.dg/abi/mangle48.C
@@ -1,5 +1,5 @@
// Testcase for 'this' mangling
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct B
{
diff --git a/gcc/testsuite/g++.dg/abi/mangle49.C b/gcc/testsuite/g++.dg/abi/mangle49.C
index a258dc2d443..3795c556d0a 100644
--- a/gcc/testsuite/g++.dg/abi/mangle49.C
+++ b/gcc/testsuite/g++.dg/abi/mangle49.C
@@ -1,5 +1,6 @@
// PR c++/49932
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
template < typename T >
auto
diff --git a/gcc/testsuite/g++.dg/abi/mangle50.C b/gcc/testsuite/g++.dg/abi/mangle50.C
index df7afb97edc..90566c2198d 100644
--- a/gcc/testsuite/g++.dg/abi/mangle50.C
+++ b/gcc/testsuite/g++.dg/abi/mangle50.C
@@ -1,5 +1,5 @@
// DR 342, PR c++/48582
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct A;
template < void * = nullptr > void f() { }
diff --git a/gcc/testsuite/g++.dg/abi/mangle51.C b/gcc/testsuite/g++.dg/abi/mangle51.C
index 4992f1a327c..e7c2c747a9b 100644
--- a/gcc/testsuite/g++.dg/abi/mangle51.C
+++ b/gcc/testsuite/g++.dg/abi/mangle51.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
void* operator new (__SIZE_TYPE__, void *p) { return p; }
int i;
diff --git a/gcc/testsuite/g++.dg/abi/mangle53.C b/gcc/testsuite/g++.dg/abi/mangle53.C
index b279182d8c4..13f9e711c10 100644
--- a/gcc/testsuite/g++.dg/abi/mangle53.C
+++ b/gcc/testsuite/g++.dg/abi/mangle53.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
bool b;
// { dg-final { scan-assembler "_Z1fIiEDTquL_Z1bEfp_twLi42EET_" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle54.C b/gcc/testsuite/g++.dg/abi/mangle54.C
index ea98df17d36..926275c8cbb 100644
--- a/gcc/testsuite/g++.dg/abi/mangle54.C
+++ b/gcc/testsuite/g++.dg/abi/mangle54.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
int i;
// { dg-final { scan-assembler "_Z2f1IiEDTppfp_ET_" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle55.C b/gcc/testsuite/g++.dg/abi/mangle55.C
index 72caadcc24d..72ea83444c8 100644
--- a/gcc/testsuite/g++.dg/abi/mangle55.C
+++ b/gcc/testsuite/g++.dg/abi/mangle55.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A { int i; };
// { dg-final { scan-assembler "_Z2f1Ii1AEDTdsfp_fp0_ET0_MS2_T_" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle56.C b/gcc/testsuite/g++.dg/abi/mangle56.C
index 0fd270169d6..5c66db5581d 100644
--- a/gcc/testsuite/g++.dg/abi/mangle56.C
+++ b/gcc/testsuite/g++.dg/abi/mangle56.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template <class T> T g(T t1, T t2) { return t2; }
// { dg-final { scan-assembler "_Z2f1IiEDTcl1gfp_ilEEET_" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle57.C b/gcc/testsuite/g++.dg/abi/mangle57.C
index 3d9d81e55ba..cd59cb87b1e 100644
--- a/gcc/testsuite/g++.dg/abi/mangle57.C
+++ b/gcc/testsuite/g++.dg/abi/mangle57.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
template<typename T> int cmp1(T a, T b);
int cmp2(char a, char b);
diff --git a/gcc/testsuite/g++.dg/abi/mangle58.C b/gcc/testsuite/g++.dg/abi/mangle58.C
index 54b16f25699..abcb3ca47ac 100644
--- a/gcc/testsuite/g++.dg/abi/mangle58.C
+++ b/gcc/testsuite/g++.dg/abi/mangle58.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
template<typename T, int (*cmp)(T, T)> struct A { };
struct B {
diff --git a/gcc/testsuite/g++.dg/abi/mangle59.C b/gcc/testsuite/g++.dg/abi/mangle59.C
index 3c88ec87486..ba0befddc50 100644
--- a/gcc/testsuite/g++.dg/abi/mangle59.C
+++ b/gcc/testsuite/g++.dg/abi/mangle59.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
// { dg-final { scan-assembler "_Z1fIiEDTcmdlfp_psfp_EPT_" } }
template <class T> auto f (T* p) -> decltype(delete p, +p) { return p; }
diff --git a/gcc/testsuite/g++.dg/abi/regparm1.C b/gcc/testsuite/g++.dg/abi/regparm1.C
index 42a54a0e02a..c4710464acc 100644
--- a/gcc/testsuite/g++.dg/abi/regparm1.C
+++ b/gcc/testsuite/g++.dg/abi/regparm1.C
@@ -1,6 +1,6 @@
// PR c++/29911 (9381)
-// { dg-options -std=c++0x }
// { dg-do run { target i?86-*-* x86_64-*-* } }
+// { dg-require-effective-target c++11 }
extern "C" int printf(const char *, ...);
diff --git a/gcc/testsuite/g++.dg/cilk-plus/AN/braced_list.cc b/gcc/testsuite/g++.dg/cilk-plus/AN/braced_list.cc
index b91de7a499d..3521f87258a 100644
--- a/gcc/testsuite/g++.dg/cilk-plus/AN/braced_list.cc
+++ b/gcc/testsuite/g++.dg/cilk-plus/AN/braced_list.cc
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-fcilkplus -std=c++11 " } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-fcilkplus" } */
int main (void)
{
diff --git a/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns.cc b/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns.cc
index 7448d1a8a30..9b3d2cc26e7 100644
--- a/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns.cc
+++ b/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns.cc
@@ -1,6 +1,7 @@
/* { dg-options "-fcilkplus" } */
/* { dg-do run { target i?86-*-* x86_64-*-* arm*-*-* } } */
-/* { dg-options "-std=c++11 -fcilkplus -lcilkrts" { target { i?86-*-* x86_64-*-* arm*-*-* } } } */
+// { dg-require-effective-target c++11 }
+/* { dg-options "-fcilkplus -lcilkrts" { target { i?86-*-* x86_64-*-* arm*-*-* } } } */
#define FIRST_NUMBER 5
#define SECOND_NUMBER 3
#define HAVE_IO 0
diff --git a/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc b/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc
index 2667f5a9992..b6e3fea8531 100644
--- a/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc
+++ b/gcc/testsuite/g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc
@@ -1,6 +1,7 @@
/* { dg-options "-fcilkplus" } */
/* { dg-do run { target i?86-*-* x86_64-*-* arm*-*-* } } */
-/* { dg-options "-std=c++11 -fcilkplus -lcilkrts" { target { i?86-*-* x86_64-*-* arm*-*-* } } } */
+// { dg-require-effective-target c++11 }
+/* { dg-options "-fcilkplus -lcilkrts" { target { i?86-*-* x86_64-*-* arm*-*-* } } } */
#define FIRST_NUMBER 5
#define SECOND_NUMBER 3
diff --git a/gcc/testsuite/g++.dg/constexpr-null1.C b/gcc/testsuite/g++.dg/constexpr-null1.C
index 44cf9a0b9c6..b9ec7b5f3f5 100644
--- a/gcc/testsuite/g++.dg/constexpr-null1.C
+++ b/gcc/testsuite/g++.dg/constexpr-null1.C
@@ -1,5 +1,5 @@
// PR c++/46670
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
extern unsigned char __TBB_ReverseByte(unsigned char src);
extern unsigned char *reversed;
diff --git a/gcc/testsuite/g++.dg/cpp/paste1.C b/gcc/testsuite/g++.dg/cpp/paste1.C
index a33fdf5c436..accc762cac0 100644
--- a/gcc/testsuite/g++.dg/cpp/paste1.C
+++ b/gcc/testsuite/g++.dg/cpp/paste1.C
@@ -1,6 +1,5 @@
// PR preprocessor/57757
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#define S(x) x
extern S("C")void exit (int);
diff --git a/gcc/testsuite/g++.dg/cpp/paste2.C b/gcc/testsuite/g++.dg/cpp/paste2.C
index 89a659e6bb9..6f83a86410b 100644
--- a/gcc/testsuite/g++.dg/cpp/paste2.C
+++ b/gcc/testsuite/g++.dg/cpp/paste2.C
@@ -1,6 +1,6 @@
// PR preprocessor/57757
-// { dg-do compile }
-// { dg-options "-std=c++11 -save-temps" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-save-temps" }
// { dg-final cleanup-saved-temps }
#define S(x) x
diff --git a/gcc/testsuite/g++.dg/cpp/ucn-1.C b/gcc/testsuite/g++.dg/cpp/ucn-1.C
index 354e1d976b0..b2d4f98fa0b 100644
--- a/gcc/testsuite/g++.dg/cpp/ucn-1.C
+++ b/gcc/testsuite/g++.dg/cpp/ucn-1.C
@@ -1,5 +1,6 @@
// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2170.html
-// { dg-options "-std=c++0x -fextended-identifiers" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fextended-identifiers" }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/Wliteral-suffix.C b/gcc/testsuite/g++.dg/cpp0x/Wliteral-suffix.C
index 520d77ef5c5..b9b975b5dc2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/Wliteral-suffix.C
+++ b/gcc/testsuite/g++.dg/cpp0x/Wliteral-suffix.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Make sure -Wliteral-suffix is enabled by default and
// triggers as expected.
diff --git a/gcc/testsuite/g++.dg/cpp0x/Wunused-parm.C b/gcc/testsuite/g++.dg/cpp0x/Wunused-parm.C
index 7f6c6ffc96b..232e484356e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/Wunused-parm.C
+++ b/gcc/testsuite/g++.dg/cpp0x/Wunused-parm.C
@@ -1,5 +1,6 @@
// PR c++/57211
-// { dg-options "-std=c++11 -Wunused-parameter" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wunused-parameter" }
template <class T> T&& move(T&);
diff --git a/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C b/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C
index 9acfafe2be9..a9dd155475d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -Wzero-as-null-pointer-constant" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wzero-as-null-pointer-constant" }
struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C b/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C
index eea2c2fcf31..5cb4022afa6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C
@@ -1,5 +1,6 @@
// PR c++/56373
-// { dg-options "-std=c++11 -Wzero-as-null-pointer-constant" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wzero-as-null-pointer-constant" }
struct shared_ptr
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/__func__.C b/gcc/testsuite/g++.dg/cpp0x/__func__.C
index a7d5633614a..7c2a712d750 100644
--- a/gcc/testsuite/g++.dg/cpp0x/__func__.C
+++ b/gcc/testsuite/g++.dg/cpp0x/__func__.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
const char* foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/access01.C b/gcc/testsuite/g++.dg/cpp0x/access01.C
index a6c86016146..55c951f97d6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/access01.C
+++ b/gcc/testsuite/g++.dg/cpp0x/access01.C
@@ -1,5 +1,5 @@
// PR c++/49042
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
class A
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-0.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-0.C
index 7f5d361a627..bcefe3fc94f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-0.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-0.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<class> class TT> struct X { };
template<class> struct Y { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-1.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-1.C
index e3704d39f4a..c52ab46aa5e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// These also represent tests for printing alias declarations and
// their instantiations.
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C
index b4e80f411c0..7c8bad9834e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class T> using Ptr = T*;
Ptr<unsigned>; // { dg-error "does not declare anything" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-11.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-11.C
index 80795a8304d..54574337b20 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-11.C
@@ -1,8 +1,8 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
namespace N
{
template <class T> using U = T*;
-};
+}
void f(N::U<int>) { blah; } // { dg-error "void f(N::U<int>)|not declared" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-12.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-12.C
index 758d180e1f9..df23e55198d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-12.C
@@ -1,4 +1,4 @@
// Origin: PR c++/51027
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
using INT = int // { dg-error "expected|;|at end of input" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-13.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-13.C
index a7a55ddc168..368e5af557e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-13.C
@@ -1,5 +1,5 @@
// Origin PR c++/51191
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template< class T >
class ClassTemplate {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C
index 9e6b19cde93..52f2201a03d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C
@@ -1,5 +1,5 @@
// Origin: PR c++/51145
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-15.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-15.C
index 6ef8bf7eb4a..2d617ab81fc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-15.C
@@ -1,5 +1,5 @@
// Origin PR c++/51194
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class U, class V> //#1
struct foo {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-16.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-16.C
index ce6ad0a6216..d934a93bd47 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-16.C
@@ -1,5 +1,5 @@
// Origin PR c++/51143
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
using A0 = struct B0 { void f() {} };
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-17.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-17.C
index 41b1c950fcd..bf947fb811e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-17.C
@@ -1,5 +1,5 @@
// Origin PR c++/51289
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename a, template <typename, typename> class b>
struct foo {
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-18.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-18.C
index ba655613117..199b05483f8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-18.C
@@ -1,5 +1,5 @@
// Origin: PR c++/51541
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename Z> using ::T = void(int n); // { dg-error "" }
template<typename Z> using operator int = void(int n); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C
index d8a71a48107..0204f6454f4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T> struct S0 {};
template<class T> using AS0 = S0<T>;
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-25.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-25.C
index e72bd350912..a388ae41089 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-25.C
@@ -1,5 +1,5 @@
// PR c++/54859
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<unsigned N>
using Num = int;
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-3.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-3.C
index 072cfb1f03a..2204c250cec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Exercise some member alias templates ...
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-4.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-4.C
index c7da542189f..60edaf7e53b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-4.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// [temp.alias]/3:
// The type-id in an alias template declaration shall not refer
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-5.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-5.C
index f57a67a0459..559fc51c5cf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-5.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// alias template of a partial specialization
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-6.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-6.C
index 11440385c33..e0faf2bcb2d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-6.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Alias template of non-class types.
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-7.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-7.C
index a1a6a362ec3..f5911d9df58 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Add arguments to unbound template template parameter.
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-8.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-8.C
index 80c2fdd6743..c40fbbbbcce 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-8.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {
template <class U> using C = U;
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-9.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-9.C
index b4a23d0b853..5794617d515 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-9.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class T>
struct A {
diff --git a/gcc/testsuite/g++.dg/cpp0x/alias-decl-debug-0.C b/gcc/testsuite/g++.dg/cpp0x/alias-decl-debug-0.C
index 5b5d15a6271..50df842315f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alias-decl-debug-0.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alias-decl-debug-0.C
@@ -1,6 +1,7 @@
// Origin: PR c++/51032
// { dg-skip-if "No stabs" { aarch64*-*-* mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* nios2-*-* } { "*" } { "" } }
-// { dg-options "-std=c++11 -gstabs+" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-gstabs+" }
template <class C>
struct A {
diff --git a/gcc/testsuite/g++.dg/cpp0x/alignof.C b/gcc/testsuite/g++.dg/cpp0x/alignof.C
index a0a556131ca..92422f95a5d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alignof.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alignof.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int main(void)
{
static_assert(alignof(int) == __alignof(int), "alignof(int) does not equal __alignof(int)");
diff --git a/gcc/testsuite/g++.dg/cpp0x/alignof2.C b/gcc/testsuite/g++.dg/cpp0x/alignof2.C
index 9683a1eb613..d571d9d77dc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alignof2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alignof2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
int main(void)
{
alignof(int); //ok with a type but not with an expression
diff --git a/gcc/testsuite/g++.dg/cpp0x/alignof3.C b/gcc/testsuite/g++.dg/cpp0x/alignof3.C
index 75eff1f8ae0..c349cec06ea 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alignof3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alignof3.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
int main(void)
{
alignof(void (void)); // { dg-warning "function type" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/alignof4.C b/gcc/testsuite/g++.dg/cpp0x/alignof4.C
index a05baa89295..ca3c47ad67d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/alignof4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/alignof4.C
@@ -1,5 +1,5 @@
// PR c++/51316
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto1.C b/gcc/testsuite/g++.dg/cpp0x/auto1.C
index f5c0ea6e4d3..b8d39051821 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto1.C
@@ -1,3 +1,4 @@
+// { dg-do compile { target c++11 } }
// { dg-options "-std=c++98 -Wc++11-compat" }
// Test warning for use of auto in C++98 mode with C++11
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto10.C b/gcc/testsuite/g++.dg/cpp0x/auto10.C
index 82e98ff8adc..296873eeda8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto10.C
@@ -1,6 +1,5 @@
// Positive test for auto
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <typeinfo>
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto11.C b/gcc/testsuite/g++.dg/cpp0x/auto11.C
index dcdb28c0480..208f512a685 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto11.C
@@ -1,5 +1,5 @@
// PR c++/38256
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto14.C b/gcc/testsuite/g++.dg/cpp0x/auto14.C
index 726fa05651d..0ada2654468 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto14.C
@@ -1,6 +1,5 @@
// PR c++/40306, c++/40307
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
template< typename T >
struct test {
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto15.C b/gcc/testsuite/g++.dg/cpp0x/auto15.C
index 1dca688a6ed..ca5758ddf2e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto15.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template< typename Fn > struct function;
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto16.C b/gcc/testsuite/g++.dg/cpp0x/auto16.C
index 3610662b951..e9754f3251c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto16.C
@@ -1,5 +1,5 @@
// PR c++/40619
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename U> struct X {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto17.C b/gcc/testsuite/g++.dg/cpp0x/auto17.C
index f04b89f30ce..7f9529e3b53 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto17.C
@@ -1,5 +1,5 @@
// PR c++/42567
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename B>
struct A {
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto18.C b/gcc/testsuite/g++.dg/cpp0x/auto18.C
index a5c521c685b..e6ddf0c247d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto18.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void f()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto19.C b/gcc/testsuite/g++.dg/cpp0x/auto19.C
index 66c0cfe0528..d27d4375d41 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto19.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Explicit {
Explicit() = default; // Line 2
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto2.C b/gcc/testsuite/g++.dg/cpp0x/auto2.C
index cf6bcffbedf..cff36d212af 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto2.C
@@ -1,6 +1,5 @@
// Positive test for auto
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <typeinfo>
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto20.C b/gcc/testsuite/g++.dg/cpp0x/auto20.C
index 8561b3d4a8a..fe9925d0f3f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto20.C
@@ -1,6 +1,6 @@
// Test for proper non-deduced context handling of the initializer
// for an auto declaration/new.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct with_apply
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto21.C b/gcc/testsuite/g++.dg/cpp0x/auto21.C
index 1d022b390e8..a827b3df853 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto21.C
@@ -1,5 +1,5 @@
// Origin PR c++/47208
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
constexpr auto list = { }; // { dg-error "deducing from brace-enclosed initializer list requires #include <initializer_list>" }
static const int l = list.size();
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto22.C b/gcc/testsuite/g++.dg/cpp0x/auto22.C
index 30111783624..4ae1d1cf513 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto22.C
@@ -1,5 +1,5 @@
// PR c++/47999
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int& identity(int& i)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto23.C b/gcc/testsuite/g++.dg/cpp0x/auto23.C
index 799445c8c3f..f14c2b8b280 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto23.C
@@ -1,4 +1,4 @@
// PR c++/46245
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<auto f()->int> struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto24.C b/gcc/testsuite/g++.dg/cpp0x/auto24.C
index 3911c5887d4..d370cc6f3db 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto24.C
@@ -1,5 +1,5 @@
// PR c++/48599
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
int v[1];
auto (*p)[1] = &v; // { dg-error "array of .auto" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto25.C b/gcc/testsuite/g++.dg/cpp0x/auto25.C
index 0153d9c96fb..9e08a5bf381 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto25.C
@@ -1,5 +1,5 @@
// PR c++/42056
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto26.C b/gcc/testsuite/g++.dg/cpp0x/auto26.C
index 9d0c89426d3..d355a63973d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto26.C
@@ -1,5 +1,5 @@
// PR c++/43321
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
void f(T t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto27.C b/gcc/testsuite/g++.dg/cpp0x/auto27.C
index 1921763607a..f8e9097b2f8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto27.C
@@ -1,6 +1,6 @@
// PR c++/51186
-auto main()->int // { dg-error "std=" "std" { target c++98 } }
- // { dg-error "auto" "auto" { target c++98 } 3 }
- // { dg-error "no type" "no type" { target c++98 } 3 }
+auto main()->int // { dg-error "std=" "std" { target { ! c++11 } } }
+ // { dg-error "auto" "auto" { target { ! c++11 } } 3 }
+ // { dg-error "no type" "no type" { target { ! c++11 } } 3 }
{ }
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto28.C b/gcc/testsuite/g++.dg/cpp0x/auto28.C
index 1d6f0d0293d..441d8843a6e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto28.C
@@ -1,4 +1,4 @@
// PR c++/51404
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int i = auto().x; // { dg-error "invalid use of" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto29.C b/gcc/testsuite/g++.dg/cpp0x/auto29.C
index 818745751a8..80fdc12b7d2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto29.C
@@ -1,6 +1,5 @@
// PR c++/51401
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <int>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto3.C b/gcc/testsuite/g++.dg/cpp0x/auto3.C
index 2b51d3191d1..c2e5519ecf7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto3.C
@@ -19,7 +19,7 @@ A<int> A1;
// CWG issue 625
A<auto> A2 = A1; // { dg-error "" }
-auto foo() { } // { dg-error "auto" }
+auto foo() { } // { dg-error "auto" "" { target { ! c++1y } } }
void bar(auto i) // { dg-error "incomplete|auto" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto30.C b/gcc/testsuite/g++.dg/cpp0x/auto30.C
index d26e290f5cc..cce67d55605 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto30.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto30.C
@@ -1,5 +1,5 @@
// Origin PR c++/51473
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto36.C b/gcc/testsuite/g++.dg/cpp0x/auto36.C
index c3530401bd2..586bc6ebb5e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto36.C
@@ -1,5 +1,5 @@
// PR c++/54903
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<int N, int D>
struct Modulus
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto4.C b/gcc/testsuite/g++.dg/cpp0x/auto4.C
index 71b0dede29a..36144fd9aae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto4.C
@@ -1,6 +1,5 @@
// Testcase for deduction of std::initializer_list for auto.
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <typeinfo>
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto41.C b/gcc/testsuite/g++.dg/cpp0x/auto41.C
index 6f102e7c9f5..b2a77550fda 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto41.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto41.C
@@ -1,5 +1,5 @@
// PR c++/58550
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
-auto foo(); // { dg-error "auto" }
-auto fp = foo;
+auto foo(); // { dg-error "auto" "" { target { ! c++1y } } }
+auto fp = foo; // { dg-error "auto" "" { target c++1y } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto5.C b/gcc/testsuite/g++.dg/cpp0x/auto5.C
index b5dd0d8a02c..8ed66d1ea36 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto5.C
@@ -1,5 +1,5 @@
// Testcase for non-dependent auto in templates
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto7.C b/gcc/testsuite/g++.dg/cpp0x/auto7.C
index d795c23baa5..c213c747bb3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto7.C
@@ -1,6 +1,6 @@
// PR c++/37965
// Negative test for auto
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
auto i = 6;
auto j; // { dg-error "has no initializer" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto9.C b/gcc/testsuite/g++.dg/cpp0x/auto9.C
index ee6497921cd..205bb960cc9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/auto9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/auto9.C
@@ -1,7 +1,6 @@
// PR c++/37962
// Negative test for auto
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <typeinfo>
#include <stdarg.h>
@@ -16,13 +15,13 @@ const std::type_info &t2 = typeid (auto *); // { dg-error "auto" }
struct A
{
- operator auto (); // { dg-error "auto" }
- operator auto *(); // { dg-error "auto" }
+ operator auto (); // { dg-error "auto" "" { target { ! c++1y } } }
+ operator auto *(); // { dg-error "auto" "" { target { ! c++1y } } }
};
struct A2
{
- operator auto () -> int; // { dg-error "invalid use of" }
+ operator auto () -> int; // { dg-error "invalid use of" "" { target { ! c++1y } } }
operator auto *() -> int; // { dg-error "auto" }
};
@@ -42,7 +41,7 @@ bool d = (auto (A::*)()) 0; // { dg-error "auto" }
void
foo ()
{
- (auto) { 0 }; // { dg-error "auto" }
+ __extension__ (auto) { 0 }; // { dg-error "auto" }
C<int> c;
dynamic_cast<auto> (c); // { dg-error "auto" }
reinterpret_cast<auto> (c); // { dg-error "auto" }
@@ -79,10 +78,10 @@ enum struct D : auto * { FF = 0 }; // { dg-error "must be an integral type|decl
void
bar ()
{
- try { } catch (auto i) { } // { dg-error "parameter declared" }
- try { } catch (auto) { } // { dg-error "parameter declared" }
- try { } catch (auto *i) { } // { dg-error "parameter declared" }
- try { } catch (auto *) { } // { dg-error "parameter declared" }
+ try { } catch (auto i) { } // { dg-error "parameter" }
+ try { } catch (auto) { } // { dg-error "parameter" }
+ try { } catch (auto *i) { } // { dg-error "parameter" }
+ try { } catch (auto *) { } // { dg-error "parameter" }
}
void
@@ -99,8 +98,8 @@ baz (int i, ...)
template <typename T = auto> struct E {}; // { dg-error "invalid use of" }
template <class T = auto *> struct F {}; // { dg-error "invalid use of|expected" }
-auto fnlate () -> auto; // { dg-error "invalid use of" }
-auto fnlate2 () -> auto *; // { dg-error "invalid use of|expected" }
+auto fnlate () -> auto; // { dg-error "invalid use of" "" { target { ! c++1y } } }
+auto fnlate2 () -> auto *; // { dg-error "invalid use of|expected" "" { target { ! c++1y } } }
void
badthrow () throw (auto) // { dg-error "invalid use of" }
@@ -117,8 +116,8 @@ template <auto V = 4> struct G {}; // { dg-error "auto" }
template <typename T> struct H { H (); ~H (); };
H<auto> h; // { dg-error "invalid" }
-void qq (auto); // { dg-warning "auto" }
-void qr (auto*); // { dg-warning "auto" }
+void qq (auto); // { dg-error "auto" }
+void qr (auto*); // { dg-error "auto" }
// PR c++/46145
typedef auto autot; // { dg-error "auto" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/bad_array_new1.C b/gcc/testsuite/g++.dg/cpp0x/bad_array_new1.C
index cd5f0c829c6..2052d3991e8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bad_array_new1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bad_array_new1.C
@@ -1,6 +1,5 @@
// Test for throwing bad_array_new_length on invalid array length
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <new>
diff --git a/gcc/testsuite/g++.dg/cpp0x/bad_array_new2.C b/gcc/testsuite/g++.dg/cpp0x/bad_array_new2.C
index ab36510a4db..bcc9b9ad5f7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bad_array_new2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bad_array_new2.C
@@ -1,6 +1,5 @@
// Test for throwing bad_array_new_length on invalid array length
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <new>
diff --git a/gcc/testsuite/g++.dg/cpp0x/bind.C b/gcc/testsuite/g++.dg/cpp0x/bind.C
index a0ce6b8ff62..9b7ce7dc0b9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bind.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bind.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
struct S{};
void f(S&&);
diff --git a/gcc/testsuite/g++.dg/cpp0x/bracket1.C b/gcc/testsuite/g++.dg/cpp0x/bracket1.C
index abda4034374..6f5c2972078 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bracket1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bracket1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T>
struct list {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/bracket2.C b/gcc/testsuite/g++.dg/cpp0x/bracket2.C
index 65cf2699c92..35c8608bd5f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bracket2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bracket2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int i> class X { /* ... */ };
X< 1>2 > x1; // // { dg-error "numeric constant" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/bracket3.C b/gcc/testsuite/g++.dg/cpp0x/bracket3.C
index f86aa041a24..93c714862b6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bracket3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bracket3.C
@@ -1,3 +1,4 @@
+// { dg-do compile { target c++11 } }
// { dg-options "-std=c++98 -Wc++11-compat" }
template<int N> struct X {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/bracket4.C b/gcc/testsuite/g++.dg/cpp0x/bracket4.C
index e6381c74c84..256f4cb6c90 100644
--- a/gcc/testsuite/g++.dg/cpp0x/bracket4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/bracket4.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T>
struct vector {
};
diff --git a/gcc/testsuite/g++.dg/cpp0x/cast-bug.C b/gcc/testsuite/g++.dg/cpp0x/cast-bug.C
index 5485611dc65..2b8ef33e8e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/cast-bug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/cast-bug.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
struct S
{
S();
diff --git a/gcc/testsuite/g++.dg/cpp0x/cast.C b/gcc/testsuite/g++.dg/cpp0x/cast.C
index 2f109762c26..d11d7241391 100644
--- a/gcc/testsuite/g++.dg/cpp0x/cast.C
+++ b/gcc/testsuite/g++.dg/cpp0x/cast.C
@@ -2,8 +2,7 @@
// Test cast from lvalue to rvalue
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/collapse-bug.C b/gcc/testsuite/g++.dg/cpp0x/collapse-bug.C
index 93f2c9fc9b6..89fe0318fdb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/collapse-bug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/collapse-bug.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U> struct same_type;
template<typename T> struct same_type<T, T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/collapse.C b/gcc/testsuite/g++.dg/cpp0x/collapse.C
index 98435f159d7..b537bb58398 100644
--- a/gcc/testsuite/g++.dg/cpp0x/collapse.C
+++ b/gcc/testsuite/g++.dg/cpp0x/collapse.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U> struct same_type;
template<typename T> struct same_type<T, T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C
index c021e980352..746a84e7d25 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C
@@ -1,5 +1,5 @@
// PR c++/46336
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern "C" {
enum A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C
index c59949aa68e..17a366e8494 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C
@@ -1,5 +1,5 @@
// PR c++/46420
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename> class vector { };
struct A{};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C
index 53c20a62382..263a44bc0b8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C
@@ -1,5 +1,5 @@
// PR c++/47570
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
unsigned int constexpr one()
{ return 1; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-47969.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-47969.C
index 140965150a1..933831b94de 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-47969.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-47969.C
@@ -1,5 +1,5 @@
// PR c++/47969
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C
index 039411ef58d..88d442691c6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C
@@ -1,5 +1,5 @@
// PR c++/48089
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// bang is ill-formed (diagnostic required) because its initializer is
// non-constant, because it uses the value of an uninitialized object.
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-49776.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-49776.C
index 8f407191192..c1d1c375448 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-49776.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-49776.C
@@ -1,5 +1,5 @@
// PR c++/49776
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct s
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-51369.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-51369.C
index 6606be8b6f3..413566f49d6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-51369.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-51369.C
@@ -1,6 +1,5 @@
// PR c++/51369
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
constexpr int x[2][2] = {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-52672.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-52672.C
index d05ad43d686..0ce07a5b013 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-52672.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-52672.C
@@ -1,6 +1,5 @@
// PR c++/52672
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
__extension__ typedef __SIZE_TYPE__ * ul_ptr;
constexpr unsigned long a = *((ul_ptr)0x0); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-1.C
index e49023d869e..c90fc765e1b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
typedef float __attribute__ ((vector_size (4 * sizeof (float)))) V4;
constexpr V4 v = { 1, 1, 1, 0 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-2.C
index 1c5129dcb3f..f34619a6dff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-2.C
@@ -1,9 +1,8 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// Ignore warning on some powerpc-ibm-aix configurations.
// { dg-prune-output "non-standard ABI extension" }
// { dg-prune-output "changes the ABI" }
typedef float __attribute__ ((vector_size (4 * sizeof (float)))) V4;
-constexpr V4 build (float x, float y, float z) { return (V4){ x, y, z, 0 };}
+constexpr V4 build (float x, float y, float z) { return __extension__ (V4){ x, y, z, 0 };}
constexpr V4 x = build (1, 0, 0);
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-3.C
index 2c2d2b4bfe1..58c00ed4ac7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-53094-3.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
// Ignore warning on some powerpc-ibm-aix configurations.
// { dg-prune-output "non-standard ABI extension" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-55573.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-55573.C
index 0954fdd1bf9..bec69c75d50 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-55573.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-55573.C
@@ -1,6 +1,6 @@
// PR c++/55573
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
// Ignore warning on some powerpc-ibm-aix configurations.
// { dg-prune-output "non-standard ABI extension" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-56302.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-56302.C
index c0adae4665a..945bf020f0e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-56302.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-56302.C
@@ -1,6 +1,6 @@
// PR c++/56302
-// { dg-do compile }
-// { dg-options "-std=c++11 -O0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O0" }
constexpr int foo () { return 42; }
constexpr int x = foo () + 2;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-99.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-99.C
index 13a5ea3e6c2..8d791dd032d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-99.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-99.C
@@ -1,5 +1,5 @@
// Origin PR c++/51462
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-abi1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-abi1.C
index c596a4386a9..418a2029951 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-abi1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-abi1.C
@@ -1,5 +1,6 @@
// PR c++/47301
-// { dg-options "-std=c++11 -fabi-version=1" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=1" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-access.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-access.C
index 3cde1efa914..569824dc57f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-access.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-access.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-and.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-and.C
index 15ad2524694..ea86d7bc629 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-and.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-and.C
@@ -1,6 +1,6 @@
// PR c++/56481
// Non-linearity in potential_constant_expression_1
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C
index db95e569492..15d20f69260 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
constexpr T do_get(T* x, int n) {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr2.C
index 23c6ebdaf6a..92181962200 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct IsNegative {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr3.C
index a282b85490b..2338f70f076 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr3.C
@@ -1,8 +1,8 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr bool is_negative(int x) {
return x < 0;
-};
+}
constexpr bool do_has_neg(const int* x, bool(*p)(int)) {
return p(x[0]) || p(x[1]); // Line 6
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr4.C
index f530265863d..3dd3f34e67b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr const int do_last(const int* x, int n) {
return x[n - 1];
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr5.C
index 20b6344e490..eec32d672a2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
constexpr T do_last(T* x, int n) {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr6.C
index c307edba6e1..3a483989c1f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr6.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef decltype(sizeof(char)) size_type;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr7.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr7.C
index 7c83178a9b5..93f91411447 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-ptr7.C
@@ -1,5 +1,5 @@
// PR c++/49290
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef unsigned T;
struct S
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-tparm.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-tparm.C
index 4b6a3df1892..02fba95545d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array-tparm.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array-tparm.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <const int I[2]> struct A { int ir[I[0]]; };
extern constexpr int ar[2] = { 1, 2 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array.C
index f2c8ddcc966..1614d6bd2cc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler-not "static_initialization" } }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array2.C
index 4f556ae6661..ad6b12171ae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array2.C
@@ -1,5 +1,5 @@
// PR c++/46348
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<__SIZE_TYPE__ _Nw>
struct _Base
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array3.C
index 38314ec0f5f..12f42f1834d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array3.C
@@ -1,5 +1,5 @@
// PR c++/48132
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct C
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array4.C
index 0658be9011f..aa952649417 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-array4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array4.C
@@ -1,5 +1,5 @@
// PR c++/49924
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { constexpr A() { } };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute.C
index fef7007cf0c..cda0e926bf7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
//A few constexpr's
constexpr int foo() { return __alignof__(int); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute2.C
index 97fc3eff3cf..c174cb3ebc5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-attribute2.C
@@ -1,5 +1,5 @@
// { dg-do compile { target init_priority } }
-// { dg-options -std=gnu++11 }
+// { dg-require-effective-target c++11 }
struct t { t(); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-auto.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-auto.C
index 60bd5589745..ae270dc1d33 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-auto.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-auto.C
@@ -1,2 +1,2 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr auto value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-base.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-base.C
index b159bb8dba4..5f0b5cacf9e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-base.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-base.C
@@ -1,5 +1,5 @@
// Test base/member class and static_assert with constexpr
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-base2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-base2.C
index 9849f206c54..217687a3fb3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-base2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-base2.C
@@ -1,5 +1,5 @@
// PR c++/46293
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-base3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-base3.C
index ec6646bc560..db867d4ef43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-base3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-base3.C
@@ -1,6 +1,5 @@
// PR c++/46526
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
struct Base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-base4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-base4.C
index 8a061bfd27e..ab664394e5e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-base4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-base4.C
@@ -1,6 +1,5 @@
// PR c++/46626
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield.C
index 5025f4782d1..a50ac363620 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield.C
@@ -1,5 +1,5 @@
// PR c++/46369
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield2.C
index 6ad5aeab586..5b667208ed1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield2.C
@@ -1,6 +1,5 @@
// PR c++/49136
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct day
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield3.C
index 6b20e707f7b..c393db4e6e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-bitfield3.C
@@ -1,6 +1,5 @@
// PR c++/49136
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-builtin1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-builtin1.C
index ef2762e7cdb..d663f882345 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-builtin1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-builtin1.C
@@ -1,5 +1,5 @@
// PR c++/49813
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
inline constexpr bool
isinf(long double __x)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-cache1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-cache1.C
index 7c128df7b1b..8038b88140d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-cache1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-cache1.C
@@ -1,5 +1,5 @@
// PR c++/51433
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int f();
constexpr int g() { return f(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C
index ff86b1bdbce..bfba6fc9ebd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-complex.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-complex.C
index 0d4ea010cb3..fa393484d6c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-complex.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-complex.C
@@ -1,5 +1,6 @@
// Make sure C99 complex works with constexpr
-// { dg-options -std=gnu++11 }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
struct complex
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-compound.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-compound.C
index 006a8c77613..bfe4e13d4a7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-compound.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-compound.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
constexpr int f()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-condition.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-condition.C
index dd47a79433d..388a73488e7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-condition.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-condition.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// Core DR 948
constexpr int something() { return 3; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-condition2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-condition2.C
index 855c8dcea2a..3ce9b4c45fa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-condition2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-condition2.C
@@ -1,5 +1,5 @@
// PR c++/48909
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert((X),#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor.C
index 23076b3ac34..659e733cdcd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor10.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor10.C
index c1279e2b7fc..1dbc3355e3d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor10.C
@@ -1,6 +1,6 @@
// PR c++/52599
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct foo {
- constexpr foo() try { } catch(...) { }; // { dg-error "constructor" }
+ constexpr foo() try { } catch(...) { }; // { dg-error "constexpr" }
};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor11.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor11.C
index 4b526eaa794..e22c55f7a92 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor11.C
@@ -1,5 +1,5 @@
// PR c++/55856
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
@@ -10,7 +10,7 @@ template <class T>
struct B
{
T t;
- template <class U> constexpr B(U&& u): t(u) { };
+ template <class U> constexpr B(U&& u): t(u) { }
};
B<A&&> b("");
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor12.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor12.C
index a5a4b4d14a9..45e1ed27fae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor12.C
@@ -1,5 +1,5 @@
// PR c++/55753
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename Tp>
struct C {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor13.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor13.C
index ed01a3112fc..299db883268 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor13.C
@@ -1,5 +1,5 @@
// PR c++/55753
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor2.C
index 02333734bb2..30b01091fd1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor3.C
index 23159839c01..36d1de4ac11 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor3.C
@@ -1,5 +1,5 @@
// PR c++/46348
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor4.C
index 96b99e320ad..c4947126bbb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor4.C
@@ -1,5 +1,5 @@
// PR c++/46873
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor5.C
index 63d4b151d71..abfc72c8fdd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor5.C
@@ -1,5 +1,5 @@
// PR c++/46877
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct new_allocator
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor6.C
index 40512975003..fd87fe495a2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor6.C
@@ -1,5 +1,6 @@
// PR c++/47041
-// { dg-options "-std=c++11 -fno-elide-constructors" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-elide-constructors" }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor7.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor7.C
index 8a65ad2f34e..5d18e564352 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor7.C
@@ -1,5 +1,6 @@
// PR c++/47199
-// { dg-options "-std=c++11 -fno-elide-constructors" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-elide-constructors" }
template < int > struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor8.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor8.C
index 4d204a17336..5b75e64750b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor8.C
@@ -1,5 +1,6 @@
// PR c++/46466
-// { dg-options "-std=c++11 -fno-elide-constructors" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-elide-constructors" }
struct S { bool b; };
constexpr S f() { return S{true}; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor9.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor9.C
index 9d7e88de0de..0763ee4bc9b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor9.C
@@ -1,5 +1,5 @@
// PR c++/47774
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-data1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-data1.C
index f2a4d443514..f49c56a4ba1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-data1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-data1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-data2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-data2.C
index 47967ab416e..312760a3767 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-data2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-data2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename _Tp, _Tp v>
struct A3
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-decl.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-decl.C
index f16f12c0f19..2c88fe689ea 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-decl.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-decl.C
@@ -1,5 +1,5 @@
// PR c++/46930
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S {
static constexpr int size; // { dg-error "must have an initializer" "must have" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg.C
index 22ccedd1359..eaa3fbdfdb4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg.C
@@ -1,5 +1,5 @@
// PR c++/46335
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct T { };
struct A {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg2.C
index 4a02336647c..f1ca05fe9ec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-defarg2.C
@@ -1,5 +1,5 @@
// PR c++/46368
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C
index 02f695853db..a67505d749b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating.C
index 571e58f3de6..f32dde60eae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating.C
@@ -1,5 +1,5 @@
// PR c++/51526
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
const int j = 42;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating2.C
index 8115baa1aa1..35439423f7b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-delegating2.C
@@ -1,5 +1,5 @@
// PR c++/51723
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <int... V>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-delete.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-delete.C
index 5eb478d851c..3cc4f55d07d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-delete.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-delete.C
@@ -1,3 +1,3 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr bool never() = delete; // useless, but OK
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-deref.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-deref.C
index 29adab9f23e..ce898abfcf1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-deref.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-deref.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag1.C
index 21213eb5eb4..34cdb733e52 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag1.C
@@ -1,5 +1,5 @@
// Test that we explain why a template instantiation isn't constexpr
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag2.C
index 161b5a7bdfb..04db4b3313e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag2.C
@@ -1,5 +1,5 @@
// PR c++/47207
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int X (X); // { dg-error "not usable" }
// { dg-message "own initializer" "" { target *-*-* } 4 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag3.C
index 0a0887fd6c1..2a1897b6bfb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag3.C
@@ -1,5 +1,5 @@
// PR c++/45923
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int f(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag4.C
index 371190e9789..29f574df389 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag4.C
@@ -1,5 +1,5 @@
// Origin: PR c++/51633
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag5.C
index c0cbfdd1c51..c8043e3bdb4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-diag5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-diag5.C
@@ -1,5 +1,5 @@
// Origin: PR c++/51633
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-eh-spec.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-eh-spec.C
index 45fee3bc032..93224b0c396 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-eh-spec.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-eh-spec.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T> class my_limits {
public:
static constexpr T min() throw() { return T(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis.C
index 55f8fa5322f..8c0783c9acc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int ellipsis(...) { return 1; }
constexpr int ellipsis_c = ellipsis(); // OK
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis2.C
index d6b44828e15..b6a5323b0f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ellipsis2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty.C
index 6a5565fc3f4..42f873bb334 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Empty {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty2.C
index 5e6694d9953..51f3f554dfc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct IsLiteral {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty3.C
index 133ad42e36d..a9cd98fa4e5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct IsLiteral {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty4.C
index 3b7380d1284..f61aa69326c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef decltype(sizeof(char)) size_type;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty5.C
index f693cc196f6..e74f5ba1e35 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-empty5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-empty5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { };
struct B: A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex1.C
index acf8bccc176..e541bf9fbdb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex2.C
index a760a729022..9e99d6da467 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C
index 1cda29b3b8d..3e2685b1c5c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -ftrack-macro-expansion=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-ftrack-macro-expansion=0" }
#define SA(X) static_assert (X, #X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex4.C
index 13089043c3b..7a9086cb7c1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ex4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ex4.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-expinst.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-expinst.C
index d8ba4193e7c..08a0fe022cd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-expinst.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-expinst.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// Error: Explicit instantiation of a function template shall not use the
// inline or constexpr specifiers
template<class T> constexpr inline T bar(T x) { return x; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-explicit-inst.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-explicit-inst.C
index 65210417226..f5137b3525c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-explicit-inst.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-explicit-inst.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T> constexpr inline T bar(T x) { return x; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-fnptr.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-fnptr.C
index a81ce5a1378..2b08478ce9b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-fnptr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-fnptr.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr bool is_negative(int x) { return x < 0; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-friend.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-friend.C
index ee35f1ff98a..55a2329eb54 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-friend.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-friend.C
@@ -1,5 +1,5 @@
// PR c++/48948
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { A(); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-function1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-function1.C
index e4cddf7ea96..ce4520d5574 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-function1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-function1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C
index 5dda09305db..8cb32c9ad94 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-function3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-function3.C
index bd35e97d1b8..ea4f4abae3b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-function3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-function3.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-generated1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-generated1.C
index e66d33286f1..39be3ed571f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-generated1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-generated1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice.C
index aca701531a1..fb7570f5ff9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice.C
@@ -1,5 +1,5 @@
// We used to crash on this instead of giving a decent error.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { int i; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
index 952c6fdcc4c..dee4817f671 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
@@ -1,3 +1,3 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int x;
constexpr int& rx = x;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice3.C
index 1a66840080e..fccd120855a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice3.C
@@ -1,5 +1,5 @@
// PR c++/46289
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice4.C
index 35109e8d04f..a083c85e752 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice4.C
@@ -1,5 +1,5 @@
// PR c++/51612
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice5.C
index 56936b0ba65..c5a117c02dd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice5.C
@@ -1,5 +1,5 @@
// PR c++/51621
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice6.C
index 3512261cd31..30e0a643bcb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice6.C
@@ -1,5 +1,5 @@
// PR c++/51327
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete1.C
index 179566ba503..514cca59c33 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete2.C
index 96de0c37243..a8af2e66f2a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete2.C
@@ -1,6 +1,6 @@
// A constructor that might or might not be constexpr still makes
// its class literal.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct B
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete3.C
index 26ffd3e1fbd..c0516f089e7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-incomplete3.C
@@ -1,5 +1,5 @@
// PR c++/49015
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist.C
index 982332b82c7..52fc9ea8caa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
namespace xstd {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist2.C
index 7a75e5ff271..65a7036ef0f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist3.C
index 4909a082976..912cf910ec6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
#define SA(X) static_assert(X,#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist4.C
index a45e8cdcf3c..d4019b2b9c4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { int i; };
struct B: A { constexpr B(): A{} {} };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist5.C
index 9ddc9f8ab36..901510e1067 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist5.C
@@ -1,5 +1,5 @@
// PR c++/50024
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template< class T >
struct Container
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist6.C
index 6b822a1f777..8c344c0b28f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-initlist6.C
@@ -1,5 +1,5 @@
// PR c++/55419
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct P
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-is_literal.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-is_literal.C
index 6423588fd7f..f255b8d1507 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-is_literal.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-is_literal.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <type_traits>
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-memfn1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-memfn1.C
index 10a0aaa2f08..775c103161a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-memfn1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-memfn1.C
@@ -1,5 +1,5 @@
// PR c++/48296
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-missing.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-missing.C
index 6f1d1a23653..afaf2e30e35 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-missing.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-missing.C
@@ -1,6 +1,5 @@
// PR c++/48911
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert((X),#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-mutable1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-mutable1.C
index 3d595d5d925..832a16197d5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-mutable1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-mutable1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C
index 8e1bcd0f2f9..fb4c01274d9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C
@@ -1,5 +1,5 @@
// Negative examples from N3092 (FCD)
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// OK: declaration
constexpr int square(int x); // { dg-message "never defined" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept.C
index 9e337793092..dbadaa8e3d2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct is_funny {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept2.C
index e4e998b50d4..d10039a92e1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
constexpr T value(T t) { return t; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept3.C
index 1cda3521897..9541bc0781d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int f(int i) { return i; }
#define SA(X) static_assert (X, #X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept4.C
index b19c1575acf..eb7190023ed 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// A call is noexcept if it is a valid subexpression of a constant
// expression, even if it is not itself a constant expression.
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept5.C
index 52f2040b90b..7b0c8359954 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct booleable {
bool data;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept6.C
index 56dc68308ca..76d9246d6f1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-noexcept6.C
@@ -1,5 +1,5 @@
// PR c++/51305
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr bool ok() noexcept
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg.C
index c8bdb28384b..0f68643f145 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg.C
@@ -1,6 +1,6 @@
// Example from issue 1125 drafting; D() and v were well-formed with the
// wording approved in Rapperswil, now seems they should be ill-formed.
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
struct B {
constexpr B(int x) : i(0) { } // "x" is unused
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg2.C
index 02ec95f7e9e..32a023b9c8c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg2.C
@@ -1,5 +1,6 @@
// PR c++/47200
-// { dg-options "-std=c++11 -w" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-w" }
template < int > struct duration
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg3.C
index 3a9c92c4011..d8603f838b5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-non-const-arg3.C
@@ -1,6 +1,5 @@
// PR c++/49988
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
template<int ... I> struct X { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit.C
index 21036d8e7d0..0534b41ad06 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit.C
@@ -1,5 +1,5 @@
// FIXME this is currently invalid, but seems like it should be OK
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { A() { } };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit2.C
index 77ceefe0569..2d712b64a52 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonlit2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonstatic.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonstatic.C
index 110edd4db10..bb0743adb71 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-nonstatic.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-nonstatic.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-nullptr.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-nullptr.C
index 77b56af049d..8ff89982d20 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-nullptr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-nullptr.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int zero() { return 0; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-object1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-object1.C
index f5c319ad9d6..41afbe969a2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-object1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-object1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// From N2235
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-object2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-object2.C
index 9234ad218e2..d52967a7edd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-object2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-object2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
constexpr int verysquare(int x) { return x * x; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C
index b9f82470727..8406e4924ec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -w -ftrack-macro-expansion=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-w -ftrack-macro-expansion=0" }
#include <limits.h>
extern constexpr int max_s = INT_MAX + 1; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow2.C
index 8534f5f9376..bd2e6875a94 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-overflow2.C
@@ -1,5 +1,5 @@
// PR c++/47504
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
char constexpr sub(char arg)
{ return char(arg - char(1)); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-pedantic.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-pedantic.C
index 84ff462abc7..21f4c83b396 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-pedantic.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-pedantic.C
@@ -1,6 +1,7 @@
// The FCD doesn't allow typedefs and static_assert in constexpr functions,
// but it should.
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
template <class T>
constexpr T f(T t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-pos1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-pos1.C
index c234f4a8c34..8e82ef59eb5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-pos1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-pos1.C
@@ -1,5 +1,5 @@
// Positive examples from N3092 (FCD)
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert(X, #X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-potential1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-potential1.C
index 85a26f0886a..f960e3afbdf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-potential1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-potential1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// We decided in Rapperswil that it's OK if any value of decide can produce
// a constant expression.
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrmem.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrmem.C
index 8a1c5517bd4..c16fb15e7b8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrmem.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrmem.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct C { // literal type
int m;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrsub.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrsub.C
index a7c79d7456d..18648d92d2e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrsub.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ptrsub.C
@@ -1,6 +1,6 @@
// PR c++/51489
// DR 1313
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct array
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-pure.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-pure.C
index 556b4e7cb3f..f54b7c59f78 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-pure.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-pure.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-recursion.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-recursion.C
index 327efa44648..e3e13f755f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-recursion.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-recursion.C
@@ -1,5 +1,6 @@
// Test that we catch excessive recursion.
-// { dg-options "-std=c++11 -fconstexpr-depth=5" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fconstexpr-depth=5" }
// { dg-prune-output "in constexpr expansion" }
constexpr int f (int i) { return f (i-1); }
constexpr int i = f(42); // { dg-error "constexpr evaluation depth" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C
index 0c10b4b5578..f3e4cead14f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C
@@ -1,9 +1,9 @@
// PR c++/49172
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert((X),#X)
-constexpr int g() { return 42; };
+constexpr int g() { return 42; }
constexpr int(&rg)() = g; // #1
SA(rg() == 42);
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C
index 5091593056f..76973638d5f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C
@@ -1,5 +1,5 @@
// Negative reference variable tests.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern int *p;
constexpr int& ri = *p; // { dg-error "p" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref3.C
index 37222525e60..7936536042d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref3.C
@@ -1,5 +1,5 @@
// PR c++/50298
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int global_variable;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref4.C
index c256814a3ad..ce1ce5235c0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref4.C
@@ -1,5 +1,5 @@
// PR c++/54777
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C
index 5f4a1d18fcf..697203d7291 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-rom.C
@@ -1,5 +1,5 @@
// PR c++/49673: check that test_data goes into .rodata
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-additional-options -G0 { target { { alpha*-*-* frv*-*-* ia64-*-* lm32*-*-* m32r*-*-* microblaze*-*-* mips*-*-* nios2-*-* powerpc*-*-* rs6000*-*-* score*-*-* } && { ! { *-*-darwin* *-*-aix* alpha*-*-*vms* } } } } }
// { dg-final { scan-assembler "\\.rdata" { target mips*-*-* } } }
// { dg-final { scan-assembler "rodata" { target { { *-*-linux-gnu *-*-gnu* *-*-elf } && { ! mips*-*-* } } } } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-sassert.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-sassert.C
index b9b5003a06f..7f82671b442 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-sassert.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-sassert.C
@@ -1,5 +1,5 @@
// Allow static_assert in constexpr constructors, too.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-specialization.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-specialization.C
index 8003ed9e133..80f56a19615 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-specialization.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-specialization.C
@@ -1,5 +1,5 @@
// PR c++/56871
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T> constexpr int foo(T);
template<> int foo(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static.C
index aa96499b284..24174aca020 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static.C
@@ -1,6 +1,6 @@
// Test for constant initialization of non-literal class (e.g. mutex)
-// { dg-options "-std=c++11 -save-temps" }
-// { dg-do run }
+// { dg-options "-save-temps" }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static10.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static10.C
index 9b76e6fb354..e908fb3cb6b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static10.C
@@ -1,5 +1,5 @@
// PR c++/55944
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct Test
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static2.C
index 2ed8147ff1d..70a254c5dd9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct IsLiteral {};
struct ShouldBeLiteral {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static3.C
index 1951edbf43b..6d65a62e5ab 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static3.C
@@ -1,8 +1,8 @@
// Test for constant initialization of class with vtable
-// { dg-options "-std=c++11 -save-temps" }
+// { dg-options "-save-temps" }
// { dg-final { scan-assembler-not "static_initialization" } }
// { dg-final cleanup-saved-temps }
-// { dg-do run }
+// { dg-do run { target c++11 } }
int r = 1;
// implicit default constructor for A and B is constexpr
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static4.C
index aa060b8d43d..fa1a4c746d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static4.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
extern "C" void abort ();
extern int ar[2];
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static5.C
index 886e693d52c..d161cf5445c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static6.C
index cf64979a9a9..78065c3068b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static6.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct B
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static7.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static7.C
index bb333b7d897..272ebd901d4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static7.C
@@ -1,5 +1,5 @@
// PR c++/48945
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
static constexpr bool is();
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C
index c6fd94e9c74..34aa5afc001 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C
@@ -1,5 +1,6 @@
// PR c++/50258
-// { dg-options "-std=c++11 -fpermissive" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fpermissive" }
struct Foo {
static const double d = 3.14; // { dg-warning "constexpr" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-stmtexpr.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-stmtexpr.C
index 562cf760872..bebd4f6f415 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-stmtexpr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-stmtexpr.C
@@ -1,5 +1,6 @@
// PR c++/46977
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template < typename > void
foo ()
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-string.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-string.C
index a7132e1c812..0f561a4360c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-string.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-string.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr char c1 = "hi"[1];
constexpr char c2 = "hi"[2];
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-switch.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-switch.C
index 705d3553c45..ee94159f09d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-switch.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-switch.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
constexpr T value(T t = T()) { return t; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-switch2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-switch2.C
index a59e7671979..652a08d92bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-switch2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-switch2.C
@@ -1,5 +1,5 @@
// Test for constexpr conversion in case context
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class E { e1, e2 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-synth1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-synth1.C
index 1e7a92a82c8..27375e2cf60 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-synth1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-synth1.C
@@ -1,5 +1,5 @@
// PR c++/46472
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T> struct A {
T t;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-targ.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-targ.C
index ba97ab7f4c2..b5171141f94 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-targ.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-targ.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-template1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-template1.C
index d109229f002..b949bd66bfc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-template1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-template1.C
@@ -1,5 +1,5 @@
// PR c++/50248, DR 1358
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class Elt, unsigned max>
struct earray
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-template2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-template2.C
index 368edb50705..a316b34bd7b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-template2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-template2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C
index 66fcb2a7726..f0ac2224af5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-template3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { constexpr operator int() { return 42; } };
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-template6.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-template6.C
index eac6004aeb3..fd0c957b0a3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-template6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-template6.C
@@ -1,6 +1,5 @@
// PR c++/59268
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-throw.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-throw.C
index 7f06080c476..5666629acae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-throw.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-throw.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr int may_throw(bool decide) {
return decide ? 42 : throw -1; // { dg-error "throw" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-typedef1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-typedef1.C
index 98f25ecf5ba..98c2309abb6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-typedef1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-typedef1.C
@@ -1,5 +1,5 @@
// PR c++/50508
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct integral_constant {
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-typeid.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-typeid.C
index d72dc5a3f7a..32af84eacb9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-typeid.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-typeid.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <typeinfo>
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
index 53cecfaeb46..0c3548c0ac4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
@@ -1,6 +1,6 @@
// Test that we don't have to deal with type punning
// DR 1188 says this is ill-formed
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
union U
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-union2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-union2.C
index 2ae7e40dacf..1a5e832ac34 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-union2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-union2.C
@@ -1,5 +1,5 @@
// PR c++/51675
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
union foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-union3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-union3.C
index bac9cabfe53..ecae28dcc5b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-union3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-union3.C
@@ -1,5 +1,5 @@
// PR c++/51675
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
union foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-union5.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-union5.C
index e8e678d3eca..57796664e01 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-union5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-union5.C
@@ -1,5 +1,6 @@
// PR c++/54922
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
#define SA(X) static_assert(X,#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-using.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-using.C
index a28d15eb781..e8e7de31e45 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-using.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-using.C
@@ -1,5 +1,5 @@
// Core issue 898
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace N { const int i = 42; }
namespace M { const int j = 42; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-using2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-using2.C
index 18272a6faf6..59a65e50582 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-using2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-using2.C
@@ -1,5 +1,5 @@
// PR c++/49520
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace x { void foo(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-value.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-value.C
index 2004a779d73..87311876e3e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-value.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-value.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct HopefullyLiteral {
HopefullyLiteral() = default; // Should be a constexpr c'tor as of 12.1/6 and 8.4.2/4
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-value2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-value2.C
index 1be6a08dda3..00797fa0012 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-value2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-value2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
constexpr T value_init() { return T(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-value3.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-value3.C
index 57fe868cd47..8fd9c744536 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-value3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-value3.C
@@ -1,5 +1,5 @@
// PR c++/50234
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert((X),#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-variadic.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-variadic.C
index c2be3272734..495c6e2b145 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-variadic.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-variadic.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class... T>
constexpr bool variadics(T&&...) { return true; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual.C
index 22ad73d50c9..2c13e3ef188 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual.C
@@ -1,5 +1,5 @@
// PR c++/47067
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct X {
virtual void x();
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual4.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual4.C
index 32cee969841..b938d6535c7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-virtual4.C
@@ -1,5 +1,5 @@
// PR c++/56291
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class Base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring1.C
index 0195a863fde..dc1b7080a04 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring1.C
@@ -1,6 +1,5 @@
// PR c++/48570
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
extern "C" void abort ();
constexpr wchar_t foo (int i) { return L"0123"[i]; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring2.C
index 586e0baa5e8..db79a9c75e2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-wstring2.C
@@ -1,6 +1,5 @@
// PR c++/48570
-// { dg-do compile }
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr wchar_t c1 = L"hi"[3]; // { dg-error "out of bound" }
constexpr char16_t c2 = u"hi"[3]; // { dg-error "out of bound" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/dc1.C b/gcc/testsuite/g++.dg/cpp0x/dc1.C
index c1a5f39dce3..e7ccb64a3b3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/dc1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/dc1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options --std=c++11 }
+// { dg-do compile { target c++11 } }
struct B {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/dc2.C b/gcc/testsuite/g++.dg/cpp0x/dc2.C
index 227bab13705..665f79d425f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/dc2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/dc2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options --std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
int i, j;
diff --git a/gcc/testsuite/g++.dg/cpp0x/dc3.C b/gcc/testsuite/g++.dg/cpp0x/dc3.C
index c68d622d202..9c6fd56564c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/dc3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/dc3.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options --std=c++11 }
+// { dg-do compile { target c++11 } }
struct X {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/dc5.C b/gcc/testsuite/g++.dg/cpp0x/dc5.C
index 59cf2ea1785..57321626e91 100644
--- a/gcc/testsuite/g++.dg/cpp0x/dc5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/dc5.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "--std=c++11" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype-1212.C b/gcc/testsuite/g++.dg/cpp0x/decltype-1212.C
index 24bf339a516..f9c879e9525 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype-1212.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype-1212.C
@@ -1,5 +1,5 @@
// Core 1212
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T, class U> struct assert_same_type;
template <class T> struct assert_same_type<T,T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype-33837.C b/gcc/testsuite/g++.dg/cpp0x/decltype-33837.C
index 7f85bc32c92..fbbc6a14972 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype-33837.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype-33837.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// PR c++/33837
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype-33838.C b/gcc/testsuite/g++.dg/cpp0x/decltype-33838.C
index 8f4a86c12ad..effe08dcc4b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype-33838.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype-33838.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// PR c++/33838
template<typename T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype-54581.C b/gcc/testsuite/g++.dg/cpp0x/decltype-54581.C
index 5747e5c7ea6..4b81b5ab888 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype-54581.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype-54581.C
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-std=gnu++11 -Wall" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-Wall" } */
typedef float v4f __attribute__((vector_size(4*sizeof(float))));
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype-refbug.C b/gcc/testsuite/g++.dg/cpp0x/decltype-refbug.C
index d58011b2a31..cecff3c2941 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype-refbug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype-refbug.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/33045
int && f ();
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype1.C b/gcc/testsuite/g++.dg/cpp0x/decltype1.C
index 7b268fdbca0..84c7a03f382 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype10.C b/gcc/testsuite/g++.dg/cpp0x/decltype10.C
index 381f6363b3a..846d0bf57cf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype10.C
@@ -1,6 +1,5 @@
// PR c++/34271
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype11.C b/gcc/testsuite/g++.dg/cpp0x/decltype11.C
index 01a65568d9e..9fa8e230fcb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype11.C
@@ -1,5 +1,5 @@
// PR c++/35316
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype12.C b/gcc/testsuite/g++.dg/cpp0x/decltype12.C
index c39f6f103cd..eae318db2df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype12.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype15.C b/gcc/testsuite/g++.dg/cpp0x/decltype15.C
index e0348ea9a38..f19819cfd19 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype15.C
@@ -1,6 +1,5 @@
// PR c++/38640
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int N> void foo (decltype (N));
template<long int N> void foo (decltype (N));
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype16.C b/gcc/testsuite/g++.dg/cpp0x/decltype16.C
index 9f2398ece1f..5cf84395368 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype16.C
@@ -1,5 +1,5 @@
// PR c++/39070
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename X> struct junk {
template<typename Z> static Z y();
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype17.C b/gcc/testsuite/g++.dg/cpp0x/decltype17.C
index c3a44535974..6e5854db6c9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype17.C
@@ -1,6 +1,5 @@
// PR c++/36628
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <typeinfo>
#include <string.h>
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype18.C b/gcc/testsuite/g++.dg/cpp0x/decltype18.C
index 0f639a0cdfb..4c1571a565f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype18.C
@@ -1,5 +1,5 @@
// PR c++/37875
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename> struct X {};
X<decltype(1 > 2)> x;
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype2.C b/gcc/testsuite/g++.dg/cpp0x/decltype2.C
index 81cb56b7ed9..f316f50a02d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
@@ -46,7 +45,7 @@ int bar(int);
CHECK_DECLTYPE(decltype(foo), int(char));
decltype(bar) z; // { dg-error "overload" "overload" }
-// { dg-error "invalid type" "invalid" { target *-*-* } 48 }
+// { dg-error "invalid type" "invalid" { target *-*-* } 47 }
CHECK_DECLTYPE(decltype(&foo), int(*)(char));
CHECK_DECLTYPE(decltype(*&foo), int(&)(char));
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype20.C b/gcc/testsuite/g++.dg/cpp0x/decltype20.C
index bba848ccc41..5fb35404288 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype20.C
@@ -1,5 +1,5 @@
// PR c++/42277
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S { int s; };
template <int N>
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype21.C b/gcc/testsuite/g++.dg/cpp0x/decltype21.C
index a6e973ff88f..e4dc2011e39 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype21.C
@@ -1,6 +1,6 @@
// PR c++/6709 (DR 743)
// PR c++/42603 (DR 950)
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
T make();
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype22.C b/gcc/testsuite/g++.dg/cpp0x/decltype22.C
index 623163f4b14..b3ff8b84a43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype22.C
@@ -1,5 +1,5 @@
// PR c++/42761
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename _Tp> _Tp* fn();
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype23.C b/gcc/testsuite/g++.dg/cpp0x/decltype23.C
index a2543243a52..731eed708e5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype23.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int x, &&y = static_cast<int &&>(x);
typedef decltype((y)) myInt; // `y' is a parenthesized id-expression of type int that is an lvalue
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype24.C b/gcc/testsuite/g++.dg/cpp0x/decltype24.C
index 3b3a7d59718..0ff9963e1bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype24.C
@@ -1,5 +1,5 @@
// PR c++/47068
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> struct broken {
int member;
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype25.C b/gcc/testsuite/g++.dg/cpp0x/decltype25.C
index 04465b90220..e57376f9b46 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype25.C
@@ -1,5 +1,5 @@
// PR c++/47851
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Type {
void display_type();
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype26.C b/gcc/testsuite/g++.dg/cpp0x/decltype26.C
index 705fd64e51e..0d320dadd20 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype26.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype27.C b/gcc/testsuite/g++.dg/cpp0x/decltype27.C
index 0f0cd42168b..3174a89cf08 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype27.C
@@ -1,5 +1,5 @@
// PR c++/48617
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T, decltype(T())> // #
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype28.C b/gcc/testsuite/g++.dg/cpp0x/decltype28.C
index 591bb03b573..c1c5a1b305c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype28.C
@@ -1,5 +1,5 @@
// PR c++/44175
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <bool, class T> struct enable_if { };
template <class T> struct enable_if <true, T> { typedef T type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype29.C b/gcc/testsuite/g++.dg/cpp0x/decltype29.C
index ae1cb2ab2fc..d87299ccccb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype29.C
@@ -1,5 +1,5 @@
// PR c++/44175
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <bool, class T> struct enable_if { };
template <class T> struct enable_if <true, T> { typedef T type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype3.C b/gcc/testsuite/g++.dg/cpp0x/decltype3.C
index 57300566e3b..aaff5df5982 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype3.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
@@ -56,7 +55,7 @@ public:
CHECK_DECLTYPE(decltype(aa.*&A::a), int&);
decltype(aa.*&A::b) zz; // { dg-error "cannot create pointer to reference member" "cannot" }
-// { dg-error "invalid type" "invalid type" { target *-*-* } 58 }
+// { dg-error "invalid type" "invalid type" { target *-*-* } 57 }
CHECK_DECLTYPE(decltype(caa.*&A::a), const int&);
class X {
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype30.C b/gcc/testsuite/g++.dg/cpp0x/decltype30.C
index 2e7283e55d7..25eeb9d2958 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype30.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype30.C
@@ -1,5 +1,5 @@
// PR c++/49369
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class,class> struct assert_same;
template <class T> struct assert_same<T,T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype31.C b/gcc/testsuite/g++.dg/cpp0x/decltype31.C
index ce03ec11cc8..bffcf1c0d8b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype31.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype31.C
@@ -1,5 +1,5 @@
// PR c++/49921
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Local
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype32.C b/gcc/testsuite/g++.dg/cpp0x/decltype32.C
index a53f9d05469..02c6316e16a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype32.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype32.C
@@ -1,5 +1,6 @@
// PR c++/50075
-// { dg-options "-std=c++11 -ftemplate-depth=10" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-ftemplate-depth=10" }
template <typename T>
auto make_array(const T& il) ->
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype33.C b/gcc/testsuite/g++.dg/cpp0x/decltype33.C
index 935423ab555..63d5a49139c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype33.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype33.C
@@ -1,5 +1,6 @@
// PR c++/50084
-// { dg-options "-std=c++11 -fno-inline" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-inline" }
template<typename> struct remove_reference;
template<typename T> struct remove_reference<T&> { typedef T type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype34.C b/gcc/testsuite/g++.dg/cpp0x/decltype34.C
index 9d7c3182825..028e50669f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype34.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype34.C
@@ -1,5 +1,5 @@
// PR c++/50870
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
struct impl
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype35.C b/gcc/testsuite/g++.dg/cpp0x/decltype35.C
index ee9537d97eb..daffaf0306e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype35.C
@@ -1,5 +1,5 @@
// PR c++/50870
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class V>
struct impl
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype36.C b/gcc/testsuite/g++.dg/cpp0x/decltype36.C
index 2cf34c0ecf2..c426f69a6d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype36.C
@@ -1,5 +1,5 @@
// PR c++/51265
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Funny
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype4.C b/gcc/testsuite/g++.dg/cpp0x/decltype4.C
index 5db826fc522..c14e156465d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype4.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype40.C b/gcc/testsuite/g++.dg/cpp0x/decltype40.C
index 55258f4d88d..1b194ab1e66 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype40.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype40.C
@@ -1,5 +1,5 @@
// PR c++/51222
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rref {
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype47.C b/gcc/testsuite/g++.dg/cpp0x/decltype47.C
index 8e2abaa6799..f6700a33cdd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype47.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype47.C
@@ -1,5 +1,5 @@
// PR c++/55564
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T, decltype(sizeof(T)) N>
auto array_size(T(&)[N]) -> decltype(N) { return N; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype48.C b/gcc/testsuite/g++.dg/cpp0x/decltype48.C
index 29ce8157a7c..39fc4ebf555 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype48.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype48.C
@@ -1,5 +1,5 @@
// PR c++/56059
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef int Int;
template<typename T> struct baz { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype5.C b/gcc/testsuite/g++.dg/cpp0x/decltype5.C
index 4c31a2b4a6a..3842e09c134 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype5.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype6.C b/gcc/testsuite/g++.dg/cpp0x/decltype6.C
index 2f742ce08cc..10086c5fd9e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype6.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype9.C b/gcc/testsuite/g++.dg/cpp0x/decltype9.C
index c13ff8db5d6..9db3db039a2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/decltype9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/decltype9.C
@@ -1,6 +1,5 @@
// PR c++/34271
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/deduce.C b/gcc/testsuite/g++.dg/cpp0x/deduce.C
index 5185f9a3953..380ca280b30 100644
--- a/gcc/testsuite/g++.dg/cpp0x/deduce.C
+++ b/gcc/testsuite/g++.dg/cpp0x/deduce.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U> struct same_type;
template<typename T> struct same_type<T, T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted1.C b/gcc/testsuite/g++.dg/cpp0x/defaulted1.C
index 1f36b185452..4956e88ed65 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted1.C
@@ -1,6 +1,5 @@
// Positive test for defaulted/deleted fns
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted10.C b/gcc/testsuite/g++.dg/cpp0x/defaulted10.C
index fe3eae5b417..85372686213 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted10.C
@@ -1,5 +1,5 @@
// PR c++/40381
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted11.C b/gcc/testsuite/g++.dg/cpp0x/defaulted11.C
index 65cd0e27f47..cd4e293f65e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted11.C
@@ -1,5 +1,5 @@
// Core issue 901
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted13.C b/gcc/testsuite/g++.dg/cpp0x/defaulted13.C
index ad15a0e853c..68dc5d0a58e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted13.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T>
struct NonCopyable {
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted14.C b/gcc/testsuite/g++.dg/cpp0x/defaulted14.C
index 73072e2057d..0c07fa701b7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted14.C
@@ -1,5 +1,5 @@
// PR c++/39866
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {
A& operator=(const A&) = delete; // { dg-bogus "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted15.C b/gcc/testsuite/g++.dg/cpp0x/defaulted15.C
index 99400ac4f9c..fabcc23a150 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted15.C
@@ -1,5 +1,5 @@
// PR c++/38796
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert ((X), #X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted16.C b/gcc/testsuite/g++.dg/cpp0x/defaulted16.C
index 25b2d5ad673..f866c8e982b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted16.C
@@ -1,7 +1,7 @@
// Test that non-inline default causes the function to be defined even if
// it isn't used.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZN1AC1Ev" } }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted17.C b/gcc/testsuite/g++.dg/cpp0x/defaulted17.C
index 48529f5a3a7..0a3c0de268a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted17.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A // { dg-error "const|operator=" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted18.C b/gcc/testsuite/g++.dg/cpp0x/defaulted18.C
index 7dd17345d11..6d84a1e8813 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted18.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void f(char i, int j) = delete; // { dg-message "<deleted>" }
void f(int i, ...); // { dg-message "void f" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted19.C b/gcc/testsuite/g++.dg/cpp0x/defaulted19.C
index f7de0730625..2b93a7b0919 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted19.C
@@ -1,7 +1,6 @@
// We don't allocate a cookie to help us run the destructor if it's trivial,
// even if it's deleted.
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted19a.C b/gcc/testsuite/g++.dg/cpp0x/defaulted19a.C
index 6d2a26a818c..a082d51ab07 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted19a.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted19a.C
@@ -1,7 +1,6 @@
// We allocate a cookie to help us run the destructor if it's non-trivial,
// even if it's deleted.
-// { dg-options "-std=c++0x" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct B { ~B() {} };
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted2.C b/gcc/testsuite/g++.dg/cpp0x/defaulted2.C
index 5f05424dc34..bd83c7fb279 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted2.C
@@ -1,5 +1,5 @@
// Negative test for defaulted/deleted fns.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void f(); // { dg-message "previous" }
void f() = delete; // { dg-error "deleted" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted20.C b/gcc/testsuite/g++.dg/cpp0x/defaulted20.C
index 49919ef7813..affda20fdd4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted20.C
@@ -1,5 +1,5 @@
// PR c++/46497
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
A(A&&) = default;
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted21.C b/gcc/testsuite/g++.dg/cpp0x/defaulted21.C
index 09a211ff7d3..63c98e67657 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted21.C
@@ -1,5 +1,5 @@
// PR c++/46736
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct U {
U();
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted22.C b/gcc/testsuite/g++.dg/cpp0x/defaulted22.C
index 86dbed90bf8..5afcd1deae1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted22.C
@@ -1,6 +1,5 @@
// Test that a virtual defaulted constructor is still virtual.
-// { dg-do run }
-// { dg-options -std=c++11 }
+// { dg-do run { target c++11 } }
int r = 1;
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted23.C b/gcc/testsuite/g++.dg/cpp0x/defaulted23.C
index be2fd2fbf90..9e6cbc37d89 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted23.C
@@ -1,5 +1,5 @@
// Test for checking of exception specifications on defaulted fns
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted24.C b/gcc/testsuite/g++.dg/cpp0x/defaulted24.C
index 7f9aed69f0e..32c6f2e546d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted24.C
@@ -1,5 +1,5 @@
// PR c++/48280
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S {
template < typename > S (const S &) = default; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted25.C b/gcc/testsuite/g++.dg/cpp0x/defaulted25.C
index 26b0c9184ea..644fe1bb9dd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted25.C
@@ -1,5 +1,5 @@
// PR c++/48930
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted26.C b/gcc/testsuite/g++.dg/cpp0x/defaulted26.C
index b9be726b3a7..f14a0e8855e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted26.C
@@ -1,5 +1,5 @@
// PR c++/49066
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
void foo() = delete; // { dg-message "declared here" }
void foo();
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted27.C b/gcc/testsuite/g++.dg/cpp0x/defaulted27.C
index 8f71e9eb254..d26e744da73 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted27.C
@@ -1,5 +1,5 @@
// PR c++/47544
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZN1sIiEC2Ev" } }
// { dg-final { scan-assembler-not "_ZN1sIiED2Ev" } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted28.C b/gcc/testsuite/g++.dg/cpp0x/defaulted28.C
index e8b44daeae3..aa900998d2f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted28.C
@@ -1,6 +1,6 @@
// PR c++/49102
// PR c++/50034
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
A() = default;
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted29.C b/gcc/testsuite/g++.dg/cpp0x/defaulted29.C
index 9e6382e3793..8e2989bac0e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted29.C
@@ -1,5 +1,5 @@
// PR c++/46696
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted3.C b/gcc/testsuite/g++.dg/cpp0x/defaulted3.C
index 21b13783426..75e89c8ff0c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted3.C
@@ -1,5 +1,5 @@
// PR c++/37006
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
struct A {
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted30.C b/gcc/testsuite/g++.dg/cpp0x/defaulted30.C
index 2440b94034f..ce86f575777 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted30.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted30.C
@@ -1,5 +1,5 @@
// PR c++/49507
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T>
struct ConcretePoolKey
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted31.C b/gcc/testsuite/g++.dg/cpp0x/defaulted31.C
index d866872157d..2ac28baf902 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted31.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted31.C
@@ -1,5 +1,5 @@
// PR c++/39164
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted32.C b/gcc/testsuite/g++.dg/cpp0x/defaulted32.C
index a3654833617..e5b94b6351b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted32.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted32.C
@@ -1,5 +1,5 @@
// PR c++/50531
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T>
class DataFilter
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted34.C b/gcc/testsuite/g++.dg/cpp0x/defaulted34.C
index 463cc34e7fb..ff777f6cf87 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted34.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted34.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "__cxa_deleted_virtual" } }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted35.C b/gcc/testsuite/g++.dg/cpp0x/defaulted35.C
index 8312ba16aa9..adf9c82ef01 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted35.C
@@ -1,5 +1,5 @@
// PR c++/53096
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted39.C b/gcc/testsuite/g++.dg/cpp0x/defaulted39.C
index fe847d4e8a9..a4963c4d132 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted39.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted39.C
@@ -1,5 +1,5 @@
// DR 1402
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> T&& move(T& t);
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted4.C b/gcc/testsuite/g++.dg/cpp0x/defaulted4.C
index 3e5e92604ed..ca07d76d7b5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted4.C
@@ -1,7 +1,6 @@
// PR c++/37208: SFINAE and deleted functions.
-// { dg-options "-std=c++11" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template<int> struct A { };
template<typename T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted40.C b/gcc/testsuite/g++.dg/cpp0x/defaulted40.C
index c160b397bd0..8da1364d82a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted40.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted40.C
@@ -1,5 +1,5 @@
// DR 1402
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> T&& move(T& t);
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted5.C b/gcc/testsuite/g++.dg/cpp0x/defaulted5.C
index a8d7e9828cf..96394ea5b12 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted5.C
@@ -1,6 +1,5 @@
// PR c++/37234
-// { dg-do link }
-// { dg-options "-std=c++11" }
+// { dg-do link { target c++11 } }
template <typename T>
class foo {
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted6.C b/gcc/testsuite/g++.dg/cpp0x/defaulted6.C
index 05f06c94680..440c58db46e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted6.C
@@ -1,5 +1,5 @@
// PR c++/37906
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct b
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted7.C b/gcc/testsuite/g++.dg/cpp0x/defaulted7.C
index 00a24f03999..089d618483b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted7.C
@@ -1,5 +1,5 @@
// PR c++/38701, 38702
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void foo() = default; // { dg-error "cannot be defaulted" }
namespace
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted8.C b/gcc/testsuite/g++.dg/cpp0x/defaulted8.C
index 6ec936322d2..383766de2b4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted8.C
@@ -1,5 +1,5 @@
// PR c++/38649
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted9.C b/gcc/testsuite/g++.dg/cpp0x/defaulted9.C
index 2907b03a123..8d3aef89041 100644
--- a/gcc/testsuite/g++.dg/cpp0x/defaulted9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted9.C
@@ -1,5 +1,6 @@
// PR c++/39153
-// { dg-options "-std=c++11 -fno-inline" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-inline" }
struct _Impl_base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/dependent1.C b/gcc/testsuite/g++.dg/cpp0x/dependent1.C
index de8a1a9380b..629b125f528 100644
--- a/gcc/testsuite/g++.dg/cpp0x/dependent1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/dependent1.C
@@ -1,5 +1,5 @@
// PR c++/48319
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// We were failing to recognize declval<_Args1> as dependent.
template<typename Tp> Tp declval() noexcept;
diff --git a/gcc/testsuite/g++.dg/cpp0x/diag1.C b/gcc/testsuite/g++.dg/cpp0x/diag1.C
index 0e53dcb69a3..9bf7cfe5c8f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/diag1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/diag1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <int U>
struct TypeA
diff --git a/gcc/testsuite/g++.dg/cpp0x/elision.C b/gcc/testsuite/g++.dg/cpp0x/elision.C
index 70162a151bb..4cc5653e24a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/elision.C
+++ b/gcc/testsuite/g++.dg/cpp0x/elision.C
@@ -2,8 +2,7 @@
// Test: Implicit cast to rvalue when eliding copy
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/elision2.C b/gcc/testsuite/g++.dg/cpp0x/elision2.C
index 811c5394d7f..b3d13fb187e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/elision2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/elision2.C
@@ -1,5 +1,5 @@
// Core 1148: should be able to move from value parameter on return
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/elision_neg.C b/gcc/testsuite/g++.dg/cpp0x/elision_neg.C
index f302605f73f..0870a80930c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/elision_neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/elision_neg.C
@@ -2,8 +2,7 @@
// Test: Implicit cast to rvalue when eliding copy
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum1.C b/gcc/testsuite/g++.dg/cpp0x/enum1.C
index 41dd62240d4..bf174295248 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum1.C
@@ -1,6 +1,5 @@
// PR c++/38021
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
enum : { }; // { dg-error "expected" }
enum : 3 { }; // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum10.C b/gcc/testsuite/g++.dg/cpp0x/enum10.C
index 825cc647d52..daffd192243 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum10.C
@@ -1,5 +1,5 @@
// PR c++/48534
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class OpSE : bool;
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum11.C b/gcc/testsuite/g++.dg/cpp0x/enum11.C
index a2bd3535213..a449f1c39a7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum11.C
@@ -1,5 +1,6 @@
// PR c++/48969
-// { dg-options "-std=c++11 -ftemplate-depth=10" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-ftemplate-depth=10" }
template<unsigned int N> struct Pair { };
struct Foo { enum { Mask = 1 }; } foo;
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum12.C b/gcc/testsuite/g++.dg/cpp0x/enum12.C
index 46d2686a6b3..ea55cfe9715 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum12.C
@@ -1,5 +1,6 @@
// PR c++/48780
-// { dg-options "-std=c++11 -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
typedef __builtin_va_list __gnuc_va_list;
typedef __gnuc_va_list va_list;
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum13.C b/gcc/testsuite/g++.dg/cpp0x/enum13.C
index 3f637241fdc..5e4a532ce78 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum13.C
@@ -1,5 +1,6 @@
// PR c++/48780
-// { dg-options "-std=c++11 -fabi-version=5 -Wabi" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=5 -Wabi" }
typedef __builtin_va_list __gnuc_va_list;
typedef __gnuc_va_list va_list;
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum14.C b/gcc/testsuite/g++.dg/cpp0x/enum14.C
index fe791f1a26b..2be758db350 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum14.C
@@ -1,5 +1,5 @@
// PR c++/48106
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class E : char
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum15.C b/gcc/testsuite/g++.dg/cpp0x/enum15.C
index 61737742adb..07beee53a3b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum15.C
@@ -1,5 +1,5 @@
// PR c++/44311
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class A { Val0, Val1 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum16.C b/gcc/testsuite/g++.dg/cpp0x/enum16.C
index 941d85b5c58..207fcab2b01 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum16.C
@@ -1,5 +1,5 @@
// PR c++/48935
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class ENUM { a };
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum17.C b/gcc/testsuite/g++.dg/cpp0x/enum17.C
index e67928ba4ca..32c46096fff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum17.C
@@ -1,5 +1,5 @@
// PR c++/48536
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
#include <climits>
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum18.C b/gcc/testsuite/g++.dg/cpp0x/enum18.C
index c37eebe9de2..de16596dfea 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum18.C
@@ -1,5 +1,5 @@
// PR c++/47277
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int main(void) {
enum e {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum19.C b/gcc/testsuite/g++.dg/cpp0x/enum19.C
index de423aa8cca..b04fd523f07 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum19.C
@@ -1,5 +1,6 @@
// We shouldn't give an ABI warning about promotion in switch.
-// { dg-options "-std=c++11 -fabi-version=5 -Wabi" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=5 -Wabi" }
enum class Foo { X };
void test(Foo val)
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum2.C b/gcc/testsuite/g++.dg/cpp0x/enum2.C
index 57eccafe14c..c101134f8f5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum2.C
@@ -1,5 +1,4 @@
// PR c++/38637
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> enum E : int { e }; // { dg-error "declaration|expected" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum20.C b/gcc/testsuite/g++.dg/cpp0x/enum20.C
index 0fcd9c907de..8937cc7a3d3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum20.C
@@ -1,5 +1,5 @@
// PR c++/47635
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum A { };
void A::f() { } // { dg-error "not a class" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum21b.C b/gcc/testsuite/g++.dg/cpp0x/enum21b.C
index aab0f5e215e..ac449f050d7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum21b.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum21b.C
@@ -1,4 +1,4 @@
-// { dg-do compile }
-// { dg-options "-pedantic -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
enum x { y, };
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum26.C b/gcc/testsuite/g++.dg/cpp0x/enum26.C
index a21067edb87..cfc5df3a3f5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum26.C
@@ -1,5 +1,6 @@
// PR c++/54216
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
enum {}; // { dg-warning "empty anonymous" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum3.C b/gcc/testsuite/g++.dg/cpp0x/enum3.C
index 3e630d6e1e8..940bc047a14 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum3.C
@@ -1,6 +1,5 @@
// PR c++/38064
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
enum class E { elem };
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum4.C b/gcc/testsuite/g++.dg/cpp0x/enum4.C
index adf24b9cecf..9e908c08052 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum4.C
@@ -1,5 +1,5 @@
// PR c++/40633
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template< typename T >
struct wrap {
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum5.C b/gcc/testsuite/g++.dg/cpp0x/enum5.C
index fd413228e69..f896440fe1e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum5.C
@@ -1,5 +1,5 @@
// PR c++/40639
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template< typename T >
struct wrap {
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum6.C b/gcc/testsuite/g++.dg/cpp0x/enum6.C
index 74bd228a0bf..c3832ae433b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum6.C
@@ -1,5 +1,5 @@
// PR c++/37946
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
enum class E : char
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum7.C b/gcc/testsuite/g++.dg/cpp0x/enum7.C
index ed6635d53bd..6788f8accc8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum7.C
@@ -1,5 +1,5 @@
// PR c++/37816
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum8.C b/gcc/testsuite/g++.dg/cpp0x/enum8.C
index b0205a92497..15bee8334f1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum8.C
@@ -1,6 +1,5 @@
// PR c++/47704
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void
foo ()
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum9.C b/gcc/testsuite/g++.dg/cpp0x/enum9.C
index 70a2103916e..f359b425fd4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum9.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class E { };
E f();
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum_base.C b/gcc/testsuite/g++.dg/cpp0x/enum_base.C
index e63f4184237..8e23179e180 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum_base.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum_base.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef unsigned volatile long long uvlonglong;
diff --git a/gcc/testsuite/g++.dg/cpp0x/enum_base_warn.C b/gcc/testsuite/g++.dg/cpp0x/enum_base_warn.C
index 5257a9e4d11..82878a6bb5e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/enum_base_warn.C
+++ b/gcc/testsuite/g++.dg/cpp0x/enum_base_warn.C
@@ -1,5 +1,5 @@
-// { dg-do run }
-// { dg-options "-O2 -Wtype-limits -std=c++11" }
+// { dg-do run { target c++11 } }
+// { dg-options "-O2 -Wtype-limits" }
extern void link_error (void);
enum Alpha : unsigned char {
diff --git a/gcc/testsuite/g++.dg/cpp0x/error1.C b/gcc/testsuite/g++.dg/cpp0x/error1.C
index 59abd169503..33557f2f80b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error1.C
@@ -1,6 +1,5 @@
// PR c++/34395
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int... N> void foo (int... x[N]) // { dg-message "int \\\[N\\\]\\.\\.\\. x" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/error2.C b/gcc/testsuite/g++.dg/cpp0x/error2.C
index d39e7f023f6..e6af294c180 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error2.C
@@ -1,5 +1,5 @@
// PR c++/38656
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> int foo();
diff --git a/gcc/testsuite/g++.dg/cpp0x/error3.C b/gcc/testsuite/g++.dg/cpp0x/error3.C
index deee9a24253..75390f0bf2b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error3.C
@@ -1,5 +1,5 @@
// PR c++/47336
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T>
void g(T t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/error4.C b/gcc/testsuite/g++.dg/cpp0x/error4.C
index fa638a44d25..bd73b2a766c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error4.C
@@ -1,5 +1,5 @@
// PR c++/49156
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T> T declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/error5.C b/gcc/testsuite/g++.dg/cpp0x/error5.C
index 0baa5000694..e46c46d9277 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error5.C
@@ -1,5 +1,5 @@
// PR c++/49181
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/error6.C b/gcc/testsuite/g++.dg/cpp0x/error6.C
index e059e2261d2..515f8f5dcf6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error6.C
@@ -1,5 +1,5 @@
// PR c++/48284
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename C>
auto g(C& c) -> decltype (c.f()) { return c.f(); } // { dg-message "decltype .c\\.f" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/error7.C b/gcc/testsuite/g++.dg/cpp0x/error7.C
index 9c9f1c9b1c1..3c9b8ba3422 100644
--- a/gcc/testsuite/g++.dg/cpp0x/error7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/error7.C
@@ -1,5 +1,5 @@
// Test for printing the type of T{} in error messages.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T, T t> struct A { };
template <class T> A<T,T{}> f(T t); // { dg-message "T{}" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit1.C b/gcc/testsuite/g++.dg/cpp0x/explicit1.C
index e3004c7314d..ea4fa8a857b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit1.C
@@ -1,5 +1,5 @@
// Test for explicit conversion ops from N2437.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class U; class V;
class T
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit2.C b/gcc/testsuite/g++.dg/cpp0x/explicit2.C
index 9938f549712..715855cfe98 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit2.C
@@ -1,5 +1,5 @@
// Test for explicit conversion ops in various conversion situations.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef void (*pfn)();
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit3.C b/gcc/testsuite/g++.dg/cpp0x/explicit3.C
index 6933c8cfa01..678076c8e41 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit3.C
@@ -1,5 +1,5 @@
// Test for "contextually converted to bool"
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit4.C b/gcc/testsuite/g++.dg/cpp0x/explicit4.C
index bbefb68cbe5..663878e55a8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit4.C
@@ -1,5 +1,5 @@
// Negative explicit conv test.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {
A(const A&, int = 0); // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit5.C b/gcc/testsuite/g++.dg/cpp0x/explicit5.C
index 4573fc6296c..1adb8d67ecd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit5.C
@@ -1,6 +1,5 @@
// test for extension of DR 899 to handle template ctors
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
int r = 1;
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit6.C b/gcc/testsuite/g++.dg/cpp0x/explicit6.C
index 741b9a29fc2..18f31b42d59 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit6.C
@@ -1,5 +1,6 @@
// PR c++/47080
-// { dg-options -std=c++11 }
+// { dg-options "" }
+// { dg-do compile { target c++11 } }
struct A {
explicit operator int(); // { dg-message "qualification conversion" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/explicit7.C b/gcc/testsuite/g++.dg/cpp0x/explicit7.C
index ed3b494fce5..574796d117d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/explicit7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/explicit7.C
@@ -3,7 +3,8 @@
// can be converted to type T with a qualification conversion (4.4) are
// also candidate functions.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
struct A { };
struct B: A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/extern_template-1.C b/gcc/testsuite/g++.dg/cpp0x/extern_template-1.C
index 9cec57c1c66..2779a2b5cd2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/extern_template-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/extern_template-1.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
template <typename> void f() {}
extern template void f<int>();
diff --git a/gcc/testsuite/g++.dg/cpp0x/extern_template-2.C b/gcc/testsuite/g++.dg/cpp0x/extern_template-2.C
index 7ec1864ec8f..3eb870bb613 100644
--- a/gcc/testsuite/g++.dg/cpp0x/extern_template-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/extern_template-2.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
template <typename> class S {};
extern template class S<int>;
diff --git a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg1.C b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg1.C
index 27cb0579d85..3081d67c54d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg1.C
@@ -1,5 +1,5 @@
// PR c++/37766
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int a = 1;
template<int& b = a> void f() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg2.C b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg2.C
index c119e86afed..663f4004846 100644
--- a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg2.C
@@ -1,5 +1,6 @@
// PR c++/46831
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
struct B { };
struct D : B { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg4.C b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg4.C
index 0248b60599a..52e6f38a0ab 100644
--- a/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/fntmpdefarg4.C
@@ -1,5 +1,5 @@
// PR c++/55724
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<int N> struct S {};
template<typename T = int, T N> void f(S<N>) {}
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum1.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum1.C
index a147538ded9..7ec5884abe9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// opaque enum declarations
enum class E1;
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum10.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum10.C
index 59c8045cdad..609c2728957 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum10.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
//This error is diagnosed at instantiation time
template<typename T> struct S1
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum2.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum2.C
index d11dc7465ff..b8f062e11d4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct S1
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum3.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum3.C
index 682fd93c772..c8cd6f61f8f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum3.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
namespace S1
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum4.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum4.C
index 162b4bf332e..aee916e9d7f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum4.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T> struct S1
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum5.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum5.C
index a0e74863306..d1d6230ee99 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum5.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
namespace one
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum6.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum6.C
index a42d93c47b0..ccce13a79b8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum6.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
enum class E1 : int; // { dg-error "previous definition" }
enum E1 : int; // { dg-error "scoped/unscoped mismatch" }
@@ -22,8 +21,8 @@ enum E6 : int; //ok
enum class E7;
enum class E7 : int; //ok
-enum class E3 e3; // { dg-warning "scoped enum must not use" }
-enum struct E3 e4; // { dg-warning "scoped enum must not use" }
+enum class E3 e3; // { dg-error "scoped enum must not use" }
+enum struct E3 e4; // { dg-error "scoped enum must not use" }
enum E5 : int e5; // { dg-error "expected|invalid type" }
enum E6 : int { a, b, c }; // { dg-error "previous definition" }
@@ -47,7 +46,7 @@ namespace N2
{
enum class N1::E6 { e1, e2, e3 }; // { dg-error "does not enclose" }
enum N1::E7 : int { e1, e2, e3 }; // { dg-error "does not enclose" }
-};
+}
enum class N1::E6 { e1, e2, e3 };
enum N1::E7 : int { e1, e2, e3 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum7.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum7.C
index 34e9af077d2..3c67f547057 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum7.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template<typename T> struct S1
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum8.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum8.C
index 1d85162aa2d..5174226a6fd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum8.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
//This instatiation is ok
template<typename T> struct S1
diff --git a/gcc/testsuite/g++.dg/cpp0x/forw_enum9.C b/gcc/testsuite/g++.dg/cpp0x/forw_enum9.C
index ba7d3c76717..4f1475acfde 100644
--- a/gcc/testsuite/g++.dg/cpp0x/forw_enum9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/forw_enum9.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template<typename T> struct S1
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/friend1.C b/gcc/testsuite/g++.dg/cpp0x/friend1.C
index 838d250b23b..ae2c603aa8b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/friend1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/friend1.C
@@ -1,5 +1,5 @@
// From N1791
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class C;
typedef C Ct;
diff --git a/gcc/testsuite/g++.dg/cpp0x/friend2.C b/gcc/testsuite/g++.dg/cpp0x/friend2.C
index 7dbc8946b23..c4df8a0f3ba 100644
--- a/gcc/testsuite/g++.dg/cpp0x/friend2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/friend2.C
@@ -1,5 +1,5 @@
// PR c++/47721
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// template type parameter friend:
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-35.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-35.C
index 34f20cf3076..ccae6f0c848 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-35.C
@@ -1,5 +1,6 @@
// { dg-do compile { target i?86-*-* x86_64-*-* } }
-// { dg-options "-O3 -msse2 -std=c++11" }
+// { dg-require-effective-target c++11 }
+// { dg-options "-O3 -msse2" }
// { dg-require-effective-target sse2 }
// You can make NON-template typedefs with a large alignment.
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-36.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-36.C
index 0a28354f5dd..3f0ef1461b2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-36.C
@@ -1,6 +1,7 @@
// PR c++/43031
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-options "-pedantic" }
// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } }
+// { dg-require-effective-target c++11 }
// c++11 attributes that apply to types are ignored for now
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-37.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-37.C
index 9b769428071..59626b254eb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-37.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-37.C
@@ -1,6 +1,7 @@
// PR c++/43093
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-options "-pedantic" }
// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } }
+// { dg-require-effective-target c++11 }
// c++11 attributes that apply to types are ignored for now
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-4.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-4.C
index dff46b4af76..eb585a89be4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-4.C
@@ -1,5 +1,5 @@
-// { dg-options "-std=c++11 -Wunused -pedantic-errors" }
-// { dg-do compile }
+// { dg-options "-Wunused -pedantic-errors" }
+// { dg-do compile { target c++11 } }
// Test for syntax support of various attribute permutations.
int
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-42.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-42.C
index 7df63cf675e..ec98ece5885 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-42.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-42.C
@@ -1,5 +1,6 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-options "-pedantic" }
// { dg-do compile { target { i?86-*-* && ilp32 } } }
+// { dg-require-effective-target c++11 }
struct A {
[[gnu::fastcall]]
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C
index aa1491aed53..9c834a4a43c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C
@@ -1,5 +1,6 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-options "-pedantic" }
// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } }
+// { dg-require-effective-target c++11 }
extern int * ([[gnu::stdcall]] *fooPtr)( void); // { dg-error "expected" }
int * [[gnu::stdcall]] myFn01( void) { return 0; }// { dg-warning "ignored" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C b/gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C
index ad98db9f8f2..6a8398b896a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
// Integer imaginary...
diff --git a/gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C b/gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C
index 94fd8fce2ad..c738a484da6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=gnu++11 -fno-ext-numeric-literals" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-ext-numeric-literals" }
// Integer imaginary...
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit-copy.C b/gcc/testsuite/g++.dg/cpp0x/implicit-copy.C
index 70454dbf9c3..d4cd2e88d70 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit-copy.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit-copy.C
@@ -1,4 +1,4 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
struct S
{
S();
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit-trivial1.C b/gcc/testsuite/g++.dg/cpp0x/implicit-trivial1.C
index 7ab73bd22cf..23921c70386 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit-trivial1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit-trivial1.C
@@ -1,5 +1,5 @@
// PR c++/46807
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// In C++98/03, B::B(const B&) is trivial because A::A(const A&) is trivial,
// even though doing overload resolution would mean calling the template
// constructor. In C++11, we do overload resolution to determine triviality.
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit1.C b/gcc/testsuite/g++.dg/cpp0x/implicit1.C
index 777ed549249..7eb3371798a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit1.C
@@ -1,5 +1,5 @@
// Test for implicitly deleted destructors.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "default definition would be ill-formed" }
// { dg-prune-output "within this context" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit10.C b/gcc/testsuite/g++.dg/cpp0x/implicit10.C
index fcc47616f76..6a0c711a1b5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit10.C
@@ -1,5 +1,5 @@
// PR c++/46103
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct MoveOnly {
MoveOnly(const MoveOnly&) = delete;
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit11.C b/gcc/testsuite/g++.dg/cpp0x/implicit11.C
index 9f5841d17cf..3471ad98fad 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit11.C
@@ -1,6 +1,6 @@
// Test that we consider base dtors in determining whether
// a derived ctor is deleted even if the ctor is trivial.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit12.C b/gcc/testsuite/g++.dg/cpp0x/implicit12.C
index ab51a87005f..d52f1532d46 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit12.C
@@ -1,5 +1,5 @@
// PR c++/50500
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// If a class declares move operations, the implicitly declared copy
// operations are deleted.
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit2.C b/gcc/testsuite/g++.dg/cpp0x/implicit2.C
index ae516b7fe82..2995894424f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit2.C
@@ -1,7 +1,6 @@
// Test that the synthesized C copy constructor calls the A template
// constructor and has the appropriate exception specification.
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
int r = 1;
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit3.C b/gcc/testsuite/g++.dg/cpp0x/implicit3.C
index abef33a8e63..8176a6e1878 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit3.C
@@ -1,6 +1,5 @@
// Basic runtime test for implicit move constructor
-// { dg-do run }
-// { dg-options -std=c++11 }
+// { dg-do run { target c++11 } }
int m;
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit4.C b/gcc/testsuite/g++.dg/cpp0x/implicit4.C
index 16cd4b4a0f0..eeb4aa9d9dc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit4.C
@@ -1,6 +1,6 @@
// Test that a base with only a move constructor causes the implicit copy
// constructor to be deleted.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A // { dg-message "declares a move" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit5.C b/gcc/testsuite/g++.dg/cpp0x/implicit5.C
index 89ab44a2c30..f9ae5351fd7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit5.C
@@ -1,6 +1,6 @@
// Test that the default B copy constructor calls the deleted A
// copy constructor.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A // { dg-message "declares a move" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit6.C b/gcc/testsuite/g++.dg/cpp0x/implicit6.C
index 41781fb83d1..d3e85d0e73b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit6.C
@@ -1,5 +1,5 @@
// Circular implicit declarations were causing errors
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Ray;
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit7.C b/gcc/testsuite/g++.dg/cpp0x/implicit7.C
index 4d9d6a6076c..eaa7d82ae52 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit7.C
@@ -1,5 +1,5 @@
// PR c++/44909
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// Declaring A<D<E>>'s copy ctor means choosing a ctor to initialize D<E>,
// which means choosing a ctor for C<B<E>>, which meant considering
// C(const B<E>&) which means choosing a ctor for B<E>, which means choosing
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit8.C b/gcc/testsuite/g++.dg/cpp0x/implicit8.C
index ba7f1b62a8e..68575ca1369 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit8.C
@@ -1,6 +1,6 @@
// The hack for PR c++/44909 breaks this testcase. We need feedback
// from the C++ committee to know how to proceed.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/implicit9.C b/gcc/testsuite/g++.dg/cpp0x/implicit9.C
index dd5dd76e0f2..0952a420882 100644
--- a/gcc/testsuite/g++.dg/cpp0x/implicit9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/implicit9.C
@@ -1,5 +1,5 @@
// Test that private base dtor makes derived ctor deleted
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor1.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor1.C
index 99603106512..c656fb9a233 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor10.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor10.C
index 56c5bd6028c..48e95a0b1b6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor10.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -g" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor11.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor11.C
index 282402ba22d..228e8ec6609 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor11.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor12.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor12.C
index 257487efb11..cc23d4b19e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor12.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor13.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor13.C
index 95cf932d001..bd021e6e6d5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor13.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor14.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor14.C
index 2032ad3ddd7..04048800d54 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor14.C
@@ -1,5 +1,5 @@
// PR c++/55261
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor15.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor15.C
index cc105581080..c2d33bff4ff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor15.C
@@ -1,7 +1,7 @@
// Discussions on the core reflector indicate that not inheriting base copy
// constructors was a deliberate choice.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { A(int); };
struct B: public A
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor16.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor16.C
index 58e848b9c8f..ba6849f0349 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor16.C
@@ -1,5 +1,5 @@
// PR c++/56285
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct foo {
explicit foo(int&&) {}
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor2.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor2.C
index 621ba604c22..15e5657a4ff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C
index 7116e2f0700..e8dc84d32ec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct B1 {
B1(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor4.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor4.C
index b6754dc4a46..16dc19731bb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor4.C
@@ -1,5 +1,5 @@
// From N3337
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct B1 {
B1(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor5.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor5.C
index a8aa6d98ad9..8c79c833a32 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor5.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct B1 {
B1(int) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor6.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor6.C
index 5ac88d6b7db..98ac1885a9f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor6.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
extern "C" int printf (const char *, ...);
template< class T >
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor7.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor7.C
index 22608246706..280ccfebed7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor8.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor8.C
index d55d3d2a5bf..74c9496701b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor8.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor9.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor9.C
index dc5e86b6348..39751013bf3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inh-ctor9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor9.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-array2.C b/gcc/testsuite/g++.dg/cpp0x/initlist-array2.C
index 6eb5bf25e3d..1e25eb2202d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-array2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-array2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef int IA[2];
typedef double DA[2];
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-arrray1.C b/gcc/testsuite/g++.dg/cpp0x/initlist-arrray1.C
index e3008cc559c..925ab16bead 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-arrray1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-arrray1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef int IRT[2];
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-ctor1.C b/gcc/testsuite/g++.dg/cpp0x/initlist-ctor1.C
index 82031cbcc84..bc6d2720234 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-ctor1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-ctor1.C
@@ -1,5 +1,5 @@
// PR c++/52905
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-deduce.C b/gcc/testsuite/g++.dg/cpp0x/initlist-deduce.C
index 13ac0b3fec4..6ae32a6c55d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-deduce.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-deduce.C
@@ -2,8 +2,8 @@
// supported by the working draft, but is necessary for perfect forwarding
// of initializer-lists to things that can take a std::initializer_list.
-// { dg-options "-std=c++11 -fdeduce-init-list" }
-// { dg-do run }
+// { dg-options "-fdeduce-init-list" }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-explicit-sfinae.C b/gcc/testsuite/g++.dg/cpp0x/initlist-explicit-sfinae.C
index a2ced71a75e..78ec8cbd0b8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-explicit-sfinae.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-explicit-sfinae.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename _Tp>
_Tp&& declval() noexcept;
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime1.C b/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime1.C
index 673a05fcb59..d3b0fc3609c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime1.C
@@ -1,7 +1,6 @@
// Test that we properly extend the lifetime of the initializer_list
// array even if the initializer_list is a subobject.
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime2.C b/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime2.C
index 914b2c82d47..77fc961c966 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-lifetime2.C
@@ -1,7 +1,6 @@
// Test that we properly extend the lifetime of the initializer_list
// array even if the initializer_list is a subobject.
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-opt.C b/gcc/testsuite/g++.dg/cpp0x/initlist-opt.C
index 9999f2ebe86..3a5e9085695 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-opt.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-opt.C
@@ -1,5 +1,6 @@
// PR c++/41997
-// { dg-options "-std=c++11 -O2 -fdump-tree-optimized" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O2 -fdump-tree-optimized" }
// { dg-final { scan-tree-dump-not "_0" "optimized" } }
// { dg-final { cleanup-tree-dump "optimized" } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-postfix-open-square.C b/gcc/testsuite/g++.dg/cpp0x/initlist-postfix-open-square.C
index 87c926ef6e2..b43ffc33b40 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-postfix-open-square.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-postfix-open-square.C
@@ -1,5 +1,5 @@
// PR c++/51738
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct Index
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C b/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C
index fb5cc6aa892..5d121634a60 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-protected.C
@@ -1,5 +1,5 @@
// PR c++/54325
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-pure.C b/gcc/testsuite/g++.dg/cpp0x/initlist-pure.C
index 63c341c12ca..a9dbc90835b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-pure.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-pure.C
@@ -1,5 +1,5 @@
// PR c++/54325
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class Base {
public:
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-value.C b/gcc/testsuite/g++.dg/cpp0x/initlist-value.C
index bb40b786d30..ac842661677 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-value.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-value.C
@@ -1,6 +1,5 @@
// Test for value-initialization via {}
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
void * operator new (__SIZE_TYPE__, void *p) { return p; }
void * operator new[] (__SIZE_TYPE__, void *p) { return p; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist-value2.C b/gcc/testsuite/g++.dg/cpp0x/initlist-value2.C
index 594d814e405..1b4cde769da 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist-value2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist-value2.C
@@ -2,8 +2,7 @@
// constructor but defaulted default constructor. The FDIS got this
// wrong; see c++std-core-19883.
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist1.C b/gcc/testsuite/g++.dg/cpp0x/initlist1.C
index fab577130d7..fb8e85b3241 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist1.C
@@ -1,6 +1,5 @@
// Basic uses of initializer lists
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist10.C b/gcc/testsuite/g++.dg/cpp0x/initlist10.C
index 0f78b2c5f66..80a8837d329 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist10.C
@@ -1,5 +1,5 @@
// PR c++/38380
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
namespace std
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist11.C b/gcc/testsuite/g++.dg/cpp0x/initlist11.C
index 1948d3ec534..024466ea866 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist11.C
@@ -1,5 +1,5 @@
// PR c++/38684
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist12.C b/gcc/testsuite/g++.dg/cpp0x/initlist12.C
index f18f48f3290..5efdc6711dd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist12.C
@@ -1,5 +1,5 @@
// PR c++/38698
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist13.C b/gcc/testsuite/g++.dg/cpp0x/initlist13.C
index 53c90590a29..bba226798ea 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist13.C
@@ -1,6 +1,5 @@
// PR c++/39056
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
#include <complex>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist14.C b/gcc/testsuite/g++.dg/cpp0x/initlist14.C
index 1760c612a8d..41331c4f69d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist14.C
@@ -1,6 +1,6 @@
// Bug: We weren't doing the normal replacement of array with pointer
// for deduction in the context of a call because of the initializer list.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist15.C b/gcc/testsuite/g++.dg/cpp0x/initlist15.C
index 55fc4a47936..acd04956b1b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist15.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Just discard errors pointing at header files
// { dg-prune-output "include" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist16.C b/gcc/testsuite/g++.dg/cpp0x/initlist16.C
index b6d1b1a09a8..9132bd21622 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist16.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist17.C b/gcc/testsuite/g++.dg/cpp0x/initlist17.C
index 4e78bad91d8..6ff468989e0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist17.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
void f(int i);
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist18.C b/gcc/testsuite/g++.dg/cpp0x/initlist18.C
index 755c267d6cd..bcf90c83a0c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist18.C
@@ -1,6 +1,5 @@
// PR c++/40308, 40311
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
template< typename T >
struct test {
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist19.C b/gcc/testsuite/g++.dg/cpp0x/initlist19.C
index 6edd069c94c..ef47d3ec0e6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist19.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Allow other errors, too
// { dg-prune-output "error" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist2.C b/gcc/testsuite/g++.dg/cpp0x/initlist2.C
index c0133dd2523..550c8f64652 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist2.C
@@ -1,8 +1,7 @@
// Test that conversion to std::initializer_list takes priority over other
// user-defined conversions.
-// { dg-do link }
-// { dg-options "-std=c++11" }
+// { dg-do link { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist20.C b/gcc/testsuite/g++.dg/cpp0x/initlist20.C
index ce2982b7f51..0ee37e58648 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist20.C
@@ -1,5 +1,5 @@
// PR c++/40689
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist21.C b/gcc/testsuite/g++.dg/cpp0x/initlist21.C
index bad9e003d8f..6492b2664e2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist21.C
@@ -1,5 +1,5 @@
// PR c++/40689
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist22.C b/gcc/testsuite/g++.dg/cpp0x/initlist22.C
index 19aefd304d5..0cbfe24a4a7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist22.C
@@ -1,5 +1,5 @@
// Core issue 934/1288
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist23.C b/gcc/testsuite/g++.dg/cpp0x/initlist23.C
index bc37fe601a5..7e73df06e18 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist23.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist24.C b/gcc/testsuite/g++.dg/cpp0x/initlist24.C
index e4c99c4fc8f..d88574436bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist24.C
@@ -1,5 +1,5 @@
// PR c++/39923
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist25.C b/gcc/testsuite/g++.dg/cpp0x/initlist25.C
index cf0bfdaeb13..dd41db1f641 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist25.C
@@ -1,6 +1,5 @@
// PR c++/41754
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <map>
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist26.C b/gcc/testsuite/g++.dg/cpp0x/initlist26.C
index 1b9dfcad6fd..81d304f0e9e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist26.C
@@ -1,6 +1,6 @@
// PR c++/42059
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" { target { ! c++1y } } }
void
foo (int i)
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist27.C b/gcc/testsuite/g++.dg/cpp0x/initlist27.C
index 95f93ac43aa..8567119c989 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist27.C
@@ -1,5 +1,4 @@
// PR c++/42061
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int& i = { j }; // { dg-error "invalid initialization|was not declared" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist28.C b/gcc/testsuite/g++.dg/cpp0x/initlist28.C
index b4125a5b43d..3bf995ad236 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist28.C
@@ -1,5 +1,5 @@
// PR c++/42060
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist29.C b/gcc/testsuite/g++.dg/cpp0x/initlist29.C
index dbedeb9d29e..9174164aa48 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist29.C
@@ -1,5 +1,5 @@
// PR c++/42331
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class Mesh
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist3.C b/gcc/testsuite/g++.dg/cpp0x/initlist3.C
index 063a08f5633..e62e0cc337d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist30.C b/gcc/testsuite/g++.dg/cpp0x/initlist30.C
index e2c21ab17a3..eb78f3c1cdb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist30.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist30.C
@@ -1,5 +1,5 @@
// Testcase for variadic init list deduction.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist31.C b/gcc/testsuite/g++.dg/cpp0x/initlist31.C
index 85594a6fcf1..f34a0ca18ab 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist31.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist31.C
@@ -1,5 +1,5 @@
// PR c++/43028
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist32.C b/gcc/testsuite/g++.dg/cpp0x/initlist32.C
index 7db5e78fd6f..c5c02fc63da 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist32.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist32.C
@@ -1,5 +1,5 @@
// Test that we try normal init if no list ctor is viable.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist33.C b/gcc/testsuite/g++.dg/cpp0x/initlist33.C
index 6376473922b..9ab4b55d31e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist33.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist33.C
@@ -1,5 +1,5 @@
// PR c++/44045
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist34.C b/gcc/testsuite/g++.dg/cpp0x/initlist34.C
index 20df3432b05..335a7dab8e0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist34.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist34.C
@@ -1,5 +1,5 @@
// PR c++/44157
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist35.C b/gcc/testsuite/g++.dg/cpp0x/initlist35.C
index 4b8547504c1..f8b824d4562 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist35.C
@@ -1,5 +1,5 @@
// PR c++/41510
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct B
{
@@ -14,11 +14,11 @@ struct A
void f()
{
A a = { 1, 2 };
-};
+}
template <class T> void g()
{
A a = { 1, 2 };
-};
+}
template void g<int>();
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist36.C b/gcc/testsuite/g++.dg/cpp0x/initlist36.C
index 2d412466aef..2a2b208165b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist36.C
@@ -1,5 +1,5 @@
// PR c++/44358
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist37.C b/gcc/testsuite/g++.dg/cpp0x/initlist37.C
index 8fed990eb05..dfe6d4a4e4a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist37.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist37.C
@@ -1,5 +1,5 @@
// DR 990
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist38.C b/gcc/testsuite/g++.dg/cpp0x/initlist38.C
index 1a4b8e50549..816f94cf22a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist38.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist38.C
@@ -1,5 +1,5 @@
// DR 990
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist39.C b/gcc/testsuite/g++.dg/cpp0x/initlist39.C
index afd8315496a..169c063a39b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist39.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist39.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { int i; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist4.C b/gcc/testsuite/g++.dg/cpp0x/initlist4.C
index 8e5edb9abc4..22e6b456a7f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist4.C
@@ -1,5 +1,5 @@
// Test for initializer-list 'explicit' rule
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist40.C b/gcc/testsuite/g++.dg/cpp0x/initlist40.C
index 0592fa23f96..6e6a11a6454 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist40.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist40.C
@@ -1,5 +1,5 @@
// PR c++/54835, DR 1518
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist41.C b/gcc/testsuite/g++.dg/cpp0x/initlist41.C
index f07cf1dd832..7ae4928f2bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist41.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist41.C
@@ -1,5 +1,5 @@
// PR c++/44703
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist42.C b/gcc/testsuite/g++.dg/cpp0x/initlist42.C
index c1ab63dc2e0..fcd71cc766f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist42.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist42.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum Unscoped { };
enum class Scoped { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist43.C b/gcc/testsuite/g++.dg/cpp0x/initlist43.C
index 6e524f4bf63..1cae23a432d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist43.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist43.C
@@ -1,5 +1,5 @@
// Test that using T{} at file scope doesn't create a static temporary.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler-not "local" } }
struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist44.C b/gcc/testsuite/g++.dg/cpp0x/initlist44.C
index 1c6403336a9..609e07b7217 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist44.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist44.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist45.C b/gcc/testsuite/g++.dg/cpp0x/initlist45.C
index c4c1867bf67..31bd18d993f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist45.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist45.C
@@ -1,5 +1,5 @@
// PR c++/46289
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist46.C b/gcc/testsuite/g++.dg/cpp0x/initlist46.C
index 64bc314ffbd..39a3b5ebd91 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist46.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist46.C
@@ -1,6 +1,6 @@
// PR c++/48281
-// { dg-options "-std=c++11 -O2" }
-// { dg-do run }
+// { dg-options "-O2" }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist47.C b/gcc/testsuite/g++.dg/cpp0x/initlist47.C
index 91f7d5edd84..0b34ff91c0c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist47.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist47.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { ~A() = delete; }; // { dg-message "declared" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist48.C b/gcc/testsuite/g++.dg/cpp0x/initlist48.C
index b8a5cf2d960..7a79c677663 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist48.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist48.C
@@ -1,5 +1,5 @@
// PR c++/48726
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <memory>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist49.C b/gcc/testsuite/g++.dg/cpp0x/initlist49.C
index cfed1547423..0fa4e3f3343 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist49.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist49.C
@@ -1,6 +1,5 @@
// Test for non-trivial list-initialization with array new.
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist5.C b/gcc/testsuite/g++.dg/cpp0x/initlist5.C
index ed8f00a7a73..5f253ca4827 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist5.C
@@ -1,5 +1,5 @@
// Test for narrowing diagnostics
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist50.C b/gcc/testsuite/g++.dg/cpp0x/initlist50.C
index 50b5d18efb3..41fb03ba002 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist50.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist50.C
@@ -1,5 +1,5 @@
// PR c++/45418
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A1 { };
struct A2 {
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist51.C b/gcc/testsuite/g++.dg/cpp0x/initlist51.C
index 1a63570f6a9..9fd750df248 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist51.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist51.C
@@ -1,5 +1,5 @@
// PR c++/47184
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist52.C b/gcc/testsuite/g++.dg/cpp0x/initlist52.C
index 8a70513bca9..3ca8781060c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist52.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist52.C
@@ -1,5 +1,5 @@
// PR c++/45378
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist53.C b/gcc/testsuite/g++.dg/cpp0x/initlist53.C
index 8e5332704be..998e4c81d6b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist53.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist53.C
@@ -1,6 +1,5 @@
// PR c++/49216
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <initializer_list>
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist54.C b/gcc/testsuite/g++.dg/cpp0x/initlist54.C
index d50c230dba6..52a8ff94d99 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist54.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist54.C
@@ -1,5 +1,5 @@
// PR c++/49355
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist55.C b/gcc/testsuite/g++.dg/cpp0x/initlist55.C
index 917bc935470..a40edd3e616 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist55.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist55.C
@@ -1,5 +1,6 @@
// Test for -Wno-narrowing
-// { dg-options "-std=c++11 -pedantic-errors -Wno-narrowing" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic-errors -Wno-narrowing" }
int i;
float d = { i };
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist56.C b/gcc/testsuite/g++.dg/cpp0x/initlist56.C
index 72ad364ef27..5339dbfa403 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist56.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist56.C
@@ -1,5 +1,5 @@
// PR c++/47453
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
// invalid
int a({0}); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist57.C b/gcc/testsuite/g++.dg/cpp0x/initlist57.C
index 1a44b8124d0..5c59f403d74 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist57.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist57.C
@@ -1,5 +1,5 @@
// PR c++/50054
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
void g( const int& (a)[1] ) {} // { dg-error "array of references" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist58.C b/gcc/testsuite/g++.dg/cpp0x/initlist58.C
index a04e191b57d..aab21e35d1a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist58.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist58.C
@@ -1,5 +1,5 @@
// PR c++/50209
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S { int i,j; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist59.C b/gcc/testsuite/g++.dg/cpp0x/initlist59.C
index 3974042d26e..6371c165025 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist59.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist59.C
@@ -1,5 +1,5 @@
// PR c++/49996
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist6.C b/gcc/testsuite/g++.dg/cpp0x/initlist6.C
index 631bbd0407a..3d02960b961 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist6.C
@@ -1,6 +1,5 @@
// Test for initlist lifetime
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist62.C b/gcc/testsuite/g++.dg/cpp0x/initlist62.C
index 3a25e13f1ef..d739ea39292 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist62.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist62.C
@@ -1,5 +1,5 @@
// PR c++/51399
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist63.C b/gcc/testsuite/g++.dg/cpp0x/initlist63.C
index a72c0ab9922..00940479af2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist63.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist63.C
@@ -1,5 +1,5 @@
// Origin PR c++/51475
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
@@ -13,4 +13,4 @@ struct B
const std::initializer_list<A>& x;
};
-B b = {{1}}; // { dg-error "invalid conversion|cannot convert" }
+B b = {{1}}; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist64.C b/gcc/testsuite/g++.dg/cpp0x/initlist64.C
index 1550d477fb3..78e53085987 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist64.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist64.C
@@ -1,5 +1,5 @@
// PR c++/51553
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist65.C b/gcc/testsuite/g++.dg/cpp0x/initlist65.C
index 36127069d22..061734f36ae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist65.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist65.C
@@ -1,5 +1,5 @@
// Core 1270
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist7.C b/gcc/testsuite/g++.dg/cpp0x/initlist7.C
index 73c924250bf..7dbbf2d2200 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist7.C
@@ -1,5 +1,5 @@
// PR c++/37932
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
typedef enum { AA=1, BB=2 } my_enum;
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist8.C b/gcc/testsuite/g++.dg/cpp0x/initlist8.C
index e2c85d70d20..ca0bc464ff4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist8.C
@@ -1,5 +1,5 @@
// PR c++/37740
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist9.C b/gcc/testsuite/g++.dg/cpp0x/initlist9.C
index 0ad39463bc0..bb6414c6228 100644
--- a/gcc/testsuite/g++.dg/cpp0x/initlist9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist9.C
@@ -1,5 +1,5 @@
// PR c++/37860
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct b
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/inline-ns1.C b/gcc/testsuite/g++.dg/cpp0x/inline-ns1.C
index 287b7e072aa..69813b6ed32 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inline-ns1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inline-ns1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZN1Q2V11fEv" } }
// { dg-final { scan-assembler "_ZN1Q2V11iE" } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/inline-ns2.C b/gcc/testsuite/g++.dg/cpp0x/inline-ns2.C
index 19fb9adfe90..6ad9d65a6fb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inline-ns2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inline-ns2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace Q {
inline namespace V1 {
diff --git a/gcc/testsuite/g++.dg/cpp0x/inline-ns3.C b/gcc/testsuite/g++.dg/cpp0x/inline-ns3.C
index 4e8449e30ec..7e24e806e7c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inline-ns3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inline-ns3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace C
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/iop.C b/gcc/testsuite/g++.dg/cpp0x/iop.C
index 34a5a5a1c2d..0a78be9f5b0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/iop.C
+++ b/gcc/testsuite/g++.dg/cpp0x/iop.C
@@ -6,8 +6,7 @@
// See http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html under the
// section "Revision 1 Summary and Rationale" for more details.
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-50220.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-50220.C
index 240143cf65c..4da9d469112 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-50220.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-50220.C
@@ -1,5 +1,5 @@
// PR c++/50220
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template<typename Foo> struct Foobar {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-__func__.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-__func__.C
index 1cc7bb65833..52bb874c5df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-__func__.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-__func__.C
@@ -1,6 +1,5 @@
// PR c++/44160
-// { dg-options -std=c++0x }
-// { dg-do link }
+// { dg-do link { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-array.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-array.C
index 2129051ed72..adb40ed6b71 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-array.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-array.C
@@ -1,6 +1,5 @@
// Test that array capture by copy works.
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-auto1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-auto1.C
index b5ba0663754..d13e2c0da19 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-auto1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-auto1.C
@@ -1,5 +1,5 @@
// PR c++/50437
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template <typename T>
void f()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref-neg.C
index 7d1a1bd89d2..9c9632cd516 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref.C
index 704c24085d0..16fd0a713a7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-const-ref.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-neg.C
index 82cc98423ee..3f9da7e4665 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-neg.C
@@ -1,5 +1,5 @@
// PR c++/50736
-// { dg-options "-std=c++0x -pedantic-errors" }
+// { dg-do compile { target c++11 } }
int i;
void f();
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-redundancy.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-redundancy.C
index 51e55a7aa4c..49fbdf32045 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-redundancy.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-capture-redundancy.C
@@ -1,5 +1,6 @@
// FDIS 5.1.2/8
-// { dg-options "-pedantic-errors -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic-errors" }
struct S2 { void f(int i); };
void S2::f(int i) {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const-neg.C
index 7e7541ca2ee..28ea53363a5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const.C
index 5f6f0b3dcb8..c6150f17456 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const2.C
index d2457d6491c..884163a291e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-const2.C
@@ -1,6 +1,6 @@
// PR c++/52026
-// { dg-options "-std=c++11 -O" }
-// { dg-do run }
+// { dg-options "-O" }
+// { dg-do run { target c++11 } }
template<bool B>
int func() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv.C
index 5409d5ca388..08d8bbfc200 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv.C
@@ -1,6 +1,6 @@
// Test for conversion from stateless lambda to function pointer.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "weak\[^\n\r\]*_?_ZZ1fvENKUlvE_cvPFvvEEv" { target { ! { *-*-darwin* *-*-mingw* *-*-cygwin *-*-hpux10* } } } } }
inline void f()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv2.C
index fc19c9969d7..cd4cf7e6199 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv2.C
@@ -1,7 +1,6 @@
// Test for conversion from stateless lambda to function pointer.
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
typedef int (*pfn)(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv3.C
index e4e7daffdd5..ebc6c14d2c0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv3.C
@@ -2,7 +2,7 @@
// work properly for variadics. Make sure that we can still use the lambda
// normally.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
void f()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C
index 6584d28b9a8..66c09102d80 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C
@@ -1,5 +1,5 @@
// PR c++/43641
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct B
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv5.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv5.C
index 53d8e995ef9..f5408a96262 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv5.C
@@ -1,5 +1,5 @@
// PR c++/45080
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
typedef void(*pfn)();
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv6.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv6.C
index bd904372367..3b3fda9f946 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv6.C
@@ -1,6 +1,5 @@
// PR c++/55015
-// { dg-do link }
-// { dg-options -std=c++11 }
+// { dg-do link { target c++11 } }
typedef void (*VoidFunc)();
inline VoidFunc GetFunc() { return [](){}; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default-neg.C
index 1af2a95d8a6..91f5d621b0a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
int main() {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default.C
index 239a99cbf96..232c56b46e1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-default.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
int main() {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-neg.C
index d77e57e6310..caffb7f258e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
int main() {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy.C
index 7356872e1ab..6d27d75febf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-copy.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
int main() {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctor-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctor-neg.C
index 76ed7445f45..4a63d000f2e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctor-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctor-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
void f()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctors.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctors.C
index e263145b01d..8dfb2fa6b6c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctors.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ctors.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-debug.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-debug.C
index 07fc1896c81..b8b15d01aee 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-debug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-debug.C
@@ -1,5 +1,6 @@
// PR c++/43502
-// { dg-options "-std=c++0x -fcompare-debug" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fcompare-debug" }
void g (int n)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-decltype1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-decltype1.C
index 0ab0cddb54a..b36ca21673f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-decltype1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-decltype1.C
@@ -1,6 +1,7 @@
// PR c++/59791
// We force the gimple dump to trigger use of lang_decl_name.
-// { dg-options "-std=c++11 -fdump-tree-gimple" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fdump-tree-gimple" }
// { dg-final { cleanup-tree-dump "gimple" } }
template < class T > void
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg.C
index f93e78a27c4..88970a93309 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg.C
@@ -1,6 +1,6 @@
// Testcase for DR 975.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
bool b;
struct A { int fn1(); const int& fn2(); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg2.C
index 5c63409b681..fdbb4e1e377 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-ext-neg2.C
@@ -1,7 +1,8 @@
// Test that this is accepted even when pedantic now that it's part
// of the standard.
-// { dg-options "-std=c++0x -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
bool b;
template <class T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-neg.C
index c932c09db3c..6ada75756ca 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
int main() {
int i = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce.C
index cc5cc540217..b0e2d9fbabe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C
index eeb9814a054..5cf016cb907 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C
@@ -1,5 +1,5 @@
// PR c++/43875
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
void f();
void f(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg.C
index 069935823ea..cefa24d434e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x -pedantic-errors" }
+// { dg-do compile { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg2.C
index f47c5ba27ae..35104c392a3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg2.C
@@ -1,5 +1,5 @@
// PR c++/43886
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
void f2() {
int i = 1;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg3.C
index f02fb29b36e..1c593930133 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-defarg3.C
@@ -1,5 +1,6 @@
// PR c++/55223
-// { dg-options "-std=c++11 -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
// { dg-final { scan-assembler "_ZN8functionC1IZN1CIiE4testES_Ed_UliE_EET_" } }
struct function
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-direct-init.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-direct-init.C
index bbc2a1ca52d..7cc3f8f6701 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-direct-init.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-direct-init.C
@@ -1,5 +1,5 @@
// Test that capture by copy uses direct-initialization.
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh.C
index ea5060d1a3d..7516fe0fe01 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh.C
@@ -1,9 +1,9 @@
// Test that we properly clean up if we get an exception in the middle of
// constructing the closure object.
-// { dg-options -std=c++0x }
// This test fails because of PR 41449; it isn't a lambda issue.
// { dg-do run { xfail *-*-* } }
+// { dg-require-effective-target c++11 }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
index 0c94b554f86..1ef510a484a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
@@ -1,7 +1,7 @@
// PR c++/47263
// PR c++/49260
-// { dg-options "-std=c++0x -fno-asynchronous-unwind-tables -fno-dwarf2-cfi-asm" }
-// { dg-do run }
+// { dg-options "-fno-asynchronous-unwind-tables -fno-dwarf2-cfi-asm" }
+// { dg-do run { target c++11 } }
#include <exception>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc.C
index 92c54313874..3dc7f8774c3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc.C
@@ -1,6 +1,6 @@
// Test that error messages about creating the closure object refer to
// the lambda-introducer.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc2.C
index 213f7c0babf..4ddd38cc4ee 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-errloc2.C
@@ -1,5 +1,5 @@
// PR c++/42399
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A {
A();
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-field-names.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-field-names.C
index b292d889806..1c5cfdbd8e0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-field-names.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-field-names.C
@@ -2,7 +2,7 @@
// declared in the closure type" -- test that there isn't a member of the
// closure with the same name as the captured variable.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template <class T>
struct A: public T
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-for.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-for.C
index f161da85774..0123034e09c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-for.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-for.C
@@ -1,5 +1,6 @@
// PR c++/50114
-// { dg-options "-std=c++0x -w" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-w" }
int open()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice1.C
index 1ea8f4d7b58..e4a11eaf667 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice1.C
@@ -1,5 +1,5 @@
// PR c++/43790
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C
index 6468f18a0ac..6a31e0a36f3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C
@@ -1,5 +1,5 @@
// PR c++/42083
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename F>
decltype(F()) run(F f) // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice3.C
index 8ff36478d53..03a7a4bb60d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice3.C
@@ -1,5 +1,5 @@
// PR c++/47795
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
class Klass
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice4.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice4.C
index 77c773bbdb3..8c08e909a76 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice4.C
@@ -1,5 +1,5 @@
// PR c++/47242
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template < typename > void
bar ()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice5.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice5.C
index 305db812d82..914e0f71e00 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice5.C
@@ -1,5 +1,5 @@
// PR c++/51227
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<int> int foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice6.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice6.C
index ddf352766eb..408af4203ba 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice6.C
@@ -1,4 +1,4 @@
// PR c++/51464
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<int = sizeof([])> struct A {}; // { dg-error "lambda" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice7.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice7.C
index 946377e550a..d0ee866110d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice7.C
@@ -1,5 +1,5 @@
// PR c++/52487
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A; // { dg-error "forward declaration" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class-neg.C
index a93857e46af..92a165d95bb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class.C
index 33f4301e44f..92981109fd8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-in-class.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist1.C
index 078ebaee183..029576eabdd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist1.C
@@ -1,5 +1,5 @@
// PR c++/50863
-// { dg-options -std=gnu++0x }
+// { dg-do compile { target c++11 } }
struct T {
template<typename F>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist2.C
index daaa33938ad..3c25f0eb97d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-initlist2.C
@@ -1,5 +1,5 @@
// PR c++/54947
-// { dg-options -std=gnu++11 }
+// { dg-do compile { target c++11 } }
struct X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-lookup-neg.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-lookup-neg.C
index e07e892a1a3..a952526a17c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-lookup-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-lookup-neg.C
@@ -1,5 +1,5 @@
// Test that we don't crash on a failed lookup.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle.C
index 5c9b483d3a6..220817a733f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle.C
@@ -1,6 +1,7 @@
// Test lambda mangling
// { dg-require-weak "" }
-// { dg-options "-std=c++0x -fno-inline" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-inline" }
template<typename F> int algo(F fn) { return fn(); }
inline void g(int n) {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle2.C
index 4b7d15ad953..54309a9dd93 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle2.C
@@ -1,6 +1,5 @@
// PR c++/49276
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template <int N>
struct F
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle3.C
index 06913a1c1a7..5f17a21cac4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mangle3.C
@@ -1,5 +1,5 @@
// PR c++/51818
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZN1AC1IN3foo3barMUlvE_EEET_" } }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mixed.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mixed.C
index ed0565fa9ce..d3f434195ea 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mixed.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mixed.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mutable.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mutable.C
index 73a4d1bac74..2c6b0f20644 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mutable.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-mutable.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C
index df2b03705ae..a09af89ce43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C
@@ -1,5 +1,6 @@
// PR c++/56710
-// { dg-options "-std=c++11 -Wall" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall" }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested.C
index feb0cde597d..c8ea46a980f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested2.C
index b7887485595..9e509513ad9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested2.C
@@ -1,5 +1,5 @@
// Testcase from N2998
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
void f1(int i) {
int const N = 20;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested3.C
index 2cc6f964083..f7894fb408c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested3.C
@@ -1,5 +1,5 @@
// PR c++/41896
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
void nested_lambda()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested4.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested4.C
index a5bd1a2f4ee..140ed30e4fb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nested4.C
@@ -1,5 +1,5 @@
// PR c++/47687
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template <class T> struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-non-const.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-non-const.C
index b6489de4b44..b5a335eaf13 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-non-const.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-non-const.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nop.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nop.C
index 74149b23122..4a04cfbfb58 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nop.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-nop.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
int main() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ns-scope.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ns-scope.C
index cde0c2e5379..4729bb3b30f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ns-scope.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ns-scope.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
auto f = [](int i) { return i+1; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-pass.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-pass.C
index 9dd64484a45..d904ebee16b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-pass.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-pass.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
#include <algorithm>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-qualified.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-qualified.C
index ef041c2bb90..40b539a6d88 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-qualified.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-qualified.C
@@ -1,5 +1,5 @@
// PR c++/50089
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct TestBase
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-recursive.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-recursive.C
index 1a12eab312f..cbaeb16201f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-recursive.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-recursive.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
//#include <iostream>
#include <functional>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref-default.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref-default.C
index 40376f43db3..6b86369dbf2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref-default.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref-default.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref.C
index a5ee7b4c3c8..def13fdd67b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref2.C
index 15f1d9034a3..49705f502bf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ref2.C
@@ -1,6 +1,5 @@
// PR c++/49598
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
int
main()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow1.C
index f4433faec92..fcfc39e3eb6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow1.C
@@ -1,5 +1,6 @@
// PR c++/55357
-// { dg-options "-std=c++11 -Wshadow" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wshadow" }
int main() {
int x = 1; // { dg-message "shadowed" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow2.C
index 8237a8178c1..6c042ca677b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-shadow2.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -Wshadow" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wshadow" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
index 26c09fdb119..a410384a451 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-std-function.C
@@ -1,6 +1,5 @@
// Test using std::function wrapper.
-// { dg-do run }
-// { dg-options -std=c++0x }
+// { dg-do run { target c++11 } }
#include <functional>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C
index c3067713caf..1cac211dd4c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C
@@ -1,5 +1,5 @@
// PR c++/49867
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
int
main ()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-syntax1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-syntax1.C
index b3b749c2a51..cb3ca94eb78 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-syntax1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-syntax1.C
@@ -1,5 +1,5 @@
// PR c++/46124
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
void foo() { [] () -> void (); } // { dg-error "returning a function" "returning" }
// { dg-error "expected .\{" "expected" { target *-*-* } 4 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template.C
index b4db3b881d1..66cc7a4e1df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template10.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template10.C
index 4a804628728..4fcc9652751 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template10.C
@@ -1,6 +1,6 @@
// PR c++/50276
-// { dg-options "-std=c++11 -Wuninitialized" }
-// { dg-do run }
+// { dg-options "-Wuninitialized" }
+// { dg-do run { target c++11 } }
template<typename T>
unsigned testfun(const T& func)
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template2.C
index 12ffde724e8..29f63afe0df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template2.C
@@ -1,5 +1,5 @@
// PR c++/47049
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
enum { E = 0, F = 1 };
template <int N, int M = ((N == 1) ? F : E)> class S {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template3.C
index fd6f1d3192f..dea9e0e4c09 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-template3.C
@@ -1,5 +1,5 @@
// PR c++/49554
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template<typename T>
struct base
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this.C
index ed2747654f9..b32f8d7cc28 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this.C
@@ -1,5 +1,5 @@
// Test that implicit 'this' capture works, but that it's still an rvalue.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C
index 04fe474c733..5029a4a7638 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C
@@ -1,6 +1,6 @@
// PR c++/43856
// Test for implicit 'this' capture via rewriting.
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct S1 {
int operator()(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this3.C
index de0d357f3ff..2defa998923 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this3.C
@@ -1,5 +1,5 @@
// PR c++/45520
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct M {
int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this4.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this4.C
index 29cd2a97b3f..f14a2723dbc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this4.C
@@ -1,5 +1,5 @@
// PR c++/48523
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template<typename>
struct X
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this6.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this6.C
index acf4eaa7fcb..8c35126e97f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this6.C
@@ -1,5 +1,5 @@
// PR c++/53137
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename STORE>
void getParent(STORE& tStore)
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this7.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this7.C
index 6e25c331b45..ee202032a18 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this7.C
@@ -1,5 +1,5 @@
// PR c++/54122
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum E { F };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-type.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-type.C
index 3b2a2a76a46..a0c17ad162a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-type.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-type.C
@@ -11,7 +11,7 @@
// So, other appearances of 'x' within decltype do not refer to the closure
// member, because they are not "use"s in the sense of 3.2.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template<class T, class U>
struct same_type;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C
index 33ba7b0a436..898f685aa57 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C
@@ -1,5 +1,5 @@
// 5.1.2/2: A lambda-expression shall not appear in an unevaluated operand.
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template <class T>
struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use.C
index b1d6c300cfd..73677c0e767 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use.C
@@ -1,10 +1,10 @@
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
int main(int argc, char** argv)
{
int i;
int &ir = i;
- const int ci = 0;
+ const int ci = 1;
const int &cir = ci;
[] { sizeof (argc); sizeof (i); sizeof (ir); sizeof (ci); sizeof (cir); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use2.C
index 695a0b43292..96af09c5cbc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-use2.C
@@ -1,5 +1,6 @@
// PR c++/50224
-// { dg-options "-std=c++0x -Wunused-parameter" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wunused-parameter" }
struct T;
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic1.C
index f17b33618aa..e85f2bcff81 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic1.C
@@ -1,5 +1,5 @@
// PR c++/49672
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
template<typename ... Args>
static void foo()
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn1.C
index b384d5cff6d..f86c4b6d191 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn1.C
@@ -1,5 +1,6 @@
// PR c++/41920
-// { dg-options "-std=c++0x -Wall -Wextra" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall -Wextra" }
int foo(int i)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn2.C
index ce5e7c4503a..6542392ef1a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn2.C
@@ -1,5 +1,6 @@
// PR c++/42370
-// { dg-options "-std=c++0x -Wall" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall" }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C
index 77f35bc4630..5c5b24c133c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C
@@ -1,5 +1,6 @@
// PR c++/49482
-// { dg-options "-std=c++0x -Wunused-but-set-parameter" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wunused-but-set-parameter" }
template<class T>
void f() {
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn4.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn4.C
index 2afeccfc03c..059c198ff09 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn4.C
@@ -1,5 +1,6 @@
// PR c++/52845
-// { dg-options "-std=c++11 -Wall" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall" }
void f()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/linkage2.C b/gcc/testsuite/g++.dg/cpp0x/linkage2.C
index d9932948a20..52858687ed3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/linkage2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/linkage2.C
@@ -4,7 +4,7 @@
// o the variable or function is not used (3.2 [basic.def.odr]) or is
// defined in the same translation unit.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T> struct B {
void g(T){}
@@ -16,9 +16,9 @@ template <typename T> struct B {
template <typename T> T B<T>::t2 = { };
-enum {} e1; // OK, defined
-extern enum {} e2; // { dg-error "never defined" }
-extern "C" enum {} e3; // OK, extern "C"
+enum { E1 } e1; // OK, defined
+extern enum { E2 } e2; // { dg-error "never defined" }
+extern "C" enum { E3 } e3; // OK, extern "C"
void f() {
struct A { int x; }; // no linkage
diff --git a/gcc/testsuite/g++.dg/cpp0x/long_long.C b/gcc/testsuite/g++.dg/cpp0x/long_long.C
index eb6a326bba3..6a602c641a1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/long_long.C
+++ b/gcc/testsuite/g++.dg/cpp0x/long_long.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/move1.C b/gcc/testsuite/g++.dg/cpp0x/move1.C
index f86618a7036..5b9b17ebe67 100644
--- a/gcc/testsuite/g++.dg/cpp0x/move1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/move1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
#include <utility>
diff --git a/gcc/testsuite/g++.dg/cpp0x/named.C b/gcc/testsuite/g++.dg/cpp0x/named.C
index e97f4f6fd6a..7bd20933948 100644
--- a/gcc/testsuite/g++.dg/cpp0x/named.C
+++ b/gcc/testsuite/g++.dg/cpp0x/named.C
@@ -1,5 +1,4 @@
-// { dg-options "--std=c++11" }
-// { dg-do link }
+// { dg-do link { target c++11 } }
template<typename _Tp>
inline _Tp&&
diff --git a/gcc/testsuite/g++.dg/cpp0x/named_refs.C b/gcc/testsuite/g++.dg/cpp0x/named_refs.C
index f710f1e1f73..850179c42fa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/named_refs.C
+++ b/gcc/testsuite/g++.dg/cpp0x/named_refs.C
@@ -2,8 +2,7 @@
// Test: Named rvalue references are treated as lvalues.
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept01.C b/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
index 4526cd30158..9f425354bff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
@@ -1,5 +1,6 @@
// Test for noexcept-expression
-// { dg-options "-std=c++11 -O2" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O2" }
#include <typeinfo>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept02.C b/gcc/testsuite/g++.dg/cpp0x/noexcept02.C
index 78831762491..5d5867af61a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept02.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept02.C
@@ -1,5 +1,5 @@
// Test for noexcept-specification
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert(X, #X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept03.C b/gcc/testsuite/g++.dg/cpp0x/noexcept03.C
index b45cf365ce2..2d378677b7f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept03.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept03.C
@@ -1,6 +1,7 @@
// Runtime test for noexcept-specification.
-// { dg-options "-std=c++11 -Wnoexcept" }
+// { dg-options "-Wnoexcept" }
// { dg-do run { target nonpic } }
+// { dg-require-effective-target c++11 }
#include <exception>
#include <cstdlib>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept04.C b/gcc/testsuite/g++.dg/cpp0x/noexcept04.C
index 6d31e5b4ca7..56ea1f48b8d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept04.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept04.C
@@ -3,8 +3,7 @@
// the compiler doesn't get clever about optimizing the calls based on
// knowledge about the called functions.
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <exception>
#include <cstdlib>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept05.C b/gcc/testsuite/g++.dg/cpp0x/noexcept05.C
index 8c74712b647..a6c425dc0b9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept05.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept05.C
@@ -8,7 +8,7 @@
// { dg-final { scan-assembler-not "EHB" } }
// { dg-final { scan-assembler "LSDA" } }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A { ~A(); };
void g();
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept06.C b/gcc/testsuite/g++.dg/cpp0x/noexcept06.C
index 5168dc640fc..7e1db661ec2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept06.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept06.C
@@ -1,7 +1,6 @@
// Test that checking of a nothrow specification uses the one on the
// definition.
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <exception>
#include <cstdlib>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept07.C b/gcc/testsuite/g++.dg/cpp0x/noexcept07.C
index f6df39f950e..90c50a9c3b3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept07.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept07.C
@@ -1,7 +1,6 @@
// Test that checking of a nothrow specification uses the one on the
// definition.
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#include <exception>
#include <cstdlib>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept08.C b/gcc/testsuite/g++.dg/cpp0x/noexcept08.C
index bceebb7ca19..96af0feb8eb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept08.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept08.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "overriding" }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept09.C b/gcc/testsuite/g++.dg/cpp0x/noexcept09.C
index b50ef9975db..d26a3aeab10 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept09.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept09.C
@@ -1,5 +1,6 @@
// Test that -Wnoexcept works with templates
-// { dg-options "-std=c++11 -Wnoexcept" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wnoexcept" }
template <class T>
T f (T t) { return t; } // { dg-warning "does not throw" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept10.C b/gcc/testsuite/g++.dg/cpp0x/noexcept10.C
index 1e86ac205ba..b80228278b3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept10.C
@@ -1,5 +1,5 @@
// PR c++/49082
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std { template <class T> T&& declval() noexcept; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept11.C b/gcc/testsuite/g++.dg/cpp0x/noexcept11.C
index 879a63ee5e2..6597f408744 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept11.C
@@ -1,5 +1,5 @@
// PR c++/49107
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename _Tp>
_Tp declval() noexcept;
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept12.C b/gcc/testsuite/g++.dg/cpp0x/noexcept12.C
index 592504bd5e9..185364b0f8b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept12.C
@@ -1,5 +1,5 @@
// Test that we handle merging with deferred noexcept.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class U>
struct O
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept13.C b/gcc/testsuite/g++.dg/cpp0x/noexcept13.C
index 7e76200befe..e52e9a0046c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept13.C
@@ -1,5 +1,5 @@
// PR c++/49107
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept14.C b/gcc/testsuite/g++.dg/cpp0x/noexcept14.C
index e6afca2b43a..913f2ef5515 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept14.C
@@ -1,4 +1,4 @@
// PR c++/50309
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
void foo () noexcept () { } // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept15.C b/gcc/testsuite/g++.dg/cpp0x/noexcept15.C
index efbd2ba90b6..909ee9748bc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept15.C
@@ -1,5 +1,5 @@
// PR c++/50391
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <type_traits>
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept17.C b/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
index 82cd844c067..b27acefcd3d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
@@ -1,5 +1,5 @@
// PR c++/50043
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct True1 {};
struct True2 { ~True2(); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept18.C b/gcc/testsuite/g++.dg/cpp0x/noexcept18.C
index 953fb0ec8b2..e851b860051 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept18.C
@@ -1,6 +1,5 @@
// PR c++/54207
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef bool B;
constexpr B foo () { return true; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept19.C b/gcc/testsuite/g++.dg/cpp0x/noexcept19.C
index 12ff86e0d22..d303a8c60f2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept19.C
@@ -1,6 +1,5 @@
// PR c++/55652
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename T>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept20.C b/gcc/testsuite/g++.dg/cpp0x/noexcept20.C
index b86760292b3..ec4f3a15335 100644
--- a/gcc/testsuite/g++.dg/cpp0x/noexcept20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept20.C
@@ -1,5 +1,5 @@
// PR c++/56071
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class B
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nolinkage1.C b/gcc/testsuite/g++.dg/cpp0x/nolinkage1.C
index a7e6cd82c0d..d38028c4b43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nolinkage1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nolinkage1.C
@@ -2,8 +2,7 @@
// Test that this doesn't lead to link-time collisions.
// { dg-additional-sources "nolinkage1a.cc" }
-// { dg-do link }
-// { dg-options -std=c++11 }
+// { dg-do link { target c++11 } }
#include "nolinkage1.h"
diff --git a/gcc/testsuite/g++.dg/cpp0x/not_special.C b/gcc/testsuite/g++.dg/cpp0x/not_special.C
index 7b3c4ad1e3d..22054ea058e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/not_special.C
+++ b/gcc/testsuite/g++.dg/cpp0x/not_special.C
@@ -4,7 +4,7 @@
// That is, their presence should cause compiler declared
// copy ctor or assignment to be deleted.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <assert.h>
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-const1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-const1.C
index 1051288a4d8..b5b8dabbcec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-const1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-const1.C
@@ -1,5 +1,5 @@
// PR c++/50707
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
int g;
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer1.C
index 4398739c8cd..e1b9d69290f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#define SA(X) static_assert(X,#X)
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer2.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer2.C
index e4b963c9436..96ed2c8acfe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer3.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer3.C
index 3aae12c2a4c..90f910285cd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer3.C
@@ -1,5 +1,5 @@
// Do NSDMI get deferred instantiation?
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer4.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer4.C
index 9d39f29df6e..60ca88d4542 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer4.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer5.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer5.C
index ada5104615d..a83d40b2924 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-defer5.C
@@ -1,5 +1,5 @@
// PR c++/51666 (DR 325)
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct tuple
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-eh1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-eh1.C
index 301eb61053e..edcf5887db1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-eh1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-eh1.C
@@ -1,6 +1,6 @@
// Core issue 1351
// { dg-do run { xfail *-*-* } }
-// { dg-options -std=c++11 }
+// { dg-require-effective-target c++11 }
bool fail;
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-list1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-list1.C
index 68af7353755..e54be050bdd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-list1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-list1.C
@@ -1,5 +1,5 @@
// PR c++/50563
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S1 {
int a{10}, b{20}; // OK
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-list2.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-list2.C
index 0d71417389f..d3669865c41 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-list2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-list2.C
@@ -1,5 +1,5 @@
// PR c++/50930
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct nmc {
nmc() = default;
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-template1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-template1.C
index aa77680f2e9..7316dc6529c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-template1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-template1.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options -std=c++11 }
+// { dg-do run { target c++11 } }
struct base
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-template2.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-template2.C
index 952949c8950..fcb405c1576 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-template2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-template2.C
@@ -1,5 +1,6 @@
// PR c++/50614
-// { dg-options "-std=c++11 -fcompare-debug" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fcompare-debug" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1.C
index edf54bb1d2d..aeafe1cc51c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1.C
@@ -1,6 +1,5 @@
// PR c++/51611
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi1.C
index a840700e88c..976b8f48054 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi1.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options -std=c++11 }
+// { dg-do run { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi2.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi2.C
index 5be3366f1dd..31a638f2d18 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi3.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi3.C
index 3024e731587..a8e8cdf2fef 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi4.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi4.C
index 08579eef194..6f97b067154 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi4.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options -std=c++11 }
+// { dg-do run { target c++11 } }
int c;
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi5.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi5.C
index 9b33346422c..bade28f3dcc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi6.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi6.C
index bb455e778e4..e78f50019a5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi6.C
@@ -1,5 +1,5 @@
// Origin PR c++/51477
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi7.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi7.C
index ea1957775ad..4b08474aaf9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nsdmi7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi7.C
@@ -1,6 +1,6 @@
// PR c++/53594
-// { dg-do compile }
-// { dg-options "-std=c++11 -Wuninitialized" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wuninitialized" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr01.C b/gcc/testsuite/g++.dg/cpp0x/nullptr01.C
index 27643e6b732..90917d74f74 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr01.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr01.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test assignment to pointer
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr02.C b/gcc/testsuite/g++.dg/cpp0x/nullptr02.C
index 7c330743b8c..50b3d0741b9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr02.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr02.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test assignment to nullptr_t
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr03.C b/gcc/testsuite/g++.dg/cpp0x/nullptr03.C
index aaf199ce0db..cc3c031a90a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr03.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr03.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test assignment to int
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr04.C b/gcc/testsuite/g++.dg/cpp0x/nullptr04.C
index 999f05467c3..372ac51cd7b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr04.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr04.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test cast to int
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr05.C b/gcc/testsuite/g++.dg/cpp0x/nullptr05.C
index e6e6a1bb9d3..65121b659d9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr05.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr05.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test assignment to method pointer
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr06.C b/gcc/testsuite/g++.dg/cpp0x/nullptr06.C
index 9b7b4dccfce..e933c35287e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr06.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr06.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test compare to pointer
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr07.C b/gcc/testsuite/g++.dg/cpp0x/nullptr07.C
index b2c27e81114..b2ef5151975 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr07.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr07.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test compare to int
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr08.C b/gcc/testsuite/g++.dg/cpp0x/nullptr08.C
index d09e070eaa8..dbf16323343 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr08.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr08.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test conversion to bool
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr09.C b/gcc/testsuite/g++.dg/cpp0x/nullptr09.C
index df6f5014a01..1422a35cffe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr09.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr09.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test compare to literal 0
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr10.C b/gcc/testsuite/g++.dg/cpp0x/nullptr10.C
index 4924dba9ce1..e27d65861ad 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr10.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test arithmetic operations
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr11.C b/gcc/testsuite/g++.dg/cpp0x/nullptr11.C
index 91e8e71a3a8..f81f0c3c1c8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr11.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test relational operators
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr12.C b/gcc/testsuite/g++.dg/cpp0x/nullptr12.C
index 0c131518297..43970820560 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr12.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test sizeof
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr13.C b/gcc/testsuite/g++.dg/cpp0x/nullptr13.C
index c51c81ef962..e788c16b120 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr13.C
@@ -1,16 +1,12 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test typeid
#include <typeinfo>
-#define assert_true(b) do { char c[2 * bool(b) - 1]; } while(0)
-
-void fun()
+int main()
{
- typeid(nullptr);
const decltype(nullptr) mynull = 0;
- typeid(mynull);
- assert_true(typeid(nullptr) == typeid(mynull));
+ if (typeid(nullptr) != typeid(mynull))
+ __builtin_abort();
}
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr14.C b/gcc/testsuite/g++.dg/cpp0x/nullptr14.C
index 1e9e5173786..6a79c49677c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr14.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test overload preference char*/int
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr15.C b/gcc/testsuite/g++.dg/cpp0x/nullptr15.C
index 1f91bae4fe5..939d4495950 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr15.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+
// Test template deduction
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr16.C b/gcc/testsuite/g++.dg/cpp0x/nullptr16.C
index 9456523037b..62029b3a907 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr16.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test template deduction
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr17.C b/gcc/testsuite/g++.dg/cpp0x/nullptr17.C
index 72884149525..96fea44b228 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr17.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test that bool is a better overload match than int
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr18.C b/gcc/testsuite/g++.dg/cpp0x/nullptr18.C
index 656628828f4..17dd62c84cc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr18.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test overload of pointer versus bool when applied on a nullptr_t
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr19.C b/gcc/testsuite/g++.dg/cpp0x/nullptr19.C
index 92e7f9a88d2..8b6a0b4289d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr19.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+
// Test overload of pointer versus nullptr_t when applied on a literal 0/__null
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr20.C b/gcc/testsuite/g++.dg/cpp0x/nullptr20.C
index 6c07eced7d1..bbd0c7e24e3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr20.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test passing to ellipisis
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr21.C b/gcc/testsuite/g++.dg/cpp0x/nullptr21.C
index 0355b826062..89884b90f72 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr21.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test throw and catch
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr22.C b/gcc/testsuite/g++.dg/cpp0x/nullptr22.C
index 08c3b0ae037..5fbd124b32c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr22.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -Wall -Wformat=2 -Wstrict-null-sentinel" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall -Wformat=2 -Wstrict-null-sentinel" }
// Test various warnings
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr23.C b/gcc/testsuite/g++.dg/cpp0x/nullptr23.C
index 077cd36806e..2fab690b60b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr23.C
@@ -1,5 +1,5 @@
// PR c++/50361
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
@@ -7,7 +7,7 @@ struct Foo
{
Foo(std::initializer_list<Foo>) { };
- template<class T> Foo(T t) { T u(t); };
+ template<class T> Foo(T t) { T u(t); }
private:
union Data
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr24.C b/gcc/testsuite/g++.dg/cpp0x/nullptr24.C
index e7833d11ef4..de0c84279ca 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr24.C
@@ -1,5 +1,5 @@
// PR c++/50371
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<decltype(nullptr)>
struct nt;
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr25.C b/gcc/testsuite/g++.dg/cpp0x/nullptr25.C
index bdc2ed3ad5c..a87a923a53d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr25.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<decltype(nullptr)>
struct nt{};
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr26.C b/gcc/testsuite/g++.dg/cpp0x/nullptr26.C
index 457e3ae2d34..f60fae02ac0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr26.C
@@ -1,5 +1,5 @@
// PR c++/51530
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T, class U>
void f(T, U);
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr27.C b/gcc/testsuite/g++.dg/cpp0x/nullptr27.C
index 1b86868aa19..2510dc80634 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr27.C
@@ -1,5 +1,6 @@
// PR c++/52706
-// { dg-options "-std=c++11 -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
// { dg-final { scan-assembler "_Z1fIDnLDn0EEiT_" } }
template<class T, decltype(nullptr) = nullptr>
diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr29.C b/gcc/testsuite/g++.dg/cpp0x/nullptr29.C
index a8e35a9b679..d2325bb83c4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/nullptr29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/nullptr29.C
@@ -1,4 +1,5 @@
// PR c++/53882
-// { dg-options "-std=gnu++11 -O" }
+// { dg-options "-O" }
+// { dg-do compile { target c++11 } }
void f(decltype(nullptr) &__restrict np) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/overload-conv-1.C b/gcc/testsuite/g++.dg/cpp0x/overload-conv-1.C
index 2661060b6e7..5817ad5606b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overload-conv-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overload-conv-1.C
@@ -1,5 +1,4 @@
-// { dg-options "--std=c++11" }
-// { dg-do link }
+// { dg-do link { target c++11 } }
struct S {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/overload-conv-2.C b/gcc/testsuite/g++.dg/cpp0x/overload-conv-2.C
index a3fdd3a8fa4..b95994d7fc4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overload-conv-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overload-conv-2.C
@@ -1,5 +1,4 @@
-// { dg-options "--std=c++11" }
-// { dg-do link }
+// { dg-do link { target c++11 } }
struct T {};
struct S
diff --git a/gcc/testsuite/g++.dg/cpp0x/overload.C b/gcc/testsuite/g++.dg/cpp0x/overload.C
index b10bb43fe11..a52e7c018f0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overload.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overload.C
@@ -1,5 +1,4 @@
-// { dg-options "--std=c++11" }
-// { dg-do link }
+// { dg-do link { target c++11 } }
// Generated by overload.py
template<typename _Tp>
diff --git a/gcc/testsuite/g++.dg/cpp0x/overload2.C b/gcc/testsuite/g++.dg/cpp0x/overload2.C
index e532fa25d54..2779f6d9e59 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overload2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overload2.C
@@ -1,5 +1,5 @@
// Core 1321
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// Two dependent names are equivalent even if the overload sets found by
// phase 1 lookup are different. Merging them keeps the earlier set.
diff --git a/gcc/testsuite/g++.dg/cpp0x/overload3.C b/gcc/testsuite/g++.dg/cpp0x/overload3.C
index e521b35bd0d..2d957830c22 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overload3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overload3.C
@@ -1,5 +1,5 @@
// PR c++/59823
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct X { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/overloadn.C b/gcc/testsuite/g++.dg/cpp0x/overloadn.C
index 00f9fde4900..16c39a9ed37 100644
--- a/gcc/testsuite/g++.dg/cpp0x/overloadn.C
+++ b/gcc/testsuite/g++.dg/cpp0x/overloadn.C
@@ -1,5 +1,5 @@
-// { dg-options "--std=c++11" }
-// { dg-do link }
+// { dg-do link { target c++11 } }
+// { dg-options "" }
// Generated by overload.py
template<typename _Tp>
diff --git a/gcc/testsuite/g++.dg/cpp0x/override1.C b/gcc/testsuite/g++.dg/cpp0x/override1.C
index 5b487106bfa..e05693fc590 100644
--- a/gcc/testsuite/g++.dg/cpp0x/override1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/override1.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
struct B
{
virtual void f() final {}
diff --git a/gcc/testsuite/g++.dg/cpp0x/override2.C b/gcc/testsuite/g++.dg/cpp0x/override2.C
index e5a9aa6ac50..c0b89de2a12 100644
--- a/gcc/testsuite/g++.dg/cpp0x/override2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/override2.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
struct B1 {};
struct B2 final {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/override4.C b/gcc/testsuite/g++.dg/cpp0x/override4.C
index 695f9a38109..7120984b371 100644
--- a/gcc/testsuite/g++.dg/cpp0x/override4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/override4.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "expected ';'" }
// { dg-prune-output "expected unqualified-id" }
// { dg-prune-output "declaration does not declare anything" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/parse1.C b/gcc/testsuite/g++.dg/cpp0x/parse1.C
index 0a86caf4ac4..5a11b7337a4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/parse1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/parse1.C
@@ -1,5 +1,5 @@
// PR c++/43509
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef int B; // { dg-message "" }
B::B() {} // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31431-2.C b/gcc/testsuite/g++.dg/cpp0x/pr31431-2.C
index 95901e56aa1..6d8f565e3fe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31431-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31431-2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename, typename..., typename> void foo(); // { dg-message "note" }
void bar()
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31431.C b/gcc/testsuite/g++.dg/cpp0x/pr31431.C
index 1e7507cd8b8..428673d1807 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31431.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31431.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename..., typename> void foo(); // { dg-message "note" }
void bar()
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31432.C b/gcc/testsuite/g++.dg/cpp0x/pr31432.C
index f4de1973bd9..1f2ea50972e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31432.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31432.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename..., typename> struct A // { dg-error "parameter pack" }
{
static int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31434.C b/gcc/testsuite/g++.dg/cpp0x/pr31434.C
index 3bce5785eca..e70bdd17e9a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31434.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31434.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> int foo(const T&) // { dg-error "not expanded with|T" }
{
union { T t; }; // { dg-error "not expanded with|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31437.C b/gcc/testsuite/g++.dg/cpp0x/pr31437.C
index b7a7bbf28bf..5f7010fe6a1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31437.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31437.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template <typename... T> struct A // { dg-message "candidates|A" }
{
A(T* p) { // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31438.C b/gcc/testsuite/g++.dg/cpp0x/pr31438.C
index 26c34b05ae3..272f4022d15 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31438.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31438.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename> struct A;
template<typename T, typename... U> struct A<T(U)> // { dg-error "parameter packs|U" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31439.C b/gcc/testsuite/g++.dg/cpp0x/pr31439.C
index 13221959bd9..f75373555ce 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31439.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31439.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<char> struct A<> {}; // { dg-error "not used in partial specialization|anonymous|declaration" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31442.C b/gcc/testsuite/g++.dg/cpp0x/pr31442.C
index bed4b57be97..7fd20e7ca55 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31442.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31442.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T, T = 0> struct A {}; // { dg-error "parameter packs|T|the end|parameter packs|anonymous" }
struct B
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31443.C b/gcc/testsuite/g++.dg/cpp0x/pr31443.C
index 0decd759367..3169312fc3a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31443.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31443.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int, typename... T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31444.C b/gcc/testsuite/g++.dg/cpp0x/pr31444.C
index 316ddb62187..955562d2076 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31444.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31444.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
template<int> void foo(A<T>); // { dg-error "not expanded|T" }
@@ -7,4 +7,4 @@ template<typename... T> struct A
void bar()
{
A<int>().foo<0>(A<int>()); // { dg-error "no member named" }
-};
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31445.C b/gcc/testsuite/g++.dg/cpp0x/pr31445.C
index 283eafb5990..89aae9a8578 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31445.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31445.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template <typename... T> struct A
{
void foo(T...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr31993.C b/gcc/testsuite/g++.dg/cpp0x/pr31993.C
index 39a73498fc8..9c3411cf3de 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr31993.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr31993.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32114.C b/gcc/testsuite/g++.dg/cpp0x/pr32114.C
index 923187163b4..0ae684ce938 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32114.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32114.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename ...T> struct A
{
typedef typename T::X Y; // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32115.C b/gcc/testsuite/g++.dg/cpp0x/pr32115.C
index 4e5700cdf73..5722aa3365c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32115.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32115.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename ...T, int = 0> struct A {}; // { dg-error "end of" }
A<int> a; // { dg-error "mismatch|expected|invalid" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32125.C b/gcc/testsuite/g++.dg/cpp0x/pr32125.C
index 7b913605b8b..01844bd4978 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32125.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32125.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<typename...T> struct A<T*> // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32126.C b/gcc/testsuite/g++.dg/cpp0x/pr32126.C
index c1cca94b869..dac1da563ae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32126.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32126.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<typename...T> struct A<T> // { dg-error "not expanded|T|" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32127.C b/gcc/testsuite/g++.dg/cpp0x/pr32127.C
index ca197ec4b3f..586469d8871 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32127.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32127.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...T> struct A
{
static T i; // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32128.C b/gcc/testsuite/g++.dg/cpp0x/pr32128.C
index 595e20e0876..147001e2cf3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32128.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32128.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<typename...T, typename...U>
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32252.C b/gcc/testsuite/g++.dg/cpp0x/pr32252.C
index f0f4b3ca610..715ad27db8a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32252.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32252.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int x[5];
template<int M, int N, int (&... p)[N]> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32253.C b/gcc/testsuite/g++.dg/cpp0x/pr32253.C
index df30b6a7842..2094b2d981f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32253.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32253.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<void (*... fp)()> struct A
{
A() { fp(); } // { dg-error "not expanded|fp" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr32566.C b/gcc/testsuite/g++.dg/cpp0x/pr32566.C
index 5802078f7c9..fd07432bff6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr32566.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr32566.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int...> struct A;
template<template<int> class... T> struct A<T...> {}; // { dg-error "mismatch|expected" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr33839.C b/gcc/testsuite/g++.dg/cpp0x/pr33839.C
index b4d3a620339..50bcfe81cf5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr33839.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr33839.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<int> struct A;
void foo()
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr33930.C b/gcc/testsuite/g++.dg/cpp0x/pr33930.C
index 814fb6537b9..8d9312c019b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr33930.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr33930.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
typedef const int* type;
float& foo( const type& ggg );
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr33955.C b/gcc/testsuite/g++.dg/cpp0x/pr33955.C
index 191fe5c356d..7d3f6b6649e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr33955.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr33955.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T>
struct uncvref
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr33996.C b/gcc/testsuite/g++.dg/cpp0x/pr33996.C
index 47829c04bc1..3fca7f24f7d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr33996.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr33996.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#define BUG
struct type
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34054.C b/gcc/testsuite/g++.dg/cpp0x/pr34054.C
index 19fcece6ca5..8043f9660ed 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34054.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34054.C
@@ -1,5 +1,4 @@
// PR c++/34054
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> T foo() {} // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34056.C b/gcc/testsuite/g++.dg/cpp0x/pr34056.C
index f227ce1a405..9c5261da8a0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34056.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34056.C
@@ -1,6 +1,5 @@
// PR c++/34056
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34057.C b/gcc/testsuite/g++.dg/cpp0x/pr34057.C
index 1c28c546b31..d74018e6c57 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34057.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34057.C
@@ -1,6 +1,5 @@
// PR c++/34057
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename... T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34058.C b/gcc/testsuite/g++.dg/cpp0x/pr34058.C
index 74dabc5151f..dc9e8364fef 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34058.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34058.C
@@ -1,6 +1,5 @@
// PR c++/34058
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename...T> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34060.C b/gcc/testsuite/g++.dg/cpp0x/pr34060.C
index 6653eb68fc8..f485346e71f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34060.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34060.C
@@ -1,6 +1,5 @@
// PR c++/34060
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <int> struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr34061.C b/gcc/testsuite/g++.dg/cpp0x/pr34061.C
index bb750f1d6cd..64f0ded10d5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr34061.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr34061.C
@@ -1,5 +1,4 @@
// PR c++/34061
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<int> class ...T> struct A : T<0> {}; // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr38646.C b/gcc/testsuite/g++.dg/cpp0x/pr38646.C
index 2177aab8f02..7dd53ae2630 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr38646.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr38646.C
@@ -1,6 +1,5 @@
/* PR c++/38646 */
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
template<int...> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr38795.C b/gcc/testsuite/g++.dg/cpp0x/pr38795.C
index bf44357fdf7..89ce0d368f7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr38795.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr38795.C
@@ -1,6 +1,5 @@
// PR c++/38795
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> int foo(int i)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr39639.C b/gcc/testsuite/g++.dg/cpp0x/pr39639.C
index 873c51e35f0..5618e80eba0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr39639.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr39639.C
@@ -1,7 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin: PR c++/39639
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "template argument 1 is invalid" }
template <class... Types>
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr42844-2.C b/gcc/testsuite/g++.dg/cpp0x/pr42844-2.C
index c7a02c2c738..ff23966051c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr42844-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr42844-2.C
@@ -1,6 +1,5 @@
// PR c++/42844
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A // { dg-message "user-provided default constructor" }
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr45908.C b/gcc/testsuite/g++.dg/cpp0x/pr45908.C
index b50b7b03ca0..dad8dfde9c3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr45908.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr45908.C
@@ -1,8 +1,7 @@
// PR c++/45908
// Testcase by Jonathan Wakely <redi@gcc.gnu.org>
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct vector {
struct iterator { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr47416.C b/gcc/testsuite/g++.dg/cpp0x/pr47416.C
index d7c5b13080a..e4eb317e771 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr47416.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr47416.C
@@ -1,6 +1,5 @@
// PR c++/47416
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
namespace std
{
@@ -214,7 +213,7 @@ namespace boost
{
}
};
-};
+}
void
foo (const int &a)
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr47476.C b/gcc/testsuite/g++.dg/cpp0x/pr47476.C
index dd386d17e8a..bf9a0652787 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr47476.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr47476.C
@@ -1,6 +1,5 @@
// PR c++/47476
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int
foo (int a, int b)
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr48522.C b/gcc/testsuite/g++.dg/cpp0x/pr48522.C
index 4f1117b9e31..560e70b6dfb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr48522.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr48522.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename T>
struct Handle
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr50025.C b/gcc/testsuite/g++.dg/cpp0x/pr50025.C
index 72324635edc..1f7d8d566bf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr50025.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr50025.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
#include <utility>
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr50491.C b/gcc/testsuite/g++.dg/cpp0x/pr50491.C
index c6177169a73..d203a33efeb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr50491.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr50491.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct GrandParent {
void *get();
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr50901.C b/gcc/testsuite/g++.dg/cpp0x/pr50901.C
index 091952f3e68..de82435a439 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr50901.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr50901.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T> int foo(int a)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51150.C b/gcc/testsuite/g++.dg/cpp0x/pr51150.C
index 8fe2b6f0f2b..af1d1cf2ea6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51150.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51150.C
@@ -1,5 +1,5 @@
// PR c++/51150
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct Clock {
double Now();
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51216.C b/gcc/testsuite/g++.dg/cpp0x/pr51216.C
index 0433c848f09..356b628e451 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51216.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51216.C
@@ -1,5 +1,6 @@
// PR c++/51216
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51225.C b/gcc/testsuite/g++.dg/cpp0x/pr51225.C
index a9f1cf0dc67..f80bd0e778e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51225.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51225.C
@@ -1,5 +1,5 @@
// PR c++/51225
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51313.C b/gcc/testsuite/g++.dg/cpp0x/pr51313.C
index 20332963564..eb304ba4480 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51313.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51313.C
@@ -1,5 +1,5 @@
// PR c++/51313
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class ostream;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51420.C b/gcc/testsuite/g++.dg/cpp0x/pr51420.C
index aec8cb1fcbc..7aa80e53637 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51420.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51420.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void
foo()
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51463.C b/gcc/testsuite/g++.dg/cpp0x/pr51463.C
index 1e8be3b5213..6a57e47825c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51463.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51463.C
@@ -1,6 +1,5 @@
// PR c++/51463
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51547.C b/gcc/testsuite/g++.dg/cpp0x/pr51547.C
index 5fae55a5f9c..578a799e7f8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51547.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51547.C
@@ -1,5 +1,5 @@
// PR c++/51547
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class T>
struct vector
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr51619.C b/gcc/testsuite/g++.dg/cpp0x/pr51619.C
index 75a922091aa..9a731880440 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr51619.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr51619.C
@@ -1,6 +1,5 @@
// PR c++/51619
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A { virtual ~A(); };
struct B { A a[1][1]; } b;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr57101.C b/gcc/testsuite/g++.dg/cpp0x/pr57101.C
index a5c4a3c11a6..94b576f4b87 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr57101.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr57101.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -fcompare-debug" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fcompare-debug" }
typedef long unsigned size_t;
namespace
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr57981.C b/gcc/testsuite/g++.dg/cpp0x/pr57981.C
index 5ee1f0ed6ff..33f46371eb7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr57981.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr57981.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 -Wall -Wextra" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall -Wextra" }
template<class T>
void f(T t, void* = 0) // { dg-warning "unused parameter" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr58072.C b/gcc/testsuite/g++.dg/cpp0x/pr58072.C
index 941d7c7499c..6d48a555b06 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr58072.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr58072.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/58072
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr59111.C b/gcc/testsuite/g++.dg/cpp0x/pr59111.C
index 14b45b14b09..4e48854418f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr59111.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr59111.C
@@ -1,5 +1,5 @@
// PR c++/59111
// { dg-do compile { target c++11 } }
-auto& foo(); // { dg-error "type specifier without trailing return type" }
-int i = foo(); // { dg-error "cannot convert" }
+auto& foo(); // { dg-error "type specifier without trailing return type" "" { target { ! c++1y } } }
+int i = foo(); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr59641.C b/gcc/testsuite/g++.dg/cpp0x/pr59641.C
index 12e8f92861f..36af96a892d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/pr59641.C
+++ b/gcc/testsuite/g++.dg/cpp0x/pr59641.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
typedef int T __attribute__((vector_size(2*sizeof(int))));
void foo(T& r, const T& a, const T& b)
diff --git a/gcc/testsuite/g++.dg/cpp0x/ptrmem-cst-arg1.C b/gcc/testsuite/g++.dg/cpp0x/ptrmem-cst-arg1.C
index b6c81d5f463..ed12655af32 100644
--- a/gcc/testsuite/g++.dg/cpp0x/ptrmem-cst-arg1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/ptrmem-cst-arg1.C
@@ -1,5 +1,5 @@
// Origin PR c++/51476
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int> struct A {};
struct B
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for1.C b/gcc/testsuite/g++.dg/cpp0x/range-for1.C
index b0e71158174..4fecdc71540 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for1.C
@@ -1,8 +1,7 @@
// Test for range-based for loop
// Test the loop with an array
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
extern "C" void abort();
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for10.C b/gcc/testsuite/g++.dg/cpp0x/range-for10.C
index e93f76eb4e9..1397830908d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for10.C
@@ -1,6 +1,6 @@
// PR c++/47388
-// { dg-do compile }
-// { dg-options "-fno-for-scope -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-for-scope" }
template <int>
void
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for11.C b/gcc/testsuite/g++.dg/cpp0x/range-for11.C
index 84f855890ae..d7dde91bc1a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for11.C
@@ -2,8 +2,7 @@
// Test the loop with a custom iterator
// with begin/end as member functions
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct iterator
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for12.C b/gcc/testsuite/g++.dg/cpp0x/range-for12.C
index 4b85366e6a7..5a2a7d1907c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for12.C
@@ -1,8 +1,7 @@
// Test for range-based for loop with templates
// and begin/end as member functions
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
/* Preliminary declarations */
namespace pre
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for13.C b/gcc/testsuite/g++.dg/cpp0x/range-for13.C
index 2b8d7f7105b..ab7bdde478e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for13.C
@@ -1,8 +1,7 @@
// Test for errors in range-based for loops
// with member begin/end
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
//These should not be used
template<typename T> int *begin(T &t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for14.C b/gcc/testsuite/g++.dg/cpp0x/range-for14.C
index 651ce37f1d8..f43e1abcde7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for14.C
@@ -1,8 +1,7 @@
// Test for other range-based for loops with
// begin/end member functions
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
//These should not be used
template<typename T> int *begin(T &t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for15.C b/gcc/testsuite/g++.dg/cpp0x/range-for15.C
index bbdc1999b04..5dd442dd1d5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for15.C
@@ -1,8 +1,7 @@
// Test for range-based for loop with templates
// and begin/end as member (non-)virtual functions
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
unsigned int g;
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for16.C b/gcc/testsuite/g++.dg/cpp0x/range-for16.C
index 76c1b91649a..bcc09cb1a0b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for16.C
@@ -1,8 +1,7 @@
// Test for range-based for loop with arrays of
// incomplete type or unknown size
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
extern int a[10];
extern int b[];
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for17.C b/gcc/testsuite/g++.dg/cpp0x/range-for17.C
index 72516f15e05..6cc3f9be116 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for17.C
@@ -1,11 +1,11 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern "C" int printf (const char *, ...);
enum E { e1, e2, e3, X };
E operator*(E e) { return e; }
E begin(E e) { return e; }
-E end(E e) { return X; };
+E end(E e) { return X; }
E operator++(E& e) { return e = E(e+1); }
int main()
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for18.C b/gcc/testsuite/g++.dg/cpp0x/range-for18.C
index f06311c7668..be436380e68 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for18.C
@@ -1,7 +1,6 @@
// PR c++/48994
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename T>
struct myvec
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for19.C b/gcc/testsuite/g++.dg/cpp0x/range-for19.C
index ee208d77e1b..e3f446f3700 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for19.C
@@ -1,7 +1,6 @@
// PR c++/49838
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for2.C b/gcc/testsuite/g++.dg/cpp0x/range-for2.C
index 325525ce4e3..ea845ee4283 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for2.C
@@ -2,8 +2,7 @@
// Test the loop with a custom iterator
// with begin/end in an associated namespace
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct iterator
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for20.C b/gcc/testsuite/g++.dg/cpp0x/range-for20.C
index 3d979d26fd1..eb3cfe73699 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for20.C
@@ -1,6 +1,6 @@
// PR c++/49834
// PR c++/50020
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for21.C b/gcc/testsuite/g++.dg/cpp0x/range-for21.C
index bf0b02bf398..4990b480be8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for21.C
@@ -1,5 +1,5 @@
// PR c++/49983
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
void f(T t)
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for22.C b/gcc/testsuite/g++.dg/cpp0x/range-for22.C
index 9db46eeb8fd..d4bb3601ff3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for22.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<int I> void f() {
for (auto i: {I} );
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for3.C b/gcc/testsuite/g++.dg/cpp0x/range-for3.C
index 2f1ce382651..cc6deaf3b9f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for3.C
@@ -2,8 +2,7 @@
// Test the loop with a custom iterator
// with begin/end in std
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct iterator
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for4.C b/gcc/testsuite/g++.dg/cpp0x/range-for4.C
index b27ec6ff4bf..8a3117b62d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for4.C
@@ -1,7 +1,6 @@
// Test for range-based for loop with templates
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
/* Preliminary declarations */
namespace pre
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for5.C b/gcc/testsuite/g++.dg/cpp0x/range-for5.C
index e74e33a2373..bf044068ba6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for5.C
@@ -1,7 +1,6 @@
// Test for errors in range-based for loops
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct container
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for6.C b/gcc/testsuite/g++.dg/cpp0x/range-for6.C
index 5fe405fac88..366499a34d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for6.C
@@ -1,8 +1,7 @@
// Test for range-based for loop
// Test the loop with an initializer_list
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for7.C b/gcc/testsuite/g++.dg/cpp0x/range-for7.C
index 253d6b0c433..3e88362e4e1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for7.C
@@ -1,8 +1,7 @@
// PR c++/46056
// Check that range-based for loop calls destructors
// when required
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
extern "C" void abort();
int value_counter = 0, it_counter = 0, seq_counter = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/range-for8.C b/gcc/testsuite/g++.dg/cpp0x/range-for8.C
index 7ef214edfaf..a389f66f609 100644
--- a/gcc/testsuite/g++.dg/cpp0x/range-for8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/range-for8.C
@@ -1,8 +1,7 @@
// Test for range-based for loop when the declarator declares
// a new type
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/reference_collapsing.C b/gcc/testsuite/g++.dg/cpp0x/reference_collapsing.C
index 669689dbba5..3de8f9616f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/reference_collapsing.C
+++ b/gcc/testsuite/g++.dg/cpp0x/reference_collapsing.C
@@ -3,8 +3,7 @@
// Test the reference collapsing rules. Note that there are recent differences
// for how cv-qualifications are applied to reference types. 7.1.3, 14.3.1
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/README b/gcc/testsuite/g++.dg/cpp0x/regress/README
deleted file mode 100644
index 5c3402e7485..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This directory contains tests that were passing in C++98 mode but failing
-in C++0x mode; it should be replaced by an improvement to the test harness
-to run all tests in both modes.
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/abi-empty7.C b/gcc/testsuite/g++.dg/cpp0x/regress/abi-empty7.C
deleted file mode 100644
index adc71278d9d..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/abi-empty7.C
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copy of abi/empty7.C.
-// { dg-do run { target i?86-*-* x86_64-*-* } }
-// { dg-require-effective-target ilp32 }
-// { dg-options "-fabi-version=0 -std=c++0x" }
-
-struct S1 {};
-struct S2 { virtual void f () {} S1 s1[4]; };
-struct S3 : virtual public S2 {};
-struct S4 : virtual public S2 { int i; };
-struct S5 : public S3, virtual public S4 {};
-struct S6 { S5 s5; };
-struct S7 { S1 s1[5]; };
-struct S8 : public S1, public S6, virtual public S7 { };
-
-S8 s8;
-
-int main () {
- if ((char *)(S7 *)&s8 - (char *)&s8 != 24)
- return 1;
-}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/debug-debug7.C b/gcc/testsuite/g++.dg/cpp0x/regress/debug-debug7.C
deleted file mode 100644
index d3f14f4e242..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/debug-debug7.C
+++ /dev/null
@@ -1,19 +0,0 @@
-// { dg-do compile }
-// { dg-options -std=c++0x }
-
-void f (int);
-
-int
-main() {
-
- int a = 4;
- int b = 5;
- int (*x)[b] = new int[a][b]; // { dg-error "array size.*must be constant|usable in a constant" }
-
- x[2][1] = 7;
-
- for (int i = 0; i < a; ++i)
- for (int j = 0; j < b; ++j)
- f (x[i][j]);
- delete [] x;
-}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/error-recovery1.C b/gcc/testsuite/g++.dg/cpp0x/regress/error-recovery1.C
deleted file mode 100644
index cdf99408473..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/error-recovery1.C
+++ /dev/null
@@ -1,11 +0,0 @@
-// PR c++/48212
-// { dg-options -std=c++0x }
-
-template < bool > void
-foo ()
-{
- const bool b =; // { dg-error "" }
- foo < b > (); // { dg-error "constant expression" "const expr" }
-};
-
-// { dg-error "no match" "no match" { target *-*-* } 8 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/ext-cond1.C b/gcc/testsuite/g++.dg/cpp0x/regress/ext-cond1.C
deleted file mode 100644
index dc9814ebd36..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/ext-cond1.C
+++ /dev/null
@@ -1,4 +0,0 @@
-// PR c++/12515
-// { dg-do compile }
-// { dg-options "-std=gnu++0x" }
-template<int> void foo() { 0 ?: 0; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/ext-label10.C b/gcc/testsuite/g++.dg/cpp0x/regress/ext-label10.C
deleted file mode 100644
index 652d94af036..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/ext-label10.C
+++ /dev/null
@@ -1,17 +0,0 @@
-// PR c++/33836
-// { dg-do compile }
-// { dg-options "-std=gnu++0x" }
-
-template<int N> struct A
-{
- enum { M = && N }; // { dg-error "referenced outside|cannot appear in|not an integer constant" }
-};
-
-A<0> a;
-
-void foo ()
-{
- __label__ P;
- enum { O = && P }; // { dg-error "cannot appear in|not an integer constant" }
- P:;
-}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/parse-ambig5.C b/gcc/testsuite/g++.dg/cpp0x/regress/parse-ambig5.C
deleted file mode 100644
index 9be2f9258fa..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/parse-ambig5.C
+++ /dev/null
@@ -1,8 +0,0 @@
-// PR c++/41786
-// { dg-options -std=c++0x }
-
-struct A { A(int, char const*); };
-int main() {
- int i = 0, *b = &i;
- A a(int(b[i]), "hello");
-}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/template-function1.C b/gcc/testsuite/g++.dg/cpp0x/regress/template-function1.C
deleted file mode 100644
index e7094d206e7..00000000000
--- a/gcc/testsuite/g++.dg/cpp0x/regress/template-function1.C
+++ /dev/null
@@ -1,30 +0,0 @@
-// PR c++/38647
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
-// { dg-prune-output "note" }
-
-template<const char *, int> struct A {};
-const char func[] = "abc";
-template<int N> struct A<func, N> {}; // { dg-error "cannot appear|is invalid|not a valid|constant expression" }
-
-char a1[1];
-A<a1, 0> a;
-
-template<const char *, int> struct B {};
-template<int N> struct B<__FUNCTION__, N> {}; // { dg-error "cannot appear|is invalid|is not a valid|constant expression" }
-
-char b1[1];
-B<b1, 0> b;
-
-template<const char *, int> struct C {};
-template<int N> struct C<__PRETTY_FUNCTION__, N> {}; // { dg-error "cannot appear|is invalid|is not a valid|constant expression" }
-
-char c1[1];
-C<c1, 0> c;
-
-template<const char *, int> struct D {};
-template<int N> struct D<__func__, N> {}; // { dg-error "(cannot appear|is invalid|is not a valid|function scope|constant expression)" }
- // { dg-warning "function scope" "function scope" { target *-*-* } 26 }
-
-char d1[1];
-D<d1, 0> d;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-bitfield.C b/gcc/testsuite/g++.dg/cpp0x/rv-bitfield.C
index e4db7a27736..ce93a1614a6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-bitfield.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-bitfield.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-bitfield2.C b/gcc/testsuite/g++.dg/cpp0x/rv-bitfield2.C
index 1f0d12e48a6..9ca17f23b1f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-bitfield2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-bitfield2.C
@@ -1,5 +1,5 @@
// PR c++/51868
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
A() {}
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-cast.C b/gcc/testsuite/g++.dg/cpp0x/rv-cast.C
index d7bafc483cf..4b46c549062 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-cast.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-cast.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void f(int i)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-cast2.C b/gcc/testsuite/g++.dg/cpp0x/rv-cast2.C
index 4d2ed52128d..6dc5abcdcf6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-cast2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-cast2.C
@@ -1,5 +1,5 @@
// Test for const_cast to reference (5.2.11/4).
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> T&& xval();
template <class T> T& lval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C b/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C
index ba2b6bb4d6d..348276612b8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C
@@ -1,5 +1,5 @@
// PR c++/49267
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct X {
operator int&();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-deduce.C b/gcc/testsuite/g++.dg/cpp0x/rv-deduce.C
index 7763c42b290..ce06d13196a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-deduce.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-deduce.C
@@ -1,5 +1,5 @@
// PR c++/36816, core issue 873
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> void h (T&&) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-deduce2.C b/gcc/testsuite/g++.dg/cpp0x/rv-deduce2.C
index 26a8d551fb6..ecaaf388ca6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-deduce2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-deduce2.C
@@ -1,5 +1,5 @@
// PR c++/48313
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename F>
void f(F&&) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-dotstar.C b/gcc/testsuite/g++.dg/cpp0x/rv-dotstar.C
index 104ecbdacca..7834be5579f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-dotstar.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-dotstar.C
@@ -1,5 +1,5 @@
// PR c++/49389
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T> T&& val();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-func.C b/gcc/testsuite/g++.dg/cpp0x/rv-func.C
index 3ac7118b49f..e97fe3dd55f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-func.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-func.C
@@ -1,5 +1,5 @@
// PR c++/48457, Core 1238
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-func2.C b/gcc/testsuite/g++.dg/cpp0x/rv-func2.C
index 51516bf53de..cfa0b2149bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-func2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-func2.C
@@ -1,5 +1,5 @@
// PR c++/49458
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef void ftype();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-func3.C b/gcc/testsuite/g++.dg/cpp0x/rv-func3.C
index f33140174a4..673830350a1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-func3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-func3.C
@@ -1,5 +1,5 @@
// DR 1328
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> struct A {
operator T&(); // #1
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-lvalue-req.C b/gcc/testsuite/g++.dg/cpp0x/rv-lvalue-req.C
index fd5aa65b3a6..1ca3c415475 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-lvalue-req.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-lvalue-req.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-reinterpret.C b/gcc/testsuite/g++.dg/cpp0x/rv-reinterpret.C
index 02061fc3f28..b55b67a9f4c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-reinterpret.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-reinterpret.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
void f(int &);
void f(int &&ir) { ir = 42; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-restrict.C b/gcc/testsuite/g++.dg/cpp0x/rv-restrict.C
index 23c7bbe2212..11bf4dec098 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-restrict.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-restrict.C
@@ -1,5 +1,5 @@
// PR c++/45401
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
typedef int &__restrict restrictLvref;
typedef restrictLvref &&rvrefToRestrictLvref;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-return.C b/gcc/testsuite/g++.dg/cpp0x/rv-return.C
index 088f376cf1f..12a15aa30c3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-return.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-return.C
@@ -1,5 +1,5 @@
// PR c++/41815
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T, typename U> struct same_type;
template<typename T> struct same_type<T, T> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-template1.C b/gcc/testsuite/g++.dg/cpp0x/rv-template1.C
index d73108c23b9..dcc4e5efb70 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-template1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-template1.C
@@ -1,5 +1,5 @@
// PR c++/44870
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
void foo(int&& data);
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C b/gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C
index 217116a3902..b729dc83df1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/33235
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv10.C b/gcc/testsuite/g++.dg/cpp0x/rv10.C
index 3c6566bcd91..bba72d201d6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv10.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv1n.C b/gcc/testsuite/g++.dg/cpp0x/rv1n.C
index 9ee46dc12f5..9aa534a653a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv1n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv1n.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv1p.C b/gcc/testsuite/g++.dg/cpp0x/rv1p.C
index f2f4c0b0391..e4c0ab16ddb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv1p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv1p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv2n.C b/gcc/testsuite/g++.dg/cpp0x/rv2n.C
index c39d5c06e50..289cffb181c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv2n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv2n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv2p.C b/gcc/testsuite/g++.dg/cpp0x/rv2p.C
index 209f89392ad..fb3019f2c3c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv2p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv2p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv3n.C b/gcc/testsuite/g++.dg/cpp0x/rv3n.C
index 67cbde24d5e..765dfbc7f22 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv3n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv3n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv3p.C b/gcc/testsuite/g++.dg/cpp0x/rv3p.C
index 12db70ca2e7..6d4625ad460 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv3p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv3p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv4n.C b/gcc/testsuite/g++.dg/cpp0x/rv4n.C
index 9ed324e4655..dc56afeba43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv4n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv4n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv4p.C b/gcc/testsuite/g++.dg/cpp0x/rv4p.C
index 8ec25717919..8d720c7a966 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv4p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv4p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv5n.C b/gcc/testsuite/g++.dg/cpp0x/rv5n.C
index 667012f55b5..ca179cd822c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv5n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv5n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv5p.C b/gcc/testsuite/g++.dg/cpp0x/rv5p.C
index 171b6dcf706..7030277541a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv5p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv5p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv6n.C b/gcc/testsuite/g++.dg/cpp0x/rv6n.C
index 89ed1c0ac50..d00c1e242b2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv6n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv6n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv6p.C b/gcc/testsuite/g++.dg/cpp0x/rv6p.C
index 92a4f94336f..4be83431d59 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv6p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv6p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv7n.C b/gcc/testsuite/g++.dg/cpp0x/rv7n.C
index 4d81e2a71c1..7e7a6648e23 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv7n.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv7n.C
@@ -2,8 +2,8 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv7p.C b/gcc/testsuite/g++.dg/cpp0x/rv7p.C
index 551b9d9c783..55fc5d760cd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv7p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv7p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv8p.C b/gcc/testsuite/g++.dg/cpp0x/rv8p.C
index 650fd76ba82..44247938621 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv8p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv8p.C
@@ -2,8 +2,7 @@
// Test overload resolution among reference types
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
diff --git a/gcc/testsuite/g++.dg/cpp0x/rv9p.C b/gcc/testsuite/g++.dg/cpp0x/rv9p.C
index 4714d7c936e..a221f32d34f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rv9p.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rv9p.C
@@ -1,6 +1,5 @@
// PR c++/36744
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/rvo.C b/gcc/testsuite/g++.dg/cpp0x/rvo.C
index 0ba8b100293..fc83b1b56f5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/rvo.C
+++ b/gcc/testsuite/g++.dg/cpp0x/rvo.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Contributed by Sylvain Pion
static int rvalue_constructions = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/scoped_enum.C b/gcc/testsuite/g++.dg/cpp0x/scoped_enum.C
index a1f99482940..0ca3a1fbafe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/scoped_enum.C
+++ b/gcc/testsuite/g++.dg/cpp0x/scoped_enum.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
enum class Color1 {
Red,
Green,
diff --git a/gcc/testsuite/g++.dg/cpp0x/scoped_enum2.C b/gcc/testsuite/g++.dg/cpp0x/scoped_enum2.C
index bf9e6574dc7..bb8ad750bd0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/scoped_enum2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/scoped_enum2.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
enum class E { e = 10 };
enum E2 { e2 = 10 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/scoped_enum_examples.C b/gcc/testsuite/g++.dg/cpp0x/scoped_enum_examples.C
index aea744d9a4d..8dc2fa64799 100644
--- a/gcc/testsuite/g++.dg/cpp0x/scoped_enum_examples.C
+++ b/gcc/testsuite/g++.dg/cpp0x/scoped_enum_examples.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
enum class Col { red, yellow, green };
int x = Col::red; // { dg-error "cannot convert" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae1.C b/gcc/testsuite/g++.dg/cpp0x/sfinae1.C
index 855d96795cd..0e015d9026f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template< typename T_VECTOR >
void f(const T_VECTOR &a, decltype(a[0]) t = 0);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae10.C b/gcc/testsuite/g++.dg/cpp0x/sfinae10.C
index c62aba77373..25ef77d001c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae10.C
@@ -1,5 +1,5 @@
// PR c++/48452
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std {
template <class T> T&& declval();
}
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae11.C b/gcc/testsuite/g++.dg/cpp0x/sfinae11.C
index e5d5255c11c..89bd76da8d2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae11.C
@@ -1,5 +1,5 @@
// PR c++/48468
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
template<class T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae12.C b/gcc/testsuite/g++.dg/cpp0x/sfinae12.C
index 927ac7a6d82..22a984727cf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae12.C
@@ -1,5 +1,5 @@
// PR c++/48535
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T{})
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae13.C b/gcc/testsuite/g++.dg/cpp0x/sfinae13.C
index 511944b8e46..3cff1b4b9b1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae13.C
@@ -1,5 +1,5 @@
// PR c++/48581
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae14.C b/gcc/testsuite/g++.dg/cpp0x/sfinae14.C
index 23ef8443fdb..14e5e058a3b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae14.C
@@ -1,5 +1,5 @@
// PR c++/48557
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rval_ref
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae15.C b/gcc/testsuite/g++.dg/cpp0x/sfinae15.C
index e2830968bb0..d8b32289030 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae15.C
@@ -1,5 +1,5 @@
// PR c++/48531
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T())
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae16.C b/gcc/testsuite/g++.dg/cpp0x/sfinae16.C
index 7bd1aabd8a3..56cbdadc585 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae16.C
@@ -1,5 +1,5 @@
// PR c++/48531
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T())
@@ -13,5 +13,5 @@ struct B2 {
B2(...);
};
-#define SA(X) static_assert ((X), #X);
+#define SA(X) static_assert ((X), #X)
SA(sizeof(f<B2[2]>(0)) != 1);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae17.C b/gcc/testsuite/g++.dg/cpp0x/sfinae17.C
index 3b91621b11a..c56a5d4198c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae17.C
@@ -1,5 +1,5 @@
// PR c++/48530
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T{})
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae18.C b/gcc/testsuite/g++.dg/cpp0x/sfinae18.C
index bf98f402451..ea46df0ae65 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae18.C
@@ -1,5 +1,5 @@
// PR c++/48530
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T())
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae19.C b/gcc/testsuite/g++.dg/cpp0x/sfinae19.C
index 59c6a71b2d1..52cc6add1f2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae19.C
@@ -1,5 +1,5 @@
// PR c++/48737
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae2.C b/gcc/testsuite/g++.dg/cpp0x/sfinae2.C
index 1eec1a10525..6f617b289bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae2.C
@@ -1,5 +1,5 @@
// PR c++/44967
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T> T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae20.C b/gcc/testsuite/g++.dg/cpp0x/sfinae20.C
index c0ba70ced97..882efe768ec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae20.C
@@ -1,5 +1,5 @@
// PR c++/48744
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rval_ref {
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae21.C b/gcc/testsuite/g++.dg/cpp0x/sfinae21.C
index 62c003a458c..743d7cfc2c3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae21.C
@@ -1,5 +1,5 @@
// PR c++/48735
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T,
class = decltype(T{})
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae22.C b/gcc/testsuite/g++.dg/cpp0x/sfinae22.C
index 8379d04ca3e..2c55b8a1827 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae22.C
@@ -1,5 +1,5 @@
// PR c++/48745
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rval_ref {
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae23.C b/gcc/testsuite/g++.dg/cpp0x/sfinae23.C
index 794b336aead..53d5c9b0b2f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae23.C
@@ -1,5 +1,5 @@
// PR c++/48647
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template< class T >
T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae24.C b/gcc/testsuite/g++.dg/cpp0x/sfinae24.C
index d6746e01e21..6d275d317be 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae24.C
@@ -1,7 +1,7 @@
// PR c++/49058
// This error is not subject to SFINAE because it doesn't happen in the
// deduction context.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
template<typename T> T val();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae25.C b/gcc/testsuite/g++.dg/cpp0x/sfinae25.C
index d8c46d0597a..0ff872c9e23 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae25.C
@@ -1,5 +1,5 @@
// PR c++/49105
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T, class = decltype(T{})>
char f(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae26.C b/gcc/testsuite/g++.dg/cpp0x/sfinae26.C
index 3fc5b280da7..f55e1d8c727 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae26.C
@@ -1,5 +1,5 @@
// PR c++/49229
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern void* enabler;
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae27.C b/gcc/testsuite/g++.dg/cpp0x/sfinae27.C
index 2fa2232ab39..ddd484a474e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae27.C
@@ -1,5 +1,5 @@
// PR c++/50157
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T val();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae28.C b/gcc/testsuite/g++.dg/cpp0x/sfinae28.C
index a06fc9f7407..1eeba64bc1d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae28.C
@@ -1,5 +1,5 @@
// PR c++/50324
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct complete { };
struct incomplete;
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae29.C b/gcc/testsuite/g++.dg/cpp0x/sfinae29.C
index 49ab9699376..8792778acf8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae29.C
@@ -1,5 +1,5 @@
// PR c++/51047
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T> T &&declval();
template<class T> decltype(declval<T>().x) f(T *);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae3.C b/gcc/testsuite/g++.dg/cpp0x/sfinae3.C
index b25b3886137..5009c84066c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std { template <class T> T&& declval(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae31.C b/gcc/testsuite/g++.dg/cpp0x/sfinae31.C
index 066b1de022a..8695ebca307 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae31.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae31.C
@@ -1,8 +1,8 @@
// PR c++/51973
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
-void f(T t) { };
+void f(T t) { }
template <class T> decltype(f<T>(0)) g();
template <class T> decltype(f<T*>(0)) g();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae32.C b/gcc/testsuite/g++.dg/cpp0x/sfinae32.C
index 67237ffb490..97945c6bc86 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae32.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae32.C
@@ -1,5 +1,5 @@
// PR c++/51989
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename T>
struct is_container
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae33.C b/gcc/testsuite/g++.dg/cpp0x/sfinae33.C
index 3a5e6f77dfb..f543c1f2437 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae33.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae33.C
@@ -1,5 +1,5 @@
// PR c++/52422
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rval_ref
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae34.C b/gcc/testsuite/g++.dg/cpp0x/sfinae34.C
index d5d1ca4646b..615a2bc9b50 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae34.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae34.C
@@ -1,5 +1,5 @@
// PR c++/52422
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
struct add_rval_ref
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae35.C b/gcc/testsuite/g++.dg/cpp0x/sfinae35.C
index 21df10cf435..86b61032485 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae35.C
@@ -1,5 +1,5 @@
// PR c++/52363
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <type_traits>
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae36.C b/gcc/testsuite/g++.dg/cpp0x/sfinae36.C
index 79509a1d1e2..6597bc33736 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae36.C
@@ -1,5 +1,6 @@
// PR c++/52363
-// { dg-options "-std=c++11 -pedantic" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-pedantic" }
#include <type_traits>
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae4.C b/gcc/testsuite/g++.dg/cpp0x/sfinae4.C
index a409bf8b8b7..1b24966e051 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std { template <class T> T&& declval(); }
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae43.C b/gcc/testsuite/g++.dg/cpp0x/sfinae43.C
index 22efe657fa7..14c31f68177 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae43.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae43.C
@@ -1,5 +1,5 @@
// PR c++/56208
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct ostream {
ostream& operator<<(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae5.C b/gcc/testsuite/g++.dg/cpp0x/sfinae5.C
index e3592d06b49..421a06e5ec9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae5.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae6.C b/gcc/testsuite/g++.dg/cpp0x/sfinae6.C
index 1b884330165..4ee014680cb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae6.C
@@ -1,5 +1,5 @@
// PR c++/48113
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T> T declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae7.C b/gcc/testsuite/g++.dg/cpp0x/sfinae7.C
index 19ec2ad1961..18b3d8fa61e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae7.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae8.C b/gcc/testsuite/g++.dg/cpp0x/sfinae8.C
index a5464dee03b..43381d05d80 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae8.C
@@ -1,5 +1,5 @@
// PR c++/48449
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T, class = decltype(T())>
char f(int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/sfinae9.C b/gcc/testsuite/g++.dg/cpp0x/sfinae9.C
index 98ac52c12a2..68656c6d716 100644
--- a/gcc/testsuite/g++.dg/cpp0x/sfinae9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/sfinae9.C
@@ -1,9 +1,9 @@
// PR c++/48450
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std {
template <class T> T&& declval();
-};
+}
template<class To, class From,
class = decltype(static_cast<To>(std::declval<From>()))
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert1.C b/gcc/testsuite/g++.dg/cpp0x/static_assert1.C
index 81a86615a55..49b5a9703f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
void foo()
{
static_assert(1, "okay");
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert2.C b/gcc/testsuite/g++.dg/cpp0x/static_assert2.C
index ac7dfdc9260..1ef2bc60212 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int I>
struct accept_evens {
static_assert( I % 2 == 0, "I must be an even number"); // { dg-error "even number" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert3.C b/gcc/testsuite/g++.dg/cpp0x/static_assert3.C
index 84d2e2a0b16..ff71300c663 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
static_assert(7 / 0, "X"); // { dg-error "non-constant condition" "non-constant" }
// { dg-warning "division by zero" "zero" { target *-*-* } 2 }
// { dg-error "7 / 0.. is not a constant expression" "not a constant" { target *-*-* } 2 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert4.C b/gcc/testsuite/g++.dg/cpp0x/static_assert4.C
index 97c0bd65950..9a747350974 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert4.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++11 --param ggc-min-heapsize=0 --param ggc-min-expand=0 " }
+// { dg-do compile { target c++11 } }
+// { dg-options "--param ggc-min-heapsize=0 --param ggc-min-expand=0 " }
// PR C++/30033
// Make sure that the static assert does not crash the GC.
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert5.C b/gcc/testsuite/g++.dg/cpp0x/static_assert5.C
index fdf26d12f07..36cf2eb3b96 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert5.C
@@ -1,5 +1,5 @@
// PR c++/50837
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
struct z
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert6.C b/gcc/testsuite/g++.dg/cpp0x/static_assert6.C
index 6fd9c27b85a..5323e71676b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert6.C
@@ -1,4 +1,4 @@
// PR c++/51397
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
static_assert('X' != '\130', "'X' has the wrong value"); // { dg-error "'X' has the wrong value" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert7.C b/gcc/testsuite/g++.dg/cpp0x/static_assert7.C
index 28793e43400..f571de28af4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/static_assert7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/static_assert7.C
@@ -1,5 +1,6 @@
// PR c++/53166
-// { dg-options "-std=c++11 -Waddress" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Waddress" }
template <typename X, X a>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/std-layout1.C b/gcc/testsuite/g++.dg/cpp0x/std-layout1.C
index bff657c7396..09273c5f1c6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/std-layout1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/std-layout1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// [basic.types]/10:
// Scalar types, standard-layout class types (Clause 9), arrays of such
@@ -22,13 +22,13 @@
#define TRY(expr) static_assert (expr, #expr)
#define YES(type) TRY(std::is_standard_layout<type>::value); \
TRY(std::is_standard_layout<type[]>::value); \
- TRY(std::is_standard_layout<const volatile type>::value);
+ TRY(std::is_standard_layout<const volatile type>::value)
#define NO(type) TRY(!std::is_standard_layout<type>::value); \
TRY(!std::is_standard_layout<type[]>::value); \
- TRY(!std::is_standard_layout<const volatile type>::value);
+ TRY(!std::is_standard_layout<const volatile type>::value)
#define NONPOD(type) TRY(!std::is_pod<type>::value); \
TRY(!std::is_pod<type[]>::value); \
- TRY(!std::is_pod<const volatile type>::value);
+ TRY(!std::is_pod<const volatile type>::value)
struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/std_fext-numeric-literals.C b/gcc/testsuite/g++.dg/cpp0x/std_fext-numeric-literals.C
index e71cdc5abb0..7caaa7cee8d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/std_fext-numeric-literals.C
+++ b/gcc/testsuite/g++.dg/cpp0x/std_fext-numeric-literals.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -fext-numeric-literals" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fext-numeric-literals" }
// Integer imaginary...
diff --git a/gcc/testsuite/g++.dg/cpp0x/std_fno-ext-numeric-literals.C b/gcc/testsuite/g++.dg/cpp0x/std_fno-ext-numeric-literals.C
index 488db42caf2..0b245f4a180 100644
--- a/gcc/testsuite/g++.dg/cpp0x/std_fno-ext-numeric-literals.C
+++ b/gcc/testsuite/g++.dg/cpp0x/std_fno-ext-numeric-literals.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
+
// Integer imaginary...
diff --git a/gcc/testsuite/g++.dg/cpp0x/syntax-err1.C b/gcc/testsuite/g++.dg/cpp0x/syntax-err1.C
index 818eaac0a14..5f5a236a5cd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/syntax-err1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/syntax-err1.C
@@ -1,5 +1,5 @@
// PR c++/47198
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct S
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp-constructor-bug.C b/gcc/testsuite/g++.dg/cpp0x/temp-constructor-bug.C
index b7bb9b85a25..9d8a3bd8be8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp-constructor-bug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp-constructor-bug.C
@@ -1,4 +1,5 @@
-// { dg-options "--std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
struct S { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp-va-arg-bug.C b/gcc/testsuite/g++.dg/cpp0x/temp-va-arg-bug.C
index 97b33ac67d4..616f2f4b0f0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp-va-arg-bug.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp-va-arg-bug.C
@@ -1,5 +1,5 @@
-// { dg-options "--std=c++11" }
-// { dg-options "-Wno-abi --std=c++11" { target arm_eabi } }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wno-abi" { target arm_eabi } }
#include <stdarg.h>
struct S { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp_default1.C b/gcc/testsuite/g++.dg/cpp0x/temp_default1.C
index bf2629214ed..33f6c9eb398 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp_default1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp_default1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp_default2.C b/gcc/testsuite/g++.dg/cpp0x/temp_default2.C
index 0d1598ce959..2a41e22e1e0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp_default2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp_default2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class T, class U = double>
void f(T t = 0, U u = 0); // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp_default3.C b/gcc/testsuite/g++.dg/cpp0x/temp_default3.C
index e72e75797fb..2d59f4766e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp_default3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp_default3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U = typename T::value_type>
void f(T);
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp_default4.C b/gcc/testsuite/g++.dg/cpp0x/temp_default4.C
index 6b2f5b18928..783ff5b19d9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp_default4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp_default4.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
class X {
template<typename T = int> friend void f(X) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/temp_default5.C b/gcc/testsuite/g++.dg/cpp0x/temp_default5.C
index 21ad5fb0380..dd84d260ea7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/temp_default5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/temp_default5.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class Z = void, class T>
void Foo(T)
diff --git a/gcc/testsuite/g++.dg/cpp0x/template_deduction.C b/gcc/testsuite/g++.dg/cpp0x/template_deduction.C
index 73aa3eec9dc..1186e805668 100644
--- a/gcc/testsuite/g++.dg/cpp0x/template_deduction.C
+++ b/gcc/testsuite/g++.dg/cpp0x/template_deduction.C
@@ -2,8 +2,7 @@
// Test the "Augmented" template argument deduction when binding an lvalue to an rvalue reference.
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing1.C b/gcc/testsuite/g++.dg/cpp0x/trailing1.C
index 8b568a286ca..7d9a906d4f3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing1.C
@@ -1,5 +1,6 @@
// Tests for late-specified return type.
-// { dg-options "-std=c++11 -fabi-version=5" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=5" }
auto f() -> int
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing2.C b/gcc/testsuite/g++.dg/cpp0x/trailing2.C
index 91e55578d9b..888d6f958f1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing2.C
@@ -3,14 +3,14 @@
// { dg-do compile { target c++11 } }
auto f1 () -> int;
-auto f2 (); // { dg-error "without trailing return type" }
+auto f2 (); // { dg-error "without trailing return type" "" { target { ! c++1y } } }
int f3 () -> int; // { dg-error "trailing return type" }
auto *f4 () -> int; // { dg-error "trailing return type" }
struct A
{
auto f5 () const -> int;
- auto f6 (); // { dg-error "without trailing return type" }
+ auto f6 (); // { dg-error "without trailing return type" "" { target { ! c++1y } } }
int f7 () -> int; // { dg-error "trailing return type" }
auto *f8 () -> int; // { dg-error "trailing return type" }
};
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing3.C b/gcc/testsuite/g++.dg/cpp0x/trailing3.C
index d95f298a157..ced5d5eaa4e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing3.C
@@ -1,5 +1,6 @@
// More auto/decltype mangling tests.
-// { dg-options "-std=c++11 -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
template <class T>
struct B
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing4.C b/gcc/testsuite/g++.dg/cpp0x/trailing4.C
index f508bc4e890..0ca96e48d89 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing4.C
@@ -1,5 +1,5 @@
// PR c++/38597
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T, class U>
auto f(T,U) -> decltype(T() + U())
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing5.C b/gcc/testsuite/g++.dg/cpp0x/trailing5.C
index b4f2bf75ffb..48f31452e5b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing5.C
@@ -1,5 +1,5 @@
// PR c++/38798, DR 770
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {};
auto foo() -> struct A {}
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing6.C b/gcc/testsuite/g++.dg/cpp0x/trailing6.C
index 86b8e4435c0..0238740496e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing6.C
@@ -1,5 +1,5 @@
// PR c++/49003
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A {
auto a() const -> decltype(this) { return this; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/trailing7.C b/gcc/testsuite/g++.dg/cpp0x/trailing7.C
index e322a3c5ad9..b3397ea3b46 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trailing7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trailing7.C
@@ -1,5 +1,5 @@
// PR c++/50365
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { int i; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/trivial1.C b/gcc/testsuite/g++.dg/cpp0x/trivial1.C
index 06ed25733f3..3fed57042ed 100644
--- a/gcc/testsuite/g++.dg/cpp0x/trivial1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/trivial1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// [basic.types]/10:
// Scalar types, trivial class types (Clause 9), arrays of such types and
@@ -18,10 +18,10 @@
#define TRY(expr) static_assert (expr, #expr)
#define YES(type) TRY(std::is_trivial<type>::value); \
TRY(std::is_trivial<type[]>::value); \
- TRY(std::is_trivial<const volatile type>::value);
+ TRY(std::is_trivial<const volatile type>::value)
#define NO(type) TRY(!std::is_trivial<type>::value); \
TRY(!std::is_trivial<type[]>::value); \
- TRY(!std::is_trivial<const volatile type>::value);
+ TRY(!std::is_trivial<const volatile type>::value)
struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-addr.C b/gcc/testsuite/g++.dg/cpp0x/udlit-addr.C
index 92f192450a5..11389bfbc28 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-addr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-addr.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <cstddef>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-args-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-args-neg.C
index 602d8293e35..d8d672e5747 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-args-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-args-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <cstddef>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-args.C b/gcc/testsuite/g++.dg/cpp0x/udlit-args.C
index 15aa6a3ad2c..4680288d20c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-args.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-args.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <cstddef>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-args2.C b/gcc/testsuite/g++.dg/cpp0x/udlit-args2.C
index 1e7190fc8f7..b9cb8e093a9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-args2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-args2.C
@@ -1,6 +1,5 @@
// PR c++/52521
-// { dg-do compile }
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <cstddef>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-clink-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-clink-neg.C
index 675ef31d241..87e00826eda 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-clink-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-clink-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern "C" {
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-concat-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-concat-neg.C
index 10ff69b7a2b..3093a7c055d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-concat-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-concat-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-concat.C b/gcc/testsuite/g++.dg/cpp0x/udlit-concat.C
index 870ddc3f5e2..d4f10c2973f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-concat.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-concat.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-constexpr.C b/gcc/testsuite/g++.dg/cpp0x/udlit-constexpr.C
index e62c34af0c1..4c2f7eda371 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-constexpr.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-constexpr.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
constexpr unsigned long long
operator"" _grow(unsigned long long n)
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-declare-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-declare-neg.C
index a7eeb4629ab..a68e2e020b9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-declare-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-declare-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Check that undeclared literal operator calls and literals give appropriate errors.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-embed-quote.C b/gcc/testsuite/g++.dg/cpp0x/udlit-embed-quote.C
index 2832312f3a4..fef1a5342c9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-embed-quote.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-embed-quote.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Make sure embedded quotes are not a problem for string and char literals.
@@ -7,10 +6,10 @@
#include <cassert>
int operator"" _embedchar(char)
-{ return 41; };
+{ return 41; }
int operator"" _embedstr(const char*, std::size_t len)
-{ return 42 + len; };
+{ return 42 + len; }
void
test()
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-friend.C b/gcc/testsuite/g++.dg/cpp0x/udlit-friend.C
index 0319701edb5..54d7b7a1f11 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-friend.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-friend.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
long double
operator"" _Hertz(long double);
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-general.C b/gcc/testsuite/g++.dg/cpp0x/udlit-general.C
index b876a07cde4..d69db561b4e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-general.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-general.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test user-defined literals.
// Test simple operator declaration and definition.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-implicit-conv-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-implicit-conv-neg.C
index 851cd9b9c18..ea6095d14e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-implicit-conv-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-implicit-conv-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <cstdint>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-inline.C b/gcc/testsuite/g++.dg/cpp0x/udlit-inline.C
index 063fd8345de..fd8b9a05b38 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-inline.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-inline.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Literal operators can be inline.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-linkage-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-linkage-neg.C
index f969bb5ebab..3e99807fb8e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-linkage-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-linkage-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
extern "C"_badlinkage { // { dg-error "expected unqualified-id before" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-mangle.C b/gcc/testsuite/g++.dg/cpp0x/udlit-mangle.C
index c226c269a54..8840dcdce28 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-mangle.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-mangle.C
@@ -1,5 +1,5 @@
// PR c++/52521
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_Zli2_wPKc" } }
int operator "" _w(const char*);
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-member-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-member-neg.C
index e6ea5776213..2a314525457 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-member-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-member-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class Foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-namespace.C b/gcc/testsuite/g++.dg/cpp0x/udlit-namespace.C
index a84ed0e3a4f..73298900b42 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-namespace.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-namespace.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test user-defined literals.
// Test simple operator declaration and definition in namespaces.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-nofunc-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-nofunc-neg.C
index 2de8f778983..89c7581ff11 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-nofunc-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-nofunc-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test user-defined literals.
// Test error on non-function declaration.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-nonempty-str-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-nonempty-str-neg.C
index e8ad1232ef0..ddaa1aa6c3e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-nonempty-str-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-nonempty-str-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test user-defined literals.
// Test error on non-empty string after 'operator' keyword.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-nospace-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-nospace-neg.C
index 429a876efc1..d1f3238845e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-nospace-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-nospace-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
float operator ""_abc(const char*);
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-nosuffix-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-nosuffix-neg.C
index 3c56f216a15..790726fb71d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-nosuffix-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-nosuffix-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
char32_t
operator"" (char32_t C) // { dg-error "expected suffix identifier" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-nounder-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-nounder-neg.C
index b238f132878..9120ae45dfa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-nounder-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-nounder-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Test user-defined literals.
// Test warning on declaration without leading underscore.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-operator-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-operator-neg.C
index caaaa4951e2..d71f4a240e8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-operator-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-operator-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Can't have *both* literal operator template and raw literal operator.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-overflow-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-overflow-neg.C
index c90467b6dda..d7e5e4b1f99 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-overflow-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-overflow-neg.C
@@ -1,6 +1,6 @@
-// { dg-options "-std=c++11 -Woverflow" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Woverflow" }
// PR c++/52654
-
int
operator"" _w(unsigned long long)
{ return 0; }
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-overflow.C b/gcc/testsuite/g++.dg/cpp0x/udlit-overflow.C
index 569c10f279c..057978c3275 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-overflow.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-overflow.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// PR c++/52654
int
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-preproc-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-preproc-neg.C
index 0638ceeb4fe..64b6f8266bf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-preproc-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-preproc-neg.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
int
operator"" _badpreproc(const char *str)
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C
index d30e9eeeec1..8969c96d8c1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/50958
typedef decltype(sizeof(0)) size_type;
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op-string-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op-string-neg.C
index 36d364c908b..be68333f509 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op-string-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op-string-neg.C
@@ -1,8 +1,8 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Make sure handing a string to a raw literal generates a sensible error message.
int operator"" _embedraw(const char*)
-{ return 41; };
+{ return 41; }
int k = "Boo!"_embedraw; // { dg-error "unable to find string literal operator" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op.C b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op.C
index dea0734b5d3..c3259ed9b43 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-op.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <cassert>
#include <cstring>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-str.C b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-str.C
index e0778897598..7ca37b2a7f9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-raw-str.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-raw-str.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-resolve.C b/gcc/testsuite/g++.dg/cpp0x/udlit-resolve.C
index b4544ee0727..4241d0a8030 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-resolve.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-resolve.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
#include <cstdint>
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-shadow-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-shadow-neg.C
index 65284073b1a..c63559060e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-shadow-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-shadow-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// Test that the standard suffixes shadow any user-defined suffixes of the same name.
long double
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-string-length.C b/gcc/testsuite/g++.dg/cpp0x/udlit-string-length.C
index d8be7b78cb0..acfda45d5fe 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-string-length.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-string-length.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/50941
typedef decltype(sizeof(0)) size_type;
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-string-literal.C b/gcc/testsuite/g++.dg/cpp0x/udlit-string-literal.C
index f83bef68ad3..734a0f38ad0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-string-literal.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-string-literal.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target stdint_types }
// PR c++/55582
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-suffix-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-suffix-neg.C
index e3b7e96936b..7283fed9a35 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-suffix-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-suffix-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <string>
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-systemheader.C b/gcc/testsuite/g++.dg/cpp0x/udlit-systemheader.C
index 33dfb9e5d06..189e44597d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-systemheader.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-systemheader.C
@@ -1,3 +1,3 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include "udlit_system_header"
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-template.C b/gcc/testsuite/g++.dg/cpp0x/udlit-template.C
index 55dca2ff815..de21b66028f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-template.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-template.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Test user-defined literals.
// Test template operator declaration and definition.
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg-neg.C
index f2efdd7a658..678a53e3f4f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<char...>
int operator"" _xyz(unsigned long long); // { dg-error "has invalid argument list" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg.C
index fb21f281e10..cec79a5ffb4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-arg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<char...>
int operator"" _abc();
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms-neg.C b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms-neg.C
index 729325473a1..f681ecfbcc1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms-neg.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class Foo { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms.C b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms.C
index d83fee8723a..bc7eaf66fb9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms.C
+++ b/gcc/testsuite/g++.dg/cpp0x/udlit-tmpl-parms.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
class Foo { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/union1.C b/gcc/testsuite/g++.dg/cpp0x/union1.C
index f83c89bdeec..ff415fc5736 100644
--- a/gcc/testsuite/g++.dg/cpp0x/union1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/union1.C
@@ -1,5 +1,5 @@
// Negative test for C++11 unrestricted unions
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "implicitly deleted because" }
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/union2.C b/gcc/testsuite/g++.dg/cpp0x/union2.C
index 78d88b2b6d9..514409414dc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/union2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/union2.C
@@ -1,5 +1,5 @@
// Positive test for C++11 unrestricted unions
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/union3.C b/gcc/testsuite/g++.dg/cpp0x/union3.C
index a1212e1a93c..d95d30c6fe3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/union3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/union3.C
@@ -1,6 +1,5 @@
// Runtime test for C++11 unrestricted unions
-// { dg-options -std=c++11 }
-// { dg-do run }
+// { dg-do run { target c++11 } }
int c, d;
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/union4.C b/gcc/testsuite/g++.dg/cpp0x/union4.C
index fa3e97f9226..cf9916dc367 100644
--- a/gcc/testsuite/g++.dg/cpp0x/union4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/union4.C
@@ -1,5 +1,5 @@
// PR c++/48537
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct SFoo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/union5.C b/gcc/testsuite/g++.dg/cpp0x/union5.C
index 51780619af0..8d2bc98da86 100644
--- a/gcc/testsuite/g++.dg/cpp0x/union5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/union5.C
@@ -1,5 +1,6 @@
// PR c++/49803
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
struct X
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/unnamed_refs.C b/gcc/testsuite/g++.dg/cpp0x/unnamed_refs.C
index 8afe7a7ff27..c1b94bb5cae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/unnamed_refs.C
+++ b/gcc/testsuite/g++.dg/cpp0x/unnamed_refs.C
@@ -2,8 +2,7 @@
// Test: Unamed rvalue references are treated as lvalues.
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <bool> struct sa;
template <> struct sa<true> {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-104.C b/gcc/testsuite/g++.dg/cpp0x/variadic-104.C
index e7a032c1993..50956d21a40 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-104.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-104.C
@@ -1,5 +1,5 @@
// PR c++/45236
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T, class S> class foo;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-bind.C b/gcc/testsuite/g++.dg/cpp0x/variadic-bind.C
index 21ebb2ff9f9..74e01ec364c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-bind.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-bind.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
// A basic implementation of TR1's bind using variadic teplates
// Contributed by Douglas Gregor <doug.gregor@gmail.com>
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-crash1.C b/gcc/testsuite/g++.dg/cpp0x/variadic-crash1.C
index 768f2ee3977..211ede61101 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-crash1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-crash1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
#define ONE
#define TWO
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-crash2.C b/gcc/testsuite/g++.dg/cpp0x/variadic-crash2.C
index f6b31966482..8b5ee0dd242 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-crash2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-crash2.C
@@ -1,7 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin: PR c++/39637
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class... Types>
void
@@ -16,5 +15,3 @@ main()
{
f(0);
}
-
-// { dg-message "note" "Types" { target *-*-* } 10 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-default.C b/gcc/testsuite/g++.dg/cpp0x/variadic-default.C
index 0653d2a2cf0..33b27a54041 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-default.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-default.C
@@ -1,5 +1,5 @@
// PR c++/49205
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C
index 0fd2ab969fb..b3016040933 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename ... Elements> class Tuple;
Tuple<>* t; // OK: Elements is empty
Tuple* u; // { dg-error "template-name" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex10.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex10.C
index 4515453294b..3df356aaf3c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex10.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Types> struct Tuple { };
Tuple<> t0; // Types contains no arguments
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex11.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex11.C
index 4d45d5e5a8e..9991fa2fd51 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex11.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Types>
void f(Types... args);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex12.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex12.C
index 35a71a9c9ca..bc55b2d55f6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex12.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Types>
void f(Types... rest);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C
index f024f8474c6..fe29e717618 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename U> struct is_same {
static const bool value = false;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex14.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex14.C
index 108d1111a69..600b798684a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex14.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class T> class A { /* ... */ };
template<class T, class U = T> class B { /* ... */ };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex2.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex2.C
index 0eb029bcb3f..015d9d8403f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class... Types> struct B { // { dg-error "declaration of" }
void f3();
void f4();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C
index 25d80181d6d..8a723ab7538 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class X, class Y, class... Z> X f(Y); // { dg-message "note" }
void g()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C
index b05ca57f3cf..26651f74d1c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex4.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class X, class Y, class Z> X f(Y,Z); // { dg-message "note" }
template<class... Args> void f2();
void g()
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex5.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex5.C
index 81b57971050..841562f8114 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex5.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Types> void f(Types... values);
void g()
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex6.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex6.C
index 5bb01d5141d..185a96346a7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex6.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class...> struct Tuple { };
template<class... Types> void f(Types&...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex7.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex7.C
index 69f94672b6b..c1bf837a78a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct Tuple { };
template<typename... Types> char& g(Tuple<Types...>); // #1
template<typename T1, typename... Types> short& g(Tuple<T1, Types...>); // #2
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex8.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex8.C
index f7fb32ffe26..581e4dbeefc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex8.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class> struct X { static const bool primary = true; };
template<class R, class... ArgTypes> struct X<R(int, ArgTypes...)> {
static const bool primary = false;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ex9.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ex9.C
index 8b68711b877..0617b1ae3fd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ex9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ex9.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args> char& f(Args... args); // #1
template<typename T1, typename... Args> short& f(T1 a1, Args... args); // #2
template<typename T1, typename T2> int& f(T1 a2, T2 a3); // #3
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-explicit1.C b/gcc/testsuite/g++.dg/cpp0x/variadic-explicit1.C
index 8a1e285ecdd..605c55beaa0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-explicit1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-explicit1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T, class U> struct A { };
template<class... T, class ... U> void f( A<T,U>... p);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-function.C b/gcc/testsuite/g++.dg/cpp0x/variadic-function.C
index 4240b4f3284..bb98531c387 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-function.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-function.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
// A basic implementation of TR1's function using variadic teplates
// Contributed by Douglas Gregor <doug.gregor@gmail.com>
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-init.C b/gcc/testsuite/g++.dg/cpp0x/variadic-init.C
index 9972928d2cc..ac072c6b542 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-init.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-init.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
// PR c++/33510
#define SIZE_FROM_CTOR
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-lambda.C b/gcc/testsuite/g++.dg/cpp0x/variadic-lambda.C
index 51263fd57e6..f235c36c551 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-lambda.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-lambda.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct int_placeholder;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-mem_fn.C b/gcc/testsuite/g++.dg/cpp0x/variadic-mem_fn.C
index 4e090d1e83f..aca58e39461 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-mem_fn.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-mem_fn.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=gnu++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
// A basic implementation of TR1's mem_fn using variadic teplates
// Contributed by Douglas Gregor <doug.gregor@gmail.com>
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-new.C b/gcc/testsuite/g++.dg/cpp0x/variadic-new.C
index 45d11bae286..af7c86fca1e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-new.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-new.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// Contributed by Peter Dimov
// PR c++/32597
#include <assert.h>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-new2.C b/gcc/testsuite/g++.dg/cpp0x/variadic-new2.C
index c47fbf43868..413e0701d7a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-new2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-new2.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// PR c++/32597
#include <assert.h>
#include <new>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-nondeduce1.C b/gcc/testsuite/g++.dg/cpp0x/variadic-nondeduce1.C
index c6e44bb77aa..4aa5dbab2b0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-nondeduce1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-nondeduce1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class... T>
void f(T..., int, T...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-rref.C b/gcc/testsuite/g++.dg/cpp0x/variadic-rref.C
index 609868475fa..ee90c9b8731 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-rref.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-rref.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/33939
template<typename T>
struct refs_only;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-throw.C b/gcc/testsuite/g++.dg/cpp0x/variadic-throw.C
index 4c3bd95bf33..fc81e9d5d4a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-throw.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-throw.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
// PR c++/33509
template<int M, int N> struct pair
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-ttp.C b/gcc/testsuite/g++.dg/cpp0x/variadic-ttp.C
index d8f14cb16aa..5d08d1347ad 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-ttp.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-ttp.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// PR c++/34101
template<typename> struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C b/gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C
index 4ad2cc39a7b..b1c6b3d7814 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
// An implementation of TR1's <tuple> using variadic teplates
// Contributed by Douglas Gregor <doug.gregor@gmail.com>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-unify-2.C b/gcc/testsuite/g++.dg/cpp0x/variadic-unify-2.C
index 33920a9a1a7..0a7acba61df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-unify-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-unify-2.C
@@ -1,7 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin: PR c++/40155
-// { dg-options "-std=c++11" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template <typename T> struct identity
{ typedef T type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-unify.C b/gcc/testsuite/g++.dg/cpp0x/variadic-unify.C
index 5213dbbabf3..29b528ccc44 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-unify.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-unify.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct tuple { };
template<typename... Args1, typename... Args2>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic-unresolved.C b/gcc/testsuite/g++.dg/cpp0x/variadic-unresolved.C
index 2fc3471dded..263640dd039 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic-unresolved.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic-unresolved.C
@@ -1,5 +1,5 @@
// PR c++/50086
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T> void tfun();
template<typename T> void fun1(T);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic1.C b/gcc/testsuite/g++.dg/cpp0x/variadic1.C
index 884ef886239..ed80849b4cc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...>
class tuple;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic10.C b/gcc/testsuite/g++.dg/cpp0x/variadic10.C
index 6a03df053a7..03fa39cd6be 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic10.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic10.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct pair {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic100.C b/gcc/testsuite/g++.dg/cpp0x/variadic100.C
index 654c4e9013b..502601f8741 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic100.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic100.C
@@ -1,5 +1,5 @@
// PR c++/43143
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T>
T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic101.C b/gcc/testsuite/g++.dg/cpp0x/variadic101.C
index d028a570eaa..8bcedfff6ab 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic101.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic101.C
@@ -1,5 +1,5 @@
// PR c++/43382
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
struct Container
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic102.C b/gcc/testsuite/g++.dg/cpp0x/variadic102.C
index e656886fc3e..9214b01c46e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic102.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic102.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct nAny {
template<class... T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic103.C b/gcc/testsuite/g++.dg/cpp0x/variadic103.C
index cab73d7647d..69510e61bec 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic103.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic103.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic105.C b/gcc/testsuite/g++.dg/cpp0x/variadic105.C
index ecd2410f4bb..4ba384c7208 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic105.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic105.C
@@ -1,5 +1,5 @@
// PR c++/47289
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
template <template <typename... __ARGS> class _F, typename... _ARGS>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic106.C b/gcc/testsuite/g++.dg/cpp0x/variadic106.C
index d68b9ff011a..efa4c34cd85 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic106.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic106.C
@@ -1,6 +1,5 @@
// Origin: PR c++/47326
-// { dg-options "-std=c++11" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template <int _N>
struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic107.C b/gcc/testsuite/g++.dg/cpp0x/variadic107.C
index 0d6923f4fd1..d22f87c1d30 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic107.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic107.C
@@ -1,5 +1,5 @@
// PR c++/48451
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
namespace std {
template <class T> T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic108.C b/gcc/testsuite/g++.dg/cpp0x/variadic108.C
index 0986516415c..2e396c6f5a1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic108.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic108.C
@@ -1,5 +1,5 @@
// PR c++/48736
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T&& create();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic109.C b/gcc/testsuite/g++.dg/cpp0x/variadic109.C
index 8acdfb8c819..3ecfb739888 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic109.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic109.C
@@ -1,5 +1,5 @@
// PR c++/48292
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename... Args> int g(Args...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic11.C b/gcc/testsuite/g++.dg/cpp0x/variadic11.C
index 58eb1636f04..2bdeb322604 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic11.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic11.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct count;
template<>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic110.C b/gcc/testsuite/g++.dg/cpp0x/variadic110.C
index 556594c3b74..47a9ed9a6ff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic110.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic110.C
@@ -1,5 +1,5 @@
// PR c++/45698
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class... Ts> struct tuple { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic111.C b/gcc/testsuite/g++.dg/cpp0x/variadic111.C
index 01a6653612f..09bac287a56 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic111.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic111.C
@@ -1,5 +1,6 @@
// PR c++/48424
-// { dg-options "-std=c++11 -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
template<typename... Args1>
struct S
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic112.C b/gcc/testsuite/g++.dg/cpp0x/variadic112.C
index be435542643..50d7e943a29 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic112.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic112.C
@@ -1,5 +1,5 @@
// PR c++/49420
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct A { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic113.C b/gcc/testsuite/g++.dg/cpp0x/variadic113.C
index bee367e947d..8f02fed04e0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic113.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic113.C
@@ -1,5 +1,6 @@
// PR c++/49251
-// { dg-options "-std=c++11 -Wunused-parameter" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wunused-parameter" }
struct A {};
template <int> int f(A);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic114.C b/gcc/testsuite/g++.dg/cpp0x/variadic114.C
index 80f546a82b4..82ffe83c7c5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic114.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic114.C
@@ -1,5 +1,5 @@
// PR c++/49785
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename, typename ...> struct B { };
template <typename> class A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic115.C b/gcc/testsuite/g++.dg/cpp0x/variadic115.C
index 8c59a79497d..bb781859cee 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic115.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic115.C
@@ -1,5 +1,5 @@
// PR c++/49593
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename... T> void f(T...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic116.C b/gcc/testsuite/g++.dg/cpp0x/variadic116.C
index ab4ed45f9b7..05a9a79f4fa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic116.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic116.C
@@ -1,5 +1,5 @@
// Origin: PR c++/48320
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class... T>
struct tuple
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic117.C b/gcc/testsuite/g++.dg/cpp0x/variadic117.C
index 477a9f1e275..04663d2b64e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic117.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic117.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T> struct A { typedef T type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic118.C b/gcc/testsuite/g++.dg/cpp0x/variadic118.C
index 75ee1cdcabe..ee742ebb946 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic118.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic118.C
@@ -1,5 +1,5 @@
// This should fail deduction, before it produces a candidate.
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class... T>
void f(T... ts); // { dg-message "deduction" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic12.C b/gcc/testsuite/g++.dg/cpp0x/variadic12.C
index 4b56b0117e8..661ed3d4990 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic12.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic12.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// A tuple type
template<typename... Args> struct tuple { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic121.C b/gcc/testsuite/g++.dg/cpp0x/variadic121.C
index 1d086fc8ccd..21121962d51 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic121.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic121.C
@@ -1,5 +1,5 @@
// PR c++/51507
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename ...>
struct foo { typedef void type; };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic122.C b/gcc/testsuite/g++.dg/cpp0x/variadic122.C
index 7f03c107c39..aa21ddddd18 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic122.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic122.C
@@ -1,5 +1,6 @@
// PR c++/52043
-// { dg-options "-std=c++11 -Wreturn-type" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wreturn-type" }
template < class T > struct Container
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic124.C b/gcc/testsuite/g++.dg/cpp0x/variadic124.C
index 8ddc810b313..d69c6f912c9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic124.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic124.C
@@ -1,5 +1,5 @@
// PR c++/52292
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <template <typename...> class T>
struct foo {
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic13.C b/gcc/testsuite/g++.dg/cpp0x/variadic13.C
index 24601e03ab2..8a59c981af9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic13.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic13.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args> struct tuple1 { };
template<typename... Args> struct tuple2 { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic135.C b/gcc/testsuite/g++.dg/cpp0x/variadic135.C
index 841f7ceebbe..fcdd2a71854 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic135.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic135.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template <typename ...> struct S;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic14.C b/gcc/testsuite/g++.dg/cpp0x/variadic14.C
index 339d5f921d4..addbd7479fd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic14.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename R, typename... ArgTypes>
struct make_function_type
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic143.C b/gcc/testsuite/g++.dg/cpp0x/variadic143.C
index da3e7c4789e..db0b268e4bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic143.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic143.C
@@ -1,5 +1,5 @@
// PR c++/56782
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<class T>
T&& declval();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic149.C b/gcc/testsuite/g++.dg/cpp0x/variadic149.C
index a250e7c296a..8207d9832ae 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic149.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic149.C
@@ -1,5 +1,6 @@
// PR c++/60248
-// { dg-options "-std=c++11 -g -fabi-version=2" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -fabi-version=2" }
template<int...> struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic15.C b/gcc/testsuite/g++.dg/cpp0x/variadic15.C
index c7dadc6276d..895a548e35b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic15.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic15.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename R, typename... ArgTypes>
struct make_function_type
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic16.C b/gcc/testsuite/g++.dg/cpp0x/variadic16.C
index 23a5710760b..d377d3616fa 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic16.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic16.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename R, typename... ArgTypes>
struct make_function_type
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic17.C b/gcc/testsuite/g++.dg/cpp0x/variadic17.C
index cc1a5f02125..d54022a7c7b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic17.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic17.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename R, typename... ArgTypes>
struct make_function_type
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic18.C b/gcc/testsuite/g++.dg/cpp0x/variadic18.C
index cfacd7a7910..fc0e2ddcf51 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic18.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic18.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...> class tuple { };
template<typename T, template<typename T> class... Metafunctions>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic19.C b/gcc/testsuite/g++.dg/cpp0x/variadic19.C
index 7a0864504c7..0ae2672bff0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic19.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic19.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple {
static const int value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic2.C b/gcc/testsuite/g++.dg/cpp0x/variadic2.C
index 023cb08316d..3d127ea513c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args = int> // { dg-error "default argument" }
class tuple2;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic20.C b/gcc/testsuite/g++.dg/cpp0x/variadic20.C
index e8bdf121bf4..5b5a2346424 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic20.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic20.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T> struct add_pointer;
template<typename T> struct add_reference;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic21.C b/gcc/testsuite/g++.dg/cpp0x/variadic21.C
index e2115f1362c..a379bd1fd34 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic21.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic21.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, int... Dims>
struct array { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic22.C b/gcc/testsuite/g++.dg/cpp0x/variadic22.C
index c37f056c2bb..932d25b8031 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic22.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic22.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename R, typename... ArgTypes>
struct make_function_type
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic23.C b/gcc/testsuite/g++.dg/cpp0x/variadic23.C
index ea0d31c5007..15825f3bdf3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic23.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic23.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, int... Dims>
struct array {
static const int value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic24.C b/gcc/testsuite/g++.dg/cpp0x/variadic24.C
index fe953bc150e..4f172cd4de6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic24.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic24.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, T... Values>
struct vector_c { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic25.C b/gcc/testsuite/g++.dg/cpp0x/variadic25.C
index a5f1eee7054..5963760d7f4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic25.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic25.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int... Values>
struct sum;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic26.C b/gcc/testsuite/g++.dg/cpp0x/variadic26.C
index 9150e429958..2dbf0925364 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic26.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic26.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<template<int, int> class Meta, int Initial, int... Values>
struct accumulate {
static const int value = Initial;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic27.C b/gcc/testsuite/g++.dg/cpp0x/variadic27.C
index f4b4470a39c..d690bb9667c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic27.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic27.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename Signature>
struct function_traits;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic28.C b/gcc/testsuite/g++.dg/cpp0x/variadic28.C
index 4e60d9f2815..b0278613cbf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic28.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic28.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename Signature>
struct function_traits;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic29.C b/gcc/testsuite/g++.dg/cpp0x/variadic29.C
index a7bc877c73c..8931e0fa6b3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic29.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic29.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename Signature>
struct function_traits;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic3.C b/gcc/testsuite/g++.dg/cpp0x/variadic3.C
index f08ff62b8fb..c4a5b55cc59 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic3.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
class tuple {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic30.C b/gcc/testsuite/g++.dg/cpp0x/variadic30.C
index 36d93c12f3e..0d8c0c95adc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic30.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic30.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T>
void eat(T...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic31.C b/gcc/testsuite/g++.dg/cpp0x/variadic31.C
index 48ae5604c92..cffd703ecee 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic31.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic31.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=gnu++11 -g" }
+// { dg-options "-g" }
+// { dg-do compile { target c++11 } }
template<typename... T>
void eat(T...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic32.C b/gcc/testsuite/g++.dg/cpp0x/variadic32.C
index 0f620ecbd13..0c5f6ee9841 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic32.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic32.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... T>
void eat(const T&...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic33.C b/gcc/testsuite/g++.dg/cpp0x/variadic33.C
index d962f5a1da9..bd25b849387 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic33.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic33.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
void print_all() {}
template<typename T, typename... Rest>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic34.C b/gcc/testsuite/g++.dg/cpp0x/variadic34.C
index e266b603e82..ae92bac8fe1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic34.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic34.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int I, typename... Args>
void get_ith(const Args&... args);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic35.C b/gcc/testsuite/g++.dg/cpp0x/variadic35.C
index 518edec4145..8365c9ba50b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic35.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic35.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int I, typename... Args>
void get_ith(const Args&... args); // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic36.C b/gcc/testsuite/g++.dg/cpp0x/variadic36.C
index bbd2159b65f..c60e6d0576c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic36.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic36.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename... Args>
void f(const T&, const Args&... args)
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic37.C b/gcc/testsuite/g++.dg/cpp0x/variadic37.C
index 2f6042ec27c..db488ef55a4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic37.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic37.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Values>
struct tuple
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic38.C b/gcc/testsuite/g++.dg/cpp0x/variadic38.C
index b320a8a3c5c..62031a3d001 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic38.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic38.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int... Values>
struct int_vec {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic39.C b/gcc/testsuite/g++.dg/cpp0x/variadic39.C
index 4ee19552711..b603478ee08 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic39.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic39.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic4.C b/gcc/testsuite/g++.dg/cpp0x/variadic4.C
index 5371a860bfa..8e8f81493f2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic4.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic4.C
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++11 -fabi-version=0" }
-// { dg-do compile }
+// { dg-options "-fabi-version=0" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
class tuple {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic40.C b/gcc/testsuite/g++.dg/cpp0x/variadic40.C
index c6512e90192..e4df9b8bdef 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic40.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic40.C
@@ -1,3 +1,3 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Values, typename T>
struct backward_tuple {}; // { dg-error "end" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic41.C b/gcc/testsuite/g++.dg/cpp0x/variadic41.C
index 3eee1f572c3..df113679fff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic41.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic41.C
@@ -1,5 +1,5 @@
// A function parameter pack is only deduced if it's at the end
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
void f(const Args&... args, int oops);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic42.C b/gcc/testsuite/g++.dg/cpp0x/variadic42.C
index b5d917f186a..b1aa141dd6e 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic42.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic42.C
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++11 -fabi-version=5" }
-// { dg-do compile }
+// { dg-options "-fabi-version=5" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
void f(Args...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic43.C b/gcc/testsuite/g++.dg/cpp0x/variadic43.C
index 7310660752c..b2f1f8dc05a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic43.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic43.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
int f(const Args&...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic44.C b/gcc/testsuite/g++.dg/cpp0x/variadic44.C
index 1e314be8b19..01df2e0c79f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic44.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic44.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=gnu++11" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template<typename... Args>
int f(const Args&...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic45.C b/gcc/testsuite/g++.dg/cpp0x/variadic45.C
index a36a56b7491..2a79bc8e67f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic45.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic45.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
int& f(Args...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic46.C b/gcc/testsuite/g++.dg/cpp0x/variadic46.C
index 1fe0e60e0ea..0ea4ba6a7e6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic46.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic46.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
int& f(Args&...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic47.C b/gcc/testsuite/g++.dg/cpp0x/variadic47.C
index 252a4e7b1a5..53916a934b0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic47.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic47.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T> struct wrap { };
template<typename... Args>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic48.C b/gcc/testsuite/g++.dg/cpp0x/variadic48.C
index ca562c22e6f..e672e76db2c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic48.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic48.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, typename... Args>
int& f(const T&, Args...);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic49.C b/gcc/testsuite/g++.dg/cpp0x/variadic49.C
index 4ccedb1cd12..49c26753efd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic49.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic49.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
int& f(...);
template<typename... Args>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic5.C b/gcc/testsuite/g++.dg/cpp0x/variadic5.C
index b2a35106195..6595b7f8b75 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic5.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic5.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple {
static const int value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic50.C b/gcc/testsuite/g++.dg/cpp0x/variadic50.C
index 32fbb65f42d..99e16993457 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic50.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic50.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
int& f(int, double, ...);
template<typename... Args>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic51.C b/gcc/testsuite/g++.dg/cpp0x/variadic51.C
index 9b2fa218dd6..e072caae4c4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic51.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic51.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
float& f(T1, T2);
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic52.C b/gcc/testsuite/g++.dg/cpp0x/variadic52.C
index 9293d86878a..28ef8571203 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic52.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic52.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, T... Values>
struct vector_c { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic53.C b/gcc/testsuite/g++.dg/cpp0x/variadic53.C
index b595df5db56..ef3d15047e8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic53.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic53.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename F, typename... BoundArgs>
class bound_functor
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic54.C b/gcc/testsuite/g++.dg/cpp0x/variadic54.C
index dd3ab109da8..3fbeefdaf7c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic54.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic54.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename F, typename... BoundArgs>
class bound_functor
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic55.C b/gcc/testsuite/g++.dg/cpp0x/variadic55.C
index e22a16bb8a1..bdf25cf3e22 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic55.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic55.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename F, typename... BoundArgs>
class bound_functor
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic56.C b/gcc/testsuite/g++.dg/cpp0x/variadic56.C
index f0c1beb7894..50b2445aee0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic56.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic56.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Elements>
struct tuple { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic57.C b/gcc/testsuite/g++.dg/cpp0x/variadic57.C
index ca12a2d1a3e..a3d2bf1c5df 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic57.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic57.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T, int... Dims>
struct array {
int foo();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic58.C b/gcc/testsuite/g++.dg/cpp0x/variadic58.C
index 3099ef6808f..14233225af4 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic58.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic58.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
#include <typeinfo>
template<typename... Args>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic59.C b/gcc/testsuite/g++.dg/cpp0x/variadic59.C
index e7abf8b78a8..817883ce287 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic59.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic59.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<class T, typename... VarArgs>
void print(T t, VarArgs args); // { dg-error "packs not expanded" }
// { dg-message "VarArgs" "note" { target *-*-* } 3 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic6.C b/gcc/testsuite/g++.dg/cpp0x/variadic6.C
index bf6350e1dd5..3dc74cc4c23 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic6.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic6.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename ... Args>
struct tuple_base {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic60.C b/gcc/testsuite/g++.dg/cpp0x/variadic60.C
index 8e1681eecc0..57bbcfe2fd2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic60.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic60.C
@@ -1 +1 @@
-template<typename... Args> class tuple; // { dg-error "variadic templates" "" { target c++98 } }
+template<typename... Args> class tuple; // { dg-error "variadic templates" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic63.C b/gcc/testsuite/g++.dg/cpp0x/variadic63.C
index 83db8fc43b4..945b95c7606 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic63.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic63.C
@@ -1,2 +1,3 @@
-// { dg-options "-std=gnu++11 -pedantic" }
+// { dg-options "-pedantic" }
+// { dg-do compile { target c++11 } }
template<typename... Args> class tuple;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic64.C b/gcc/testsuite/g++.dg/cpp0x/variadic64.C
index fdc53540613..d7c313d58b2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic64.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic64.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int... Indexes>
struct _Index_tuple { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic65.C b/gcc/testsuite/g++.dg/cpp0x/variadic65.C
index 4544f9289ca..e2ef931ad67 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic65.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic65.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
struct unused;
template<typename T1 = unused, typename T2 = unused, typename T3 = unused,
typename T4 = unused, typename T5 = unused, typename T6 = unused>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic66.C b/gcc/testsuite/g++.dg/cpp0x/variadic66.C
index 943bd70d0aa..ac922215198 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic66.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic66.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename Result, typename Functor, typename... ArgTypes>
Result bind(Functor, ArgTypes...) { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic67.C b/gcc/testsuite/g++.dg/cpp0x/variadic67.C
index 5538bc911e2..6e328cfe0bd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic67.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic67.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Elements> struct tuple {};
template<typename... Args>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic68.C b/gcc/testsuite/g++.dg/cpp0x/variadic68.C
index 22b3444a0ec..edcdfa8560c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic68.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic68.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
extern "C" void abort();
template<typename T, T... Values>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic69.C b/gcc/testsuite/g++.dg/cpp0x/variadic69.C
index eb8626524be..660e09a00fb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic69.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic69.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T>
struct stored_value
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic7.C b/gcc/testsuite/g++.dg/cpp0x/variadic7.C
index 68358f06717..8b049968bbd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple_base {
static const int value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic70.C b/gcc/testsuite/g++.dg/cpp0x/variadic70.C
index cc269915f42..df26c6a2da6 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic70.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic70.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
template <typename T, T... Args> struct bomb;
template <typename T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic71.C b/gcc/testsuite/g++.dg/cpp0x/variadic71.C
index 879321593bc..101d220c547 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic71.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic71.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct list {};
template<typename Sequence, typename Head>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic72.C b/gcc/testsuite/g++.dg/cpp0x/variadic72.C
index 77520b301c2..41f83c3ce19 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic72.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic72.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
struct A {};
struct B {};
struct C {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic73.C b/gcc/testsuite/g++.dg/cpp0x/variadic73.C
index 00e8fb46330..533ed46f883 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic73.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic73.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
struct A {};
struct B {};
struct C {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic75.C b/gcc/testsuite/g++.dg/cpp0x/variadic75.C
index 32df43fd116..a3aa07063bb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic75.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic75.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct tuple { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic76.C b/gcc/testsuite/g++.dg/cpp0x/variadic76.C
index df147fdcb7a..d8d1ef9d4ff 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic76.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic76.C
@@ -1,6 +1,5 @@
// PR c++/33496
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int... N> int foo ()
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic77.C b/gcc/testsuite/g++.dg/cpp0x/variadic77.C
index 49b5684b3e3..79badaa02c7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic77.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic77.C
@@ -1,6 +1,5 @@
// PR c++/33496
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int M, int N> struct pair
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic78.C b/gcc/testsuite/g++.dg/cpp0x/variadic78.C
index 4d3d5428c0a..0a42435c6ac 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic78.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic78.C
@@ -1,6 +1,5 @@
// PR c++/33496
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<int M, int N> struct pair
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic79.C b/gcc/testsuite/g++.dg/cpp0x/variadic79.C
index e7a2a15c049..389199cc41d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic79.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic79.C
@@ -1,6 +1,5 @@
// PR c++/33213
-// { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<template<typename> class...> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic8.C b/gcc/testsuite/g++.dg/cpp0x/variadic8.C
index 96fbfad7e79..e2d7fa7a7a5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic8.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic8.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple_base {
static const int value = 0;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic80.C b/gcc/testsuite/g++.dg/cpp0x/variadic80.C
index a8bb9023a68..0612e735c47 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic80.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic80.C
@@ -1,6 +1,5 @@
// PR c++/31434
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
extern "C" void abort ();
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic81.C b/gcc/testsuite/g++.dg/cpp0x/variadic81.C
index e282394145c..0877255c271 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic81.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic81.C
@@ -1,5 +1,5 @@
// PR c++/33461
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic82.C b/gcc/testsuite/g++.dg/cpp0x/variadic82.C
index 50be75db557..f9bbc353268 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic82.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic82.C
@@ -1,5 +1,5 @@
// PR c++/33461
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic83.C b/gcc/testsuite/g++.dg/cpp0x/variadic83.C
index 3293d813a89..507fc7e4c6c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic83.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic83.C
@@ -1,5 +1,5 @@
// PR c++/31441
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic84.C b/gcc/testsuite/g++.dg/cpp0x/variadic84.C
index 8e0dc4475fe..debe75c6195 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic84.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic84.C
@@ -1,6 +1,5 @@
// PR c++/32565
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A1;
template<template<int...> class T> struct A1<T<0> > {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic85.C b/gcc/testsuite/g++.dg/cpp0x/variadic85.C
index 6f6cb8a17bf..708104af907 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic85.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic85.C
@@ -1,6 +1,5 @@
// PR c++/32565
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A1;
template<template<int, int...> class T> struct A1<T<0, 1> > {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic86.C b/gcc/testsuite/g++.dg/cpp0x/variadic86.C
index 73400548a96..2213ef7d981 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic86.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic86.C
@@ -1,6 +1,5 @@
// PR c++/33943
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... A> struct foo {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic87.C b/gcc/testsuite/g++.dg/cpp0x/variadic87.C
index 7e82f37a663..f3c009257e1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic87.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic87.C
@@ -1,5 +1,5 @@
// PR c++/33965
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename T>
struct foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic88.C b/gcc/testsuite/g++.dg/cpp0x/variadic88.C
index a917b530212..b96c7198d65 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic88.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic88.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<typename...> class TT>
TT<int, float, double> foo(TT<int, float>)
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic89.C b/gcc/testsuite/g++.dg/cpp0x/variadic89.C
index b5bedeba7e6..1e59c1af75c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic89.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic89.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// Contributed by Eric Niebler
template<typename T, typename U>
struct pair
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic9.C b/gcc/testsuite/g++.dg/cpp0x/variadic9.C
index 2d12de5fdf1..795da571d19 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic9.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic9.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct pair {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic90.C b/gcc/testsuite/g++.dg/cpp0x/variadic90.C
index 0529057e623..587a0e89e27 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic90.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic90.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<typename...> class TT>
struct X { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic91.C b/gcc/testsuite/g++.dg/cpp0x/variadic91.C
index a5ebdfe7aa2..71f341cbc9f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic91.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic91.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int N> struct Int2Type { };
template<typename... T>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic92.C b/gcc/testsuite/g++.dg/cpp0x/variadic92.C
index b7fa0006b34..99159a2c158 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic92.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic92.C
@@ -1,5 +1,5 @@
// Various tests for variadic templates and partial specialization.
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/36846
template<typename A, typename B>
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic93.C b/gcc/testsuite/g++.dg/cpp0x/variadic93.C
index c17988490fa..63a1103a861 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic93.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic93.C
@@ -1,5 +1,5 @@
// PR c++/35297
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <class T=int, class... ARGS>
struct test2 {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic94.C b/gcc/testsuite/g++.dg/cpp0x/variadic94.C
index 213e53cab58..f5f3228f817 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic94.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic94.C
@@ -1,5 +1,5 @@
// PR c++/40595
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int N>
struct S
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic95.C b/gcc/testsuite/g++.dg/cpp0x/variadic95.C
index b84489aa593..e383938e991 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic95.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic95.C
@@ -1,5 +1,5 @@
// PR c++/39863
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <typename... T>
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic96.C b/gcc/testsuite/g++.dg/cpp0x/variadic96.C
index e5e7df14729..189c4ebf7d8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic96.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic96.C
@@ -1,6 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin: PR c++/41785
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
struct a {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic97.C b/gcc/testsuite/g++.dg/cpp0x/variadic97.C
index 8c3783251df..b251cc3da38 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic97.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic97.C
@@ -1,5 +1,5 @@
// PR c++/42266
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template<typename... _Elements>
class tuple;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic98.C b/gcc/testsuite/g++.dg/cpp0x/variadic98.C
index a29ee8e4211..c463cac17e7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic98.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic98.C
@@ -1,6 +1,5 @@
// PR c++/42358
-// { dg-do assemble }
-// { dg-options -std=c++11 }
+// { dg-do assemble { target c++11 } }
typedef __PTRDIFF_TYPE__ ptrdiff_t;
typedef __SIZE_TYPE__ size_t;
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic99.C b/gcc/testsuite/g++.dg/cpp0x/variadic99.C
index f6544310bc5..8398b2a6675 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic99.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic99.C
@@ -1,5 +1,5 @@
// PR c++/43054
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename R> struct future { };
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-33964.C b/gcc/testsuite/g++.dg/cpp0x/vt-33964.C
index 9ba9367e8da..9e40737d5f0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-33964.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-33964.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename ... Args>
struct foo
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34050.C b/gcc/testsuite/g++.dg/cpp0x/vt-34050.C
index fba340abfd5..6dec6dfc83d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34050.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34050.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {};
template<typename... T> struct B : T...
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34051-2.C b/gcc/testsuite/g++.dg/cpp0x/vt-34051-2.C
index 02373f89027..ace905aad9b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34051-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34051-2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
int i __attribute__((aligned(__alignof(T)))); // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34051.C b/gcc/testsuite/g++.dg/cpp0x/vt-34051.C
index 7d37bf27181..d0a8b951a02 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34051.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34051.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
operator int();
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34052.C b/gcc/testsuite/g++.dg/cpp0x/vt-34052.C
index a2e44b6cde7..1036537eb9c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34052.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34052.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T, typename = T> struct A {}; // { dg-error "must be at the end" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34055.C b/gcc/testsuite/g++.dg/cpp0x/vt-34055.C
index 3caee091862..3ee7bad45c9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34055.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34055.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/34055
template<typename...> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34102.C b/gcc/testsuite/g++.dg/cpp0x/vt-34102.C
index 90ef7728058..c2a6ae5d7f2 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34102.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34102.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/34102
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34103.C b/gcc/testsuite/g++.dg/cpp0x/vt-34103.C
index e1a8574d27e..bb2f8292249 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34103.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34103.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/34103
template<typename> struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34219-2.C b/gcc/testsuite/g++.dg/cpp0x/vt-34219-2.C
index 4f145ca2721..5bb2a21e431 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34219-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34219-2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<typename... T> class Comp, typename... T> void f( T... Value)
{
static_assert( Comp<T>::value > 0, "" ); // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34219.C b/gcc/testsuite/g++.dg/cpp0x/vt-34219.C
index 0cf603e8872..91ee609325a 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34219.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34219.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename T, T a, T... Params>
struct max
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34314.C b/gcc/testsuite/g++.dg/cpp0x/vt-34314.C
index 6f3d0159392..ee0ed01b8d3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34314.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34314.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename Fun, typename... Args> // { dg-error "template parameter" }
struct call;
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34399.C b/gcc/testsuite/g++.dg/cpp0x/vt-34399.C
index 11e7391372d..74f35f73343 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34399.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34399.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int...> struct A
{
void foo();
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34606.C b/gcc/testsuite/g++.dg/cpp0x/vt-34606.C
index 679bb9a7a24..a032bfc0a10 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34606.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34606.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<typename T, typename... U> struct A<T, U> // { dg-error "parameter packs|U" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34751.C b/gcc/testsuite/g++.dg/cpp0x/vt-34751.C
index f500396fc94..1b1e669269c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34751.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34751.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// PR c++/34751
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34753.C b/gcc/testsuite/g++.dg/cpp0x/vt-34753.C
index d435138d1c3..496acaefa01 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34753.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34753.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
template<T> struct B {}; // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34754.C b/gcc/testsuite/g++.dg/cpp0x/vt-34754.C
index ae0c4ec71da..c42fe49d908 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34754.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34754.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<template<int> class... T> struct A
{
void foo(T<0>); // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34755.C b/gcc/testsuite/g++.dg/cpp0x/vt-34755.C
index c642b776cb7..3ef089db96b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34755.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34755.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename> struct A {};
template<template<typename> class... T> void foo(T<int>) {} // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34919.C b/gcc/testsuite/g++.dg/cpp0x/vt-34919.C
index 94de312bf9c..5b106e187cf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34919.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34919.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<int... N> struct A
{
static void foo()
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-34961.C b/gcc/testsuite/g++.dg/cpp0x/vt-34961.C
index 368a4530951..11315ca14e9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-34961.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-34961.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
static const int i __attribute__((aligned(__alignof(T)))) = 0; // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35023.C b/gcc/testsuite/g++.dg/cpp0x/vt-35023.C
index 4646b7a74b5..bc5902394fb 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35023.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35023.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> int foo()
{
T t; // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35024.C b/gcc/testsuite/g++.dg/cpp0x/vt-35024.C
index 3e2654f1e36..c20501f923c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35024.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35024.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> int foo()
{
typename T::X x; // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35026.C b/gcc/testsuite/g++.dg/cpp0x/vt-35026.C
index 491537df977..2590f35ccd0 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35026.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35026.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename... T> struct A
{
T* x[1]; // { dg-error "parameter packs|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35147.C b/gcc/testsuite/g++.dg/cpp0x/vt-35147.C
index 3b2250baeef..0827beee6ac 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35147.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35147.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename _Tp>
_Tp&& forward(_Tp&& __t) { return __t; } // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35242.C b/gcc/testsuite/g++.dg/cpp0x/vt-35242.C
index 2df4bae4922..9af855e3b09 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35242.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35242.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A
{
template<typename... T> struct B;
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35243.C b/gcc/testsuite/g++.dg/cpp0x/vt-35243.C
index a425528b233..e38d3397831 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35243.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35243.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct A {};
template<typename... T> struct B : T...
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-35331.C b/gcc/testsuite/g++.dg/cpp0x/vt-35331.C
index 06fda619102..0128b610094 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-35331.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-35331.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<typename...> struct A;
template<typename...T> struct A<T*> // { dg-error "not expanded|T" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C b/gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C
index 8745dde372e..c047a1963c9 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-37737-1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "note" }
void f() { }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C b/gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C
index 178db4f7c19..21891f1c037 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-37737-2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template<class U, class... T>
void f() // { dg-message "note" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-40092.C b/gcc/testsuite/g++.dg/cpp0x/vt-40092.C
index f3b53d00229..cad264377c5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-40092.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-40092.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename... Types> struct package {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-51314.C b/gcc/testsuite/g++.dg/cpp0x/vt-51314.C
index 9f8c646336e..8a5a66a104b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-51314.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-51314.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11 -pedantic-errors" }
+// { dg-do compile { target c++11 } }
// { dg-prune-output "invalid" }
template<int>struct A{};
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-55323.C b/gcc/testsuite/g++.dg/cpp0x/vt-55323.C
index d517b608694..e360a99be2d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-55323.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-55323.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
struct foo {
foo(int a, float b);
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-55542.C b/gcc/testsuite/g++.dg/cpp0x/vt-55542.C
index 3d5efee87d9..72d58b95801 100644
--- a/gcc/testsuite/g++.dg/cpp0x/vt-55542.C
+++ b/gcc/testsuite/g++.dg/cpp0x/vt-55542.C
@@ -1,5 +1,5 @@
// PR c++/55542
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
template <typename ... P>
struct B
diff --git a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x.C b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x.C
index 5c5eeffb350..e07d33b7faf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x.C
+++ b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x.C
@@ -1,3 +1,4 @@
+// { dg-do compile { target c++11 } }
// { dg-options "-std=gnu++98 -Wc++11-compat" }
int static_assert; // { dg-warning "is a keyword" }
int nullptr; // { dg-warning "is a keyword" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x2.C b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x2.C
index 116b2331762..324b009e6af 100644
--- a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x2.C
@@ -1,4 +1,5 @@
// PR c++/50810
+// { dg-do compile { target c++11 } }
// { dg-options "-std=gnu++98 -Wc++11-compat" }
signed char data[] = { 0xff }; // { dg-warning "narrowing" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x3.C b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x3.C
index c3df9d99ed3..204b4ae991f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x3.C
+++ b/gcc/testsuite/g++.dg/cpp0x/warn_cxx0x3.C
@@ -1,4 +1,5 @@
// PR c++/50810
+// { dg-do compile { target c++11 } }
// { dg-options "-std=gnu++98 -Wc++11-compat -Wno-narrowing" }
signed char data[] = { 0xff };
diff --git a/gcc/testsuite/g++.dg/cpp1y/attr-deprecated-neg.C b/gcc/testsuite/g++.dg/cpp1y/attr-deprecated-neg.C
index b2f0e1238d7..134b3b89c02 100644
--- a/gcc/testsuite/g++.dg/cpp1y/attr-deprecated-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/attr-deprecated-neg.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11_only } }
class [[deprecated]] A // { dg-warning "attribute directive ignored" }
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/attr-deprecated.C b/gcc/testsuite/g++.dg/cpp1y/attr-deprecated.C
index 8cd09c7bb7c..698268a7768 100644
--- a/gcc/testsuite/g++.dg/cpp1y/attr-deprecated.C
+++ b/gcc/testsuite/g++.dg/cpp1y/attr-deprecated.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
class [[deprecated]] A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-dtor1.C b/gcc/testsuite/g++.dg/cpp1y/auto-dtor1.C
index 71050950775..0a109fe8a1c 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-dtor1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-dtor1.C
@@ -1,6 +1,5 @@
// DR 1586
-// { dg-options "-std=c++1y" }
-// { dg-do run }
+// { dg-do run { target c++1y } }
template <class T>
void f (T* p)
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn1.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn1.C
index eb541490bb3..7a5b4908adc 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn1.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
constexpr auto f() { return (char)42; }
#define SA(X) static_assert ((X),#X)
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn10.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn10.C
index e3ed3a93352..890cfda1205 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn10.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn10.C
@@ -1,6 +1,6 @@
// A template declared with auto should be declared with auto in an
// explicit instantiation or explicit specialization, too.
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template <class T>
auto f(T t) { return t; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn11.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn11.C
index a9984aa54a1..132f959db29 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn11.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn11.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
auto f() { return; } // OK, return type is void
auto* g() { return; } // { dg-error "no value" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn12.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn12.C
index ab4a1bbf2db..04ea81929d3 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn12.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn12.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
// { dg-final { scan-assembler "_ZN1AIiEcvDaEv" } }
template <class T>
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn13.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn13.C
index 34a61ae20e3..8f4e105019f 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn13.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn13.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
struct A {
template <class T>
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn14.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn14.C
index e7e86991ed3..f17c0e289c3 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn14.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn14.C
@@ -1,5 +1,5 @@
// PR c++/56177
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
auto f ();
auto f () { return 33; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn15.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn15.C
index bab58a63b90..987aa96b7bb 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn15.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn15.C
@@ -1,4 +1,5 @@
-// { dg-options "-std=c++1y -Wno-return-local-addr" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-Wno-return-local-addr" }
template<class,class> struct same_type;
template<class T> struct same_type<T,T> {};
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn16.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn16.C
index 5caec52143a..233f26f8118 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn16.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn16.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template<class,class> struct ST;
template<class T> struct ST<T,T> {};
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn17.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn17.C
index 8bc961ebc86..ee668b626a1 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn17.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn17.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
int c;
int d;
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn18.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn18.C
index e92503376c7..ca1b0b03379 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn18.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn18.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn19.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn19.C
index a6f1606748f..ecd8b91e885 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn19.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn19.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
template <class T>
auto f() { return T::i; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn2.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn2.C
index 4c2cee7d285..f89c86ce313 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn2.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn2.C
@@ -1,3 +1,3 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
auto f() { return f(); } // { dg-error "auto" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn20.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn20.C
index 30255583b59..818b6f5da67 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn20.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn20.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
template <class T>
auto f(T) { return 42; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn21.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn21.C
index b508af97676..df23a81486d 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn21.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn21.C
@@ -1,5 +1,5 @@
// N3638: decltype(auto) must stand alone
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
void f();
decltype(auto) g1() { return &f; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn22.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn22.C
index f05cbb993ee..0077b89e4cd 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn22.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn22.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn23.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn23.C
index 57503d7612e..f153e2a7fa1 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn23.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn23.C
@@ -1,5 +1,6 @@
// PR c++/58561
-// { dg-options "-std=c++1y -g" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-g" }
auto foo();
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn24.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn24.C
index 8808575907f..dfff2029c1d 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn24.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn24.C
@@ -1,5 +1,6 @@
// PR c++/60314
-// { dg-options "-std=c++1y -g" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-g" }
// fine
decltype(auto) qux() { return 42; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn3.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn3.C
index 107c37f915d..73ec5a7c8d2 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn3.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn3.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
bool b;
auto f()
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn4.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn4.C
index 0b76bfce03a..4c3227a0e1f 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn4.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn4.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template <class T>
constexpr auto f(T t) { return t+1; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn5.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn5.C
index f9af6c2fee0..b8571400263 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn5.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn5.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
int i;
auto& f() { return i; }
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn6.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn6.C
index 03ff537b239..123132ddf0c 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn6.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn6.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template <class T, class U> struct ST;
template <class T> struct ST<T,T> {};
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn7.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn7.C
index b915352a41c..deb664c3bd8 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn7.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
auto f();
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn8.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn8.C
index 15ccfc566cc..1badd6a5e81 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn8.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn8.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
auto f() { return 42; } // { dg-message "old declaration .auto" }
auto f(); // OK
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn9.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn9.C
index 1fa747942cd..018d42cce6b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-fn9.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn9.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
// { dg-final { scan-assembler "_Z1fIiERDaRKT_S1_" } }
template <class T>
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-mangle1.C b/gcc/testsuite/g++.dg/cpp1y/auto-mangle1.C
index 834cfc3ed86..0ea437ca460 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-mangle1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-mangle1.C
@@ -1,5 +1,5 @@
// Mangling for decltype(auto)
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
void f();
diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-neg1.C b/gcc/testsuite/g++.dg/cpp1y/auto-neg1.C
index 1bc3995ed07..a6f31f63def 100644
--- a/gcc/testsuite/g++.dg/cpp1y/auto-neg1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/auto-neg1.C
@@ -1,5 +1,5 @@
// PR c++/60312
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template<typename> struct A;
diff --git a/gcc/testsuite/g++.dg/cpp1y/cplusplus.C b/gcc/testsuite/g++.dg/cpp1y/cplusplus.C
index 0b695932df6..2cfd84fada0 100644
--- a/gcc/testsuite/g++.dg/cpp1y/cplusplus.C
+++ b/gcc/testsuite/g++.dg/cpp1y/cplusplus.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
#if __cplusplus <= 201103L
#error
diff --git a/gcc/testsuite/g++.dg/cpp1y/digit-sep-cxx11-neg.C b/gcc/testsuite/g++.dg/cpp1y/digit-sep-cxx11-neg.C
index a078fa2a33f..453fe106a24 100644
--- a/gcc/testsuite/g++.dg/cpp1y/digit-sep-cxx11-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/digit-sep-cxx11-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target { ! c++1y } } }
#define assert(E) if(!(E))__builtin_abort();
diff --git a/gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C b/gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C
index 371e675577c..6c342a7a416 100644
--- a/gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
int
main()
diff --git a/gcc/testsuite/g++.dg/cpp1y/digit-sep.C b/gcc/testsuite/g++.dg/cpp1y/digit-sep.C
index 69b1c691014..cc670fe06db 100644
--- a/gcc/testsuite/g++.dg/cpp1y/digit-sep.C
+++ b/gcc/testsuite/g++.dg/cpp1y/digit-sep.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
#define assert(E) if(!(E))__builtin_abort();
diff --git a/gcc/testsuite/g++.dg/cpp1y/fn-generic-member-ool.C b/gcc/testsuite/g++.dg/cpp1y/fn-generic-member-ool.C
index f9c814ee081..1d7c812d067 100644
--- a/gcc/testsuite/g++.dg/cpp1y/fn-generic-member-ool.C
+++ b/gcc/testsuite/g++.dg/cpp1y/fn-generic-member-ool.C
@@ -1,5 +1,6 @@
// Out-of-line generic member function definitions.
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A {
void f(auto x);
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-deduce-mult.C b/gcc/testsuite/g++.dg/cpp1y/lambda-deduce-mult.C
index 1181a803647..478d6a50bab 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-deduce-mult.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-deduce-mult.C
@@ -1,8 +1,7 @@
// Testcase for an extension to allow return type deduction when the lambda
// contains more than just a single return-statement.
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
bool b;
template <class T>
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-cfun.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-cfun.C
index 5e515268f24..0069a6eaed9 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-cfun.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-cfun.C
@@ -1,5 +1,6 @@
// Generic lambda conversion to function ptr test from N3690 5.1.2.6
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void f1(int (*)(int)) { }
void f2(char (*)(int)) { }
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-dep.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-dep.C
index bb687381978..c22bb97ecaf 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-dep.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-dep.C
@@ -1,5 +1,5 @@
// Generic lambda type dependence test part from N3690 5.1.2.12
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
void f(int, const int (&)[2] = {}) { } // #1
void f(const int&, const int (&)[1]) { } // #2
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-mixed.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-mixed.C
index 4e26fc500b6..3e67ebd16f6 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-mixed.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-mixed.C
@@ -1,5 +1,5 @@
// Mixed explicit and implicit generic lambda test.
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-udt.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-udt.C
index 9f6d45aa8f1..f0e9a5bbe65 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-udt.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-udt.C
@@ -1,6 +1,6 @@
// Ensure that generic lambdas properly construct and destroy user types.
-// { dg-options "-std=c++1y -DUSE_AUTO_SYNTAX" }
-// { dg-do run }
+// { dg-options "-DUSE_AUTO_SYNTAX" }
+// { dg-do run { target c++1y } }
int i = 3;
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic.C
index bd41b35bbcb..7065ac606f7 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic.C
@@ -1,6 +1,5 @@
// Basic generic lambda test
-// { dg-options "-std=c++1y" }
-// { dg-do run }
+// { dg-do run { target c++1y } }
template <typename T, typename U> struct pair {};
template <typename... T> struct tuple {};
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-vla1.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-vla1.C
index 556722ca62d..f646b85b5b0 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-vla1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-vla1.C
@@ -1,5 +1,5 @@
// PR c++/59271
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
extern "C" int printf (const char *, ...);
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-x.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-x.C
index 48a62686316..b722aa7b23b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-x.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-x.C
@@ -1,5 +1,5 @@
// Explicit generic lambda test from N3690 5.1.2.5
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
#include <iostream>
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xcfun.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xcfun.C
index d44b7963843..fbd74220d40 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xcfun.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xcfun.C
@@ -1,5 +1,6 @@
// Explicit generic lambda conversion to function ptr test from N3690 5.1.2.6
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void f1(int (*)(int)) { }
void f2(char (*)(int)) { }
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xudt.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xudt.C
index fba864bbbe9..f6e9e5bffc6 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xudt.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-xudt.C
@@ -1,4 +1,5 @@
// Ensure that generic lambdas properly construct and destroy user types.
-// { dg-options "-std=gnu++1y -DUSE_EXPLICIT_TEMPLATE_SYNTAX" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-DUSE_EXPLICIT_TEMPLATE_SYNTAX" }
#include "lambda-generic-udt.C"
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic.C
index 1f66475a07b..9721e87d96b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-generic.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic.C
@@ -1,5 +1,5 @@
// Generic lambda test from N3690 5.1.2.5
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
#include <iostream>
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init.C
index a4436422483..f9a80059bd5 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init.C
@@ -1,5 +1,5 @@
// Test for the explicit initializer extension of C++1y
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init1.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init1.C
index 6411fca90ba..25254641419 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init1.C
@@ -1,6 +1,6 @@
// N3648: capture init
-// { dg-options "-std=c++1y -w" }
-// { dg-do run }
+// { dg-options "-w" }
+// { dg-do run { target c++1y } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init2.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init2.C
index 068621dac22..83ec57e6757 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init2.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init2.C
@@ -1,5 +1,5 @@
// N3648: redundancy and capture init
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init3.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init3.C
index 9044be68771..43372284679 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init3.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init3.C
@@ -1,6 +1,6 @@
// N3648: capture init at non-block scope
-// { dg-options "-std=c++1y -w" }
-// { dg-do run }
+// { dg-options "-w" }
+// { dg-do run { target c++1y } }
int i = 42;
int j = [x=i]{ return x; }();
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init4.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init4.C
index da4ea37061c..0affb31bd5e 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init4.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init4.C
@@ -1,6 +1,5 @@
// N3648: capture init example from paper
-// { dg-options "-std=c++1y" }
-// { dg-do run }
+// { dg-do run { target c++1y } }
int x = 4;
auto y = [&r = x, x = x+1]()->int {
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init5.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init5.C
index edada406986..b136f45ea7b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init5.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init5.C
@@ -1,6 +1,5 @@
// Test for paren and brace initializers
-// { dg-options "-std=c++1y" }
-// { dg-do run }
+// { dg-do run { target c++1y } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init6.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init6.C
index 3ebf4799a32..2b82bca4578 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init6.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init6.C
@@ -1,6 +1,6 @@
// Test that simple captures are not named in the closure type, but
// initialized captures are named.
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
int main()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-init7.C b/gcc/testsuite/g++.dg/cpp1y/lambda-init7.C
index ad152cf535b..224cd1a61bf 100644
--- a/gcc/testsuite/g++.dg/cpp1y/lambda-init7.C
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-init7.C
@@ -1,5 +1,5 @@
// PR c++/59349
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
int foo () {
[bar()]{}; // { dg-error "empty initializer" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/mangle1.C b/gcc/testsuite/g++.dg/cpp1y/mangle1.C
index b593a48cc55..0642f147984 100644
--- a/gcc/testsuite/g++.dg/cpp1y/mangle1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/mangle1.C
@@ -1,5 +1,6 @@
// Test that the parens don't show up in the mangling
-// { dg-options "-std=c++1y -Wno-return-local-addr" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-Wno-return-local-addr" }
// { dg-final { scan-assembler "_Z1gI1AEDTdtfp_1iET_" } }
struct A { int i; };
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr57640.C b/gcc/testsuite/g++.dg/cpp1y/pr57640.C
index e26f967c7e2..b9debe1455d 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr57640.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr57640.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++1y }
-// { dg-do compile }
+// { dg-do compile { target c++1y } }
#include <chrono>
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58500.C b/gcc/testsuite/g++.dg/cpp1y/pr58500.C
index 7adb1b8ae4c..ec7d564b4bd 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58500.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58500.C
@@ -1,6 +1,6 @@
// PR c++/58500
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A {};
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58533.C b/gcc/testsuite/g++.dg/cpp1y/pr58533.C
index 9bcd7716697..34d43aabdcb 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58533.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58533.C
@@ -1,5 +1,5 @@
// PR c++/58533
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58534.C b/gcc/testsuite/g++.dg/cpp1y/pr58534.C
index 3319f696956..dd5073182c7 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58534.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58534.C
@@ -1,6 +1,6 @@
// PR c++/58534
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
template<typename> void foo(const auto&) {}
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58535.C b/gcc/testsuite/g++.dg/cpp1y/pr58535.C
index 2bf62b0b3d8..e0718480b3b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58535.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58535.C
@@ -1,5 +1,6 @@
// PR c++/58535
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58536.C b/gcc/testsuite/g++.dg/cpp1y/pr58536.C
index be0043823a0..05c00b362d5 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58536.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58536.C
@@ -1,6 +1,6 @@
// PR c++/58536
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58548.C b/gcc/testsuite/g++.dg/cpp1y/pr58548.C
index ad6f726a33c..122b96f500d 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58548.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58548.C
@@ -1,6 +1,6 @@
// PR c++/58548
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void foo(auto)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58549.C b/gcc/testsuite/g++.dg/cpp1y/pr58549.C
index b9825b51abc..1b54af4a675 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58549.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58549.C
@@ -1,6 +1,6 @@
// PR c++/58549
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void foo(auto)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58637.C b/gcc/testsuite/g++.dg/cpp1y/pr58637.C
index 29297bb93db..ecc92581140 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58637.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58637.C
@@ -1,5 +1,4 @@
// PR c++/58637
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
template<> void foo(auto); // { dg-error "auto|not a template" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr58708.C b/gcc/testsuite/g++.dg/cpp1y/pr58708.C
index a9c19ebb6c3..226b318f650 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr58708.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr58708.C
@@ -1,5 +1,4 @@
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
template<typename, typename>
struct is_same
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59110.C b/gcc/testsuite/g++.dg/cpp1y/pr59110.C
index 5c9c20879ad..c78d645cc34 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59110.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59110.C
@@ -1,4 +1,4 @@
// PR c++/59110
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
int i = *(auto*)0; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59112.C b/gcc/testsuite/g++.dg/cpp1y/pr59112.C
index 12fef4b9fac..bc9d99eb3f4 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59112.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59112.C
@@ -1,6 +1,5 @@
// PR c++/59112
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59113.C b/gcc/testsuite/g++.dg/cpp1y/pr59113.C
index 19bab2cedcc..8d2bf7fbf7c 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59113.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59113.C
@@ -1,6 +1,5 @@
// PR c++/59113
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59629.C b/gcc/testsuite/g++.dg/cpp1y/pr59629.C
index c0e01c1c75d..b6e561f2e01 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59629.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59629.C
@@ -1,5 +1,4 @@
// PR c++/59629
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
void foo(int i = []{ auto 0; }()); // { dg-error "expected|could not convert" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59635.C b/gcc/testsuite/g++.dg/cpp1y/pr59635.C
index 16a3481b99d..80d9f4de43c 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59635.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59635.C
@@ -1,6 +1,5 @@
// PR c++/59635
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
auto f = [] (auto, ...) { return 0; };
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59636.C b/gcc/testsuite/g++.dg/cpp1y/pr59636.C
index bb7d9b546d4..6128753e08e 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59636.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59636.C
@@ -1,5 +1,4 @@
// PR c++/59636
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
auto f = []() { return []<>() {}; }; // { dg-error "expected identifier" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr59638.C b/gcc/testsuite/g++.dg/cpp1y/pr59638.C
index 22af1398a13..0125bdcbb70 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr59638.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr59638.C
@@ -1,6 +1,6 @@
// PR c++/59638
-// { dg-do compile }
-// { dg-options "-std=gnu++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void (*a)(auto); // { dg-error "template declaration" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60052.C b/gcc/testsuite/g++.dg/cpp1y/pr60052.C
index 191e5acfacd..6ac77202045 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60052.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60052.C
@@ -1,6 +1,6 @@
// PR c++/60052
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60053.C b/gcc/testsuite/g++.dg/cpp1y/pr60053.C
index 345a9b81fb1..846039052f8 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60053.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60053.C
@@ -1,6 +1,6 @@
// PR c++/60053
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60064.C b/gcc/testsuite/g++.dg/cpp1y/pr60064.C
index 21b043dddfe..e61704e8ecd 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60064.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60064.C
@@ -1,6 +1,6 @@
// PR c++/60064
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
class A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60065.C b/gcc/testsuite/g++.dg/cpp1y/pr60065.C
index 2aaa1e32fab..2cf8da12bc7 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60065.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60065.C
@@ -1,6 +1,6 @@
// PR c++/60065
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
template <int> void foo(auto... x);
template <typename> void foo2(auto... x);
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60190.C b/gcc/testsuite/g++.dg/cpp1y/pr60190.C
index d5e2567a9b0..9a5b484a667 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60190.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60190.C
@@ -1,5 +1,4 @@
// PR c++/60190
-// { dg-do compile }
-// { dg-options "-std=c++1y" }
+// { dg-do compile { target c++1y } }
auto f = []<int>() -> int() {}; // { dg-error "returning a function|expected" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60311.C b/gcc/testsuite/g++.dg/cpp1y/pr60311.C
index a0db22d0200..001e99327e6 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60311.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60311.C
@@ -1,5 +1,5 @@
// PR c++/60311
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template<void(*)(auto)> struct A {}; // { dg-error "auto" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60376.C b/gcc/testsuite/g++.dg/cpp1y/pr60376.C
index 77efdc583af..51d088a2a95 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60376.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60376.C
@@ -1,5 +1,5 @@
// PR c++/60376
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr60377.C b/gcc/testsuite/g++.dg/cpp1y/pr60377.C
index 4f6497c5e05..6d1d416ec8b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/pr60377.C
+++ b/gcc/testsuite/g++.dg/cpp1y/pr60377.C
@@ -1,5 +1,6 @@
// PR c++/60377
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
+// { dg-options "" }
void foo(auto, void (f*)()); // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/regress1.C b/gcc/testsuite/g++.dg/cpp1y/regress1.C
index 94b00eb82b6..5bb804258eb 100644
--- a/gcc/testsuite/g++.dg/cpp1y/regress1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/regress1.C
@@ -1,5 +1,5 @@
// PR c++/60409
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/system-binary-constants-1.C b/gcc/testsuite/g++.dg/cpp1y/system-binary-constants-1.C
index fe97127c92f..951fa3c5f19 100644
--- a/gcc/testsuite/g++.dg/cpp1y/system-binary-constants-1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/system-binary-constants-1.C
@@ -1,6 +1,5 @@
// Origin: Dodji Seketeli <dodji@redhat.com>
-// { dg-options "-std=c++1y -pedantic-errors" }
-// { dg-do compile }
+// { dg-do compile { target c++1y } }
#include "../system-binary-constants-1.h"
diff --git a/gcc/testsuite/g++.dg/cpp1y/udlit-char-template-neg.C b/gcc/testsuite/g++.dg/cpp1y/udlit-char-template-neg.C
index 71fc973b4d4..c99b2f7278e 100644
--- a/gcc/testsuite/g++.dg/cpp1y/udlit-char-template-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/udlit-char-template-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++11 }
+// { dg-do compile { target { c++11 && { ! c++1y } } } }
template<typename CharT, CharT... String>
int
diff --git a/gcc/testsuite/g++.dg/cpp1y/udlit-char-template.C b/gcc/testsuite/g++.dg/cpp1y/udlit-char-template.C
index 42d25c0c163..d6b44d9c0f0 100644
--- a/gcc/testsuite/g++.dg/cpp1y/udlit-char-template.C
+++ b/gcc/testsuite/g++.dg/cpp1y/udlit-char-template.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template<typename CharT, CharT... String>
int
diff --git a/gcc/testsuite/g++.dg/cpp1y/udlit-empty-string-neg.C b/gcc/testsuite/g++.dg/cpp1y/udlit-empty-string-neg.C
index d0eed918a53..7c23641e629 100644
--- a/gcc/testsuite/g++.dg/cpp1y/udlit-empty-string-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/udlit-empty-string-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
int
operator "*"_s(unsigned long long) // { dg-error "expected empty string after 'operator'" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/udlit-enc-prefix-neg.C b/gcc/testsuite/g++.dg/cpp1y/udlit-enc-prefix-neg.C
index 149fd0d162a..51def3aca39 100644
--- a/gcc/testsuite/g++.dg/cpp1y/udlit-enc-prefix-neg.C
+++ b/gcc/testsuite/g++.dg/cpp1y/udlit-enc-prefix-neg.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
int
operator L""_Ls(unsigned long long) // { dg-error "invalid encoding prefix in literal operator" }
diff --git a/gcc/testsuite/g++.dg/cpp1y/udlit-userdef-string.C b/gcc/testsuite/g++.dg/cpp1y/udlit-userdef-string.C
index e58a66bb63f..f6c3baec922 100644
--- a/gcc/testsuite/g++.dg/cpp1y/udlit-userdef-string.C
+++ b/gcc/testsuite/g++.dg/cpp1y/udlit-userdef-string.C
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
#include "complex_literals.h"
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla-initlist1.C b/gcc/testsuite/g++.dg/cpp1y/vla-initlist1.C
index 1e93835665d..b642ed41580 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla-initlist1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla-initlist1.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++1y" }
+// { dg-do run { target c++1y } }
#include <initializer_list>
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla1.C b/gcc/testsuite/g++.dg/cpp1y/vla1.C
index 29a59edf10e..5708cf84e2f 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla1.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
#include <typeinfo>
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla10.C b/gcc/testsuite/g++.dg/cpp1y/vla10.C
index 1c672903092..c3f71b5c206 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla10.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla10.C
@@ -1,5 +1,5 @@
// PR c++/57402
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
int i = 2;
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla11.C b/gcc/testsuite/g++.dg/cpp1y/vla11.C
index c9cdadea7ec..c84b0bbb9af 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla11.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla11.C
@@ -1,5 +1,5 @@
// PR c++/60251
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
void foo(int n)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla12.C b/gcc/testsuite/g++.dg/cpp1y/vla12.C
index df47f26b048..d605e72a482 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla12.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla12.C
@@ -1,5 +1,5 @@
// PR c++/60250
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
template<typename> void foo()
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla13.C b/gcc/testsuite/g++.dg/cpp1y/vla13.C
index 1efd00fcfd3..9b69452d1d6 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla13.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla13.C
@@ -1,5 +1,5 @@
// PR c++/60227
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
void foo(int n)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla2.C b/gcc/testsuite/g++.dg/cpp1y/vla2.C
index 4cd95d4ef7f..6aa5fcfe955 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla2.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla2.C
@@ -1,6 +1,5 @@
// N3639 allows initialization and capture of VLAs
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
void f(int n)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla3.C b/gcc/testsuite/g++.dg/cpp1y/vla3.C
index a016904604b..75470365a77 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla3.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla3.C
@@ -1,6 +1,5 @@
// Test for throwing bad_array_length on invalid array length
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
#include <new>
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla4.C b/gcc/testsuite/g++.dg/cpp1y/vla4.C
index 78b7effd8f7..9de1d28fef1 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla4.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla4.C
@@ -1,6 +1,5 @@
// Test for range-based for with VLAs.
-// { dg-options -std=c++1y }
-// { dg-do run }
+// { dg-do run { target c++1y } }
#include <new>
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla5.C b/gcc/testsuite/g++.dg/cpp1y/vla5.C
index 1f6da290487..5f0dfdf3024 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla5.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla5.C
@@ -1,5 +1,5 @@
// PR c++/55149
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
void test(int n) {
int r[n];
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla6.C b/gcc/testsuite/g++.dg/cpp1y/vla6.C
index b725e7b6f9c..ca527a84c7b 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla6.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla6.C
@@ -1,5 +1,6 @@
// PR c++/57404
-// { dg-options "-std=c++11 -g" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g" }
void f (int i)
{
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla8.C b/gcc/testsuite/g++.dg/cpp1y/vla8.C
index 6e2031af83b..5077ae343f9 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla8.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla8.C
@@ -1,5 +1,5 @@
// PR c++/55149
-// { dg-options -std=c++1y }
+// { dg-do compile { target c++1y } }
template<unsigned int TA>
struct SA
diff --git a/gcc/testsuite/g++.dg/cpp1y/vla9.C b/gcc/testsuite/g++.dg/cpp1y/vla9.C
index ea5c4d8eedb..5f49d11e913 100644
--- a/gcc/testsuite/g++.dg/cpp1y/vla9.C
+++ b/gcc/testsuite/g++.dg/cpp1y/vla9.C
@@ -1,5 +1,5 @@
// PR c++/57408
-// { dg-options "-std=c++1y -pedantic-errors" }
+// { dg-do compile { target c++1y } }
template<typename Callable>
struct Impl
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/anonname1.C b/gcc/testsuite/g++.dg/debug/dwarf2/anonname1.C
index b1cae214097..11352fd1b2d 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/anonname1.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/anonname1.C
@@ -1,6 +1,6 @@
// PR debug/41828
-// { dg-do compile }
-// { dg-options "-gdwarf-2 -dA -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-gdwarf-2 -dA" }
// { dg-final { scan-assembler-not "<anonymous" } }
// { dg-final { scan-assembler-not "\\._\[0-9\]" } }
// { dg-final { scan-assembler-not "\$_\[0-9\]" } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/auto1.C b/gcc/testsuite/g++.dg/debug/dwarf2/auto1.C
index d637ef0bbad..aef29ee5d95 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/auto1.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/auto1.C
@@ -1,5 +1,6 @@
// PR c++/53756
-// { dg-options "-std=c++1y -g -dA -fno-debug-types-section" }
+// { dg-do compile { target c++1y } }
+// { dg-options "-g -dA -fno-debug-types-section" }
// We're looking for something like
// .uleb128 0x3 # (DIE (0x33) DW_TAG_subprogram)
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/enum1.C b/gcc/testsuite/g++.dg/debug/dwarf2/enum1.C
index b5518ef18a0..ffc936108ed 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/enum1.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/enum1.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-g -dA -gno-strict-dwarf -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA -gno-strict-dwarf" }
// { dg-final { scan-assembler-times "DIE\[^\n\r\]*DW_TAG_enumeration_type" 3 } }
// { dg-final { scan-assembler-times " DW_AT_enum_class" 2 } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C b/gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C
index ee24eca22a4..b315275e387 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C
@@ -1,5 +1,6 @@
// PR c++/43912
-// { dg-options "-g -std=c++0x -dA -fno-merge-debug-strings -gno-strict-dwarf" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA -fno-merge-debug-strings -gno-strict-dwarf" }
// Check for the local alias variables that point to the members of the closure.
// { dg-final { scan-assembler-times "DW_TAG_variable\[^.\]*\.ascii \"j.0\"" 4 } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/pr52260.C b/gcc/testsuite/g++.dg/debug/dwarf2/pr52260.C
index 024afc8bc54..07e80a83a7e 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/pr52260.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/pr52260.C
@@ -1,6 +1,6 @@
// PR debug/52260
-// { dg-do compile }
-// { dg-options "-gdwarf-4 -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-gdwarf-4" }
namespace { typedef decltype (nullptr) T1; }
struct B {};
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-2.C b/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-2.C
index 52ae5c48e6b..f2c0f24c1e8 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-2.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-gpubnames -gdwarf-4 -fno-debug-types-section -std=c++0x -dA" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-gpubnames -gdwarf-4 -fno-debug-types-section -dA" }
// { dg-final { scan-assembler-times "\.section\[\t \]\[^\n\]*debug_pubnames" 1 } }
// { dg-final { scan-assembler "\"\\(anonymous namespace\\)\\\\0\"+\[ \t\]+\[#;/|@!]+\[ \t\]+external name" } }
// { dg-final { scan-assembler "\"one\\\\0\"+\[ \t\]+\[#;/|@!]+\[ \t\]+external name" } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-3.C b/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-3.C
index 6c1e265035e..62d6b0628c8 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-3.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/pubnames-3.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-gpubnames -gdwarf-4 -fdebug-types-section -std=c++0x -dA" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-gpubnames -gdwarf-4 -fdebug-types-section -dA" }
// { dg-final { scan-assembler-times "\.section\[\t \]\[^\n\]*debug_pubnames" 1 } }
// { dg-final { scan-assembler "\"\\(anonymous namespace\\)\\\\0\"+\[ \t\]+\[#;/|@!]+\[ \t\]+external name" } }
// { dg-final { scan-assembler "\"one\\\\0\"+\[ \t\]+\[#;/|@!]+\[ \t\]+external name" } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/rv1.C b/gcc/testsuite/g++.dg/debug/dwarf2/rv1.C
index c954daa91a4..56a6fbaebb3 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/rv1.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/rv1.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-g -dA -gdwarf-4 -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA -gdwarf-4" }
// { dg-final { scan-assembler-times "DIE\[^\n\r\]*DW_TAG_reference_type" 1 } }
// { dg-final { scan-assembler-times "DIE\[^\n\r\]*DW_TAG_rvalue_reference_type" 1 } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
index 85401b2284f..c584e900d0d 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
@@ -1,6 +1,7 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin PR debug/30161
-// { dg-options "-std=c++0x -g -dA" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA" }
//
// In theory the compiler instantiates count<int, char, long>,
// count<char, long> and count<long>. In practice, only
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
index fc82dce79d1..7bdcc4d46ca 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
@@ -1,7 +1,7 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin PR debug/30161
-// { dg-options "-g -dA -std=c++0x -fno-merge-debug-strings" }
-// { dg-do compile }
+// { dg-options "-g -dA -fno-merge-debug-strings" }
+// { dg-do compile { target c++11 } }
// There must be 5 subprograms generated:
// printf(const char*), printf<int, char, int>,
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
index a0ca6137ce0..0e63293ae4f 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
@@ -1,6 +1,7 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin PR debug/30161
-// { dg-options "-std=c++0x -g -dA" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA" }
//
// In theory the compiler instantiates count<int, char, long>,
// count<char, long> and count<long>. In practice, only
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-7.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-7.C
index 2b393594f5e..c1eedd6a185 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-7.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-7.C
@@ -1,6 +1,7 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin PR debug/30161
-// { dg-options "-std=c++0x -g -dA -fno-merge-debug-strings" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -dA -fno-merge-debug-strings" }
// The type M<> should have one DW_TAG_GNU_template_parameter_pack DIE,
// with no DW_AT_name attribute. We don't test the fact that it has no
diff --git a/gcc/testsuite/g++.dg/debug/localclass1.C b/gcc/testsuite/g++.dg/debug/localclass1.C
index db36d592cf5..85adb3b1972 100644
--- a/gcc/testsuite/g++.dg/debug/localclass1.C
+++ b/gcc/testsuite/g++.dg/debug/localclass1.C
@@ -1,5 +1,6 @@
// PR c++/52637
-// { dg-options "-g -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g" }
template <typename T>
struct C { };
diff --git a/gcc/testsuite/g++.dg/debug/nullptr01.C b/gcc/testsuite/g++.dg/debug/nullptr01.C
index 63c16ac8f0e..64e06e54884 100644
--- a/gcc/testsuite/g++.dg/debug/nullptr01.C
+++ b/gcc/testsuite/g++.dg/debug/nullptr01.C
@@ -1,5 +1,6 @@
// Test that debugging backends don't crash on NULLPTR_TYPE.
-// { dg-options "-std=c++0x -fabi-version=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fabi-version=0" }
typedef decltype(nullptr) nullptr_t;
diff --git a/gcc/testsuite/g++.dg/eh/dtor3.C b/gcc/testsuite/g++.dg/eh/dtor3.C
index ed9e6d94449..3ce42d9f16d 100644
--- a/gcc/testsuite/g++.dg/eh/dtor3.C
+++ b/gcc/testsuite/g++.dg/eh/dtor3.C
@@ -1,5 +1,5 @@
// Red Hat bug 750545
-// { dg-do run { target c++98 } }
+// { dg-do run { target { ! c++11 } } }
class excep {};
class A
diff --git a/gcc/testsuite/g++.dg/ext/alias-decl-attr1.C b/gcc/testsuite/g++.dg/ext/alias-decl-attr1.C
index e83fe441275..06e93416f29 100644
--- a/gcc/testsuite/g++.dg/ext/alias-decl-attr1.C
+++ b/gcc/testsuite/g++.dg/ext/alias-decl-attr1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template <unsigned Len, unsigned Align>
struct aligned_storage
diff --git a/gcc/testsuite/g++.dg/ext/alias-decl-attr2.C b/gcc/testsuite/g++.dg/ext/alias-decl-attr2.C
index 83e557c43fb..6437212fb17 100644
--- a/gcc/testsuite/g++.dg/ext/alias-decl-attr2.C
+++ b/gcc/testsuite/g++.dg/ext/alias-decl-attr2.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename T>
struct X {
diff --git a/gcc/testsuite/g++.dg/ext/alias-decl-attr3.C b/gcc/testsuite/g++.dg/ext/alias-decl-attr3.C
index 369aa10e65e..e11178ab832 100644
--- a/gcc/testsuite/g++.dg/ext/alias-decl-attr3.C
+++ b/gcc/testsuite/g++.dg/ext/alias-decl-attr3.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++0x" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
template <class T>
int
diff --git a/gcc/testsuite/g++.dg/ext/alias-decl-attr4.C b/gcc/testsuite/g++.dg/ext/alias-decl-attr4.C
index 3e1c1c405db..9bafc423428 100644
--- a/gcc/testsuite/g++.dg/ext/alias-decl-attr4.C
+++ b/gcc/testsuite/g++.dg/ext/alias-decl-attr4.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++0x" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
using global_vector_type __attribute__((vector_size(16))) = float;
diff --git a/gcc/testsuite/g++.dg/ext/anon-struct4.C b/gcc/testsuite/g++.dg/ext/anon-struct4.C
index 9c8e887dacc..0097ba1244c 100644
--- a/gcc/testsuite/g++.dg/ext/anon-struct4.C
+++ b/gcc/testsuite/g++.dg/ext/anon-struct4.C
@@ -1,5 +1,5 @@
// PR c++/14401
struct { struct { int& i ; } bar ; } foo ; // { dg-error "deleted|uninitialized" "uninit" }
-// { dg-warning "anonymous" "anon" { target c++98 } 3 }
-// { dg-message "should be initialized" "ref-uninit" { target c++98 } 3 }
+// { dg-warning "anonymous" "anon" { target { ! c++11 } } 3 }
+// { dg-message "should be initialized" "ref-uninit" { target { ! c++11 } } 3 }
diff --git a/gcc/testsuite/g++.dg/ext/bases.C b/gcc/testsuite/g++.dg/ext/bases.C
index 0582f72eb81..43f71925dcd 100644
--- a/gcc/testsuite/g++.dg/ext/bases.C
+++ b/gcc/testsuite/g++.dg/ext/bases.C
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++0x -w" }
-// { dg-do run }
+// { dg-options "-w" }
+// { dg-do run { target c++11 } }
#include<typeinfo>
#include<cassert>
diff --git a/gcc/testsuite/g++.dg/ext/complex8.C b/gcc/testsuite/g++.dg/ext/complex8.C
index 9b8ac1b186f..4d79cc645d1 100644
--- a/gcc/testsuite/g++.dg/ext/complex8.C
+++ b/gcc/testsuite/g++.dg/ext/complex8.C
@@ -1,6 +1,5 @@
// PR libstdc++/48760
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
constexpr _Complex int i{1,2};
constexpr _Complex int j{3};
diff --git a/gcc/testsuite/g++.dg/ext/desig6.C b/gcc/testsuite/g++.dg/ext/desig6.C
index ccdafa50d4c..f71d6eeecd5 100644
--- a/gcc/testsuite/g++.dg/ext/desig6.C
+++ b/gcc/testsuite/g++.dg/ext/desig6.C
@@ -1,5 +1,6 @@
// PR c++/57041
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
template<typename T>
union u {
diff --git a/gcc/testsuite/g++.dg/ext/has_nothrow_constructor-2.C b/gcc/testsuite/g++.dg/ext/has_nothrow_constructor-2.C
index 9191c3e97f8..8123fe93d1c 100644
--- a/gcc/testsuite/g++.dg/ext/has_nothrow_constructor-2.C
+++ b/gcc/testsuite/g++.dg/ext/has_nothrow_constructor-2.C
@@ -1,5 +1,5 @@
// PR c++/55842
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class=void> struct number {
number() noexcept(noexcept(0)) { }
diff --git a/gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C b/gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C
index e0ecef44a25..10891b6b592 100644
--- a/gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C
+++ b/gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
struct S {
diff --git a/gcc/testsuite/g++.dg/ext/has_nothrow_copy-8.C b/gcc/testsuite/g++.dg/ext/has_nothrow_copy-8.C
index e1be1a0a771..b6862298d3c 100644
--- a/gcc/testsuite/g++.dg/ext/has_nothrow_copy-8.C
+++ b/gcc/testsuite/g++.dg/ext/has_nothrow_copy-8.C
@@ -1,5 +1,5 @@
// PR c++/56268
-// { dg-options -std=c++11 }
+// { dg-do compile { target c++11 } }
template <class T>
struct A {
diff --git a/gcc/testsuite/g++.dg/ext/int128-4.C b/gcc/testsuite/g++.dg/ext/int128-4.C
index 2d30a082d55..7e5a5020fff 100644
--- a/gcc/testsuite/g++.dg/ext/int128-4.C
+++ b/gcc/testsuite/g++.dg/ext/int128-4.C
@@ -1,6 +1,7 @@
// Test for int128 arithmetic conversions.
// { dg-do compile { target int128 } }
-// { dg-options "-std=gnu++11" }
+// { dg-require-effective-target c++11 }
+// { dg-options "" }
template <class T, class U> struct same;
template <class T> struct same<T,T> { };
diff --git a/gcc/testsuite/g++.dg/ext/is_final.C b/gcc/testsuite/g++.dg/ext/is_final.C
index 7833f3a101b..b3875ad04ae 100644
--- a/gcc/testsuite/g++.dg/ext/is_final.C
+++ b/gcc/testsuite/g++.dg/ext/is_final.C
@@ -1,6 +1,5 @@
// PR c++/51365
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A { };
static_assert( ! __is_final (A), "A not final" );
diff --git a/gcc/testsuite/g++.dg/ext/is_literal_type1.C b/gcc/testsuite/g++.dg/ext/is_literal_type1.C
index 21570d2d6ec..b146bdee9f1 100644
--- a/gcc/testsuite/g++.dg/ext/is_literal_type1.C
+++ b/gcc/testsuite/g++.dg/ext/is_literal_type1.C
@@ -1,6 +1,5 @@
// PR c++/48771
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct NonLiteral {
NonLiteral();
diff --git a/gcc/testsuite/g++.dg/ext/is_pod.C b/gcc/testsuite/g++.dg/ext/is_pod.C
index 939665d8d33..d073889c839 100644
--- a/gcc/testsuite/g++.dg/ext/is_pod.C
+++ b/gcc/testsuite/g++.dg/ext/is_pod.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
struct A
diff --git a/gcc/testsuite/g++.dg/ext/pr57509.C b/gcc/testsuite/g++.dg/ext/pr57509.C
index 92aaadf3387..b89d9094d1d 100644
--- a/gcc/testsuite/g++.dg/ext/pr57509.C
+++ b/gcc/testsuite/g++.dg/ext/pr57509.C
@@ -1,5 +1,4 @@
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
template <bool> struct enable_if {};
template <> struct enable_if<true> {typedef void type;};
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type10.C b/gcc/testsuite/g++.dg/ext/underlying_type10.C
index cb57407fe88..66ba02e997e 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type10.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type10.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++0x" }
+// { dg-do run { target c++11 } }
#include <cassert>
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type3.C b/gcc/testsuite/g++.dg/ext/underlying_type3.C
index b78cc7dd3f6..1209171f2dd 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type3.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type3.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct is_same
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type5.C b/gcc/testsuite/g++.dg/ext/underlying_type5.C
index a9c19924b95..aad53006ee9 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type5.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type5.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct is_same
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type6.C b/gcc/testsuite/g++.dg/ext/underlying_type6.C
index 50f528856d7..91be4d5d994 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type6.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type6.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct is_same
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type7.C b/gcc/testsuite/g++.dg/ext/underlying_type7.C
index 872fe52b00e..2d6ec51792c 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type7.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type7.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
enum E1 : unsigned { E1_en = 1 };
enum E2 : char { E2_en = 1 };
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type8.C b/gcc/testsuite/g++.dg/ext/underlying_type8.C
index 0bbed2b489c..95e76fa247b 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type8.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type8.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
enum E1 : unsigned { E1_en = 1 };
enum E2 : char { E2_en = 1 };
diff --git a/gcc/testsuite/g++.dg/ext/underlying_type9.C b/gcc/testsuite/g++.dg/ext/underlying_type9.C
index 9ffd24439a4..2c564560e3c 100644
--- a/gcc/testsuite/g++.dg/ext/underlying_type9.C
+++ b/gcc/testsuite/g++.dg/ext/underlying_type9.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename T1, typename T2>
struct is_same
diff --git a/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C b/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C
index a549f697382..2ce774abc4a 100644
--- a/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C
+++ b/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Expected errors for char16_t/char32_t string literals. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x -fshort-wchar" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-fshort-wchar" } */
const char s_0[] = "ab";
const char s_1[] = u"ab"; /* { dg-error "from wide string" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf-array.C b/gcc/testsuite/g++.dg/ext/utf-array.C
index 6a14f79e5f1..21e438693a2 100644
--- a/gcc/testsuite/g++.dg/ext/utf-array.C
+++ b/gcc/testsuite/g++.dg/ext/utf-array.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Expected errors for char16_t/char32_t string literals. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
+// { dg-options "" }
const char s_0[] = "ab";
const char s_1[] = u"ab"; /* { dg-error "from wide string" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf-badconcat.C b/gcc/testsuite/g++.dg/ext/utf-badconcat.C
index bab020e4fe3..4079b83879e 100644
--- a/gcc/testsuite/g++.dg/ext/utf-badconcat.C
+++ b/gcc/testsuite/g++.dg/ext/utf-badconcat.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test unsupported concatenation of char16_t/char32_t* string literals. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
const void *s0 = u"a" "b";
const void *s1 = "a" u"b";
diff --git a/gcc/testsuite/g++.dg/ext/utf-badconcat2.C b/gcc/testsuite/g++.dg/ext/utf-badconcat2.C
index 499b323fc19..0d3fe33039b 100644
--- a/gcc/testsuite/g++.dg/ext/utf-badconcat2.C
+++ b/gcc/testsuite/g++.dg/ext/utf-badconcat2.C
@@ -1,6 +1,5 @@
// Test unsupported concatenation of UTF-8 string literals.
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
const void *s0 = u8"a" "b";
const void *s1 = "a" u8"b";
diff --git a/gcc/testsuite/g++.dg/ext/utf-cvt.C b/gcc/testsuite/g++.dg/ext/utf-cvt.C
index 286a0d00715..366c3d41796 100644
--- a/gcc/testsuite/g++.dg/ext/utf-cvt.C
+++ b/gcc/testsuite/g++.dg/ext/utf-cvt.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the char16_t and char32_t promotion rules. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x -Wall -Wconversion -Wsign-conversion -Wsign-promo" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-Wall -Wconversion -Wsign-conversion -Wsign-promo" } */
extern void f_c (char);
extern void fsc (signed char);
diff --git a/gcc/testsuite/g++.dg/ext/utf-cxx0x.C b/gcc/testsuite/g++.dg/ext/utf-cxx0x.C
index 1daa0dee487..221ccf0934b 100644
--- a/gcc/testsuite/g++.dg/ext/utf-cxx0x.C
+++ b/gcc/testsuite/g++.dg/ext/utf-cxx0x.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test parsing of u and U prefixes when also used as macros. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
#define u L
#define U L
diff --git a/gcc/testsuite/g++.dg/ext/utf-gnuxx0x.C b/gcc/testsuite/g++.dg/ext/utf-gnuxx0x.C
index 0a6967fe40d..221ccf0934b 100644
--- a/gcc/testsuite/g++.dg/ext/utf-gnuxx0x.C
+++ b/gcc/testsuite/g++.dg/ext/utf-gnuxx0x.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test parsing of u and U prefixes when also used as macros. */
-/* { dg-do compile } */
-/* { dg-options "-std=gnu++0x" } */
+/* { dg-do compile { target c++11 } } */
#define u L
#define U L
diff --git a/gcc/testsuite/g++.dg/ext/utf-mangle.C b/gcc/testsuite/g++.dg/ext/utf-mangle.C
index a131887882a..546566f0835 100644
--- a/gcc/testsuite/g++.dg/ext/utf-mangle.C
+++ b/gcc/testsuite/g++.dg/ext/utf-mangle.C
@@ -1,7 +1,6 @@
// Contributed by Kris Van Hees <kris.van.hees@oracle.com>
// Test the support for char16_t character constants.
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
void f0 (char16_t c) {}
void f1 (char32_t c) {}
diff --git a/gcc/testsuite/g++.dg/ext/utf-rtti.C b/gcc/testsuite/g++.dg/ext/utf-rtti.C
index b5d201b4d7a..202625789e7 100644
--- a/gcc/testsuite/g++.dg/ext/utf-rtti.C
+++ b/gcc/testsuite/g++.dg/ext/utf-rtti.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Ensure that typeinfo data is generated for char16_t/char32_t. */
-/* { dg-do link } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do link { target c++11 } } */
#include <typeinfo>
diff --git a/gcc/testsuite/g++.dg/ext/utf-type.C b/gcc/testsuite/g++.dg/ext/utf-type.C
index 41a83ff2ef0..7e15647972c 100644
--- a/gcc/testsuite/g++.dg/ext/utf-type.C
+++ b/gcc/testsuite/g++.dg/ext/utf-type.C
@@ -1,8 +1,8 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Ensure that __CHAR16_TYPE__ and __CHAR32_TYPE__ exist, match the types they
are the underlying data type for. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf-typedef-cxx0x.C b/gcc/testsuite/g++.dg/ext/utf-typedef-cxx0x.C
index 641e836e419..3503f11a264 100644
--- a/gcc/testsuite/g++.dg/ext/utf-typedef-cxx0x.C
+++ b/gcc/testsuite/g++.dg/ext/utf-typedef-cxx0x.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Ensure that a typedef to char16_t/char32_t issues an error in c++0x. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
typedef short unsigned int char16_t; /* { dg-error "redeclaration" } */
typedef unsigned int char32_t; /* { dg-error "redeclaration" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf-typespec.C b/gcc/testsuite/g++.dg/ext/utf-typespec.C
index 6a4af25598a..aa10b725309 100644
--- a/gcc/testsuite/g++.dg/ext/utf-typespec.C
+++ b/gcc/testsuite/g++.dg/ext/utf-typespec.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Ensure that type specifiers are not allowed for char16_t/char32_t. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
signed char16_t c0; /* { dg-error "signed" } */
signed char32_t c1; /* { dg-error "signed" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf16-1.C b/gcc/testsuite/g++.dg/ext/utf16-1.C
index fa07de912d5..8754e4d824b 100644
--- a/gcc/testsuite/g++.dg/ext/utf16-1.C
+++ b/gcc/testsuite/g++.dg/ext/utf16-1.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the support for char16_t character constants. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf16-2.C b/gcc/testsuite/g++.dg/ext/utf16-2.C
index d7a6056f81c..4951e034430 100644
--- a/gcc/testsuite/g++.dg/ext/utf16-2.C
+++ b/gcc/testsuite/g++.dg/ext/utf16-2.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the support for char16_t* string literals. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf16-3.C b/gcc/testsuite/g++.dg/ext/utf16-3.C
index 183347b6ee9..370dcf1dc7b 100644
--- a/gcc/testsuite/g++.dg/ext/utf16-3.C
+++ b/gcc/testsuite/g++.dg/ext/utf16-3.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test concatenation of char16_t* string literals. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf16-4.C b/gcc/testsuite/g++.dg/ext/utf16-4.C
index 21cdb53bdeb..807b77524a4 100644
--- a/gcc/testsuite/g++.dg/ext/utf16-4.C
+++ b/gcc/testsuite/g++.dg/ext/utf16-4.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Expected errors for char16_t character constants. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
+
const static char16_t c0 = u''; /* { dg-error "empty character" } */
const static char16_t c1 = u'ab'; /* { dg-warning "constant too long" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf32-1.C b/gcc/testsuite/g++.dg/ext/utf32-1.C
index 98465a0a1b9..848d3a93b49 100644
--- a/gcc/testsuite/g++.dg/ext/utf32-1.C
+++ b/gcc/testsuite/g++.dg/ext/utf32-1.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the support for char32_t character constants. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf32-2.C b/gcc/testsuite/g++.dg/ext/utf32-2.C
index e2256ba7464..843e9b43e8c 100644
--- a/gcc/testsuite/g++.dg/ext/utf32-2.C
+++ b/gcc/testsuite/g++.dg/ext/utf32-2.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the support for char32_t* string constants. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf32-3.C b/gcc/testsuite/g++.dg/ext/utf32-3.C
index bba893cef5a..f5d1db0d034 100644
--- a/gcc/testsuite/g++.dg/ext/utf32-3.C
+++ b/gcc/testsuite/g++.dg/ext/utf32-3.C
@@ -1,7 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test concatenation of char32_t* string literals. */
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -Wall -Werror" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-Wall -Werror" } */
extern "C" void abort (void);
diff --git a/gcc/testsuite/g++.dg/ext/utf32-4.C b/gcc/testsuite/g++.dg/ext/utf32-4.C
index 744fea7c59d..0b270304a04 100644
--- a/gcc/testsuite/g++.dg/ext/utf32-4.C
+++ b/gcc/testsuite/g++.dg/ext/utf32-4.C
@@ -1,7 +1,6 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Expected errors for char32_t character constants. */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
const static char32_t c0 = U''; /* { dg-error "empty character" } */
const static char32_t c1 = U'ab'; /* { dg-warning "constant too long" } */
diff --git a/gcc/testsuite/g++.dg/ext/utf8-1.C b/gcc/testsuite/g++.dg/ext/utf8-1.C
index 203b326af79..a1a3518a497 100644
--- a/gcc/testsuite/g++.dg/ext/utf8-1.C
+++ b/gcc/testsuite/g++.dg/ext/utf8-1.C
@@ -1,6 +1,6 @@
-// { dg-do run }
+// { dg-do run { target c++11 } }
// { dg-require-iconv "ISO-8859-2" }
-// { dg-options "-std=c++0x -fexec-charset=ISO-8859-2" }
+// { dg-options "-fexec-charset=ISO-8859-2" }
const char *str1 = "h\u00e1\U0000010Dky ";
const char *str2 = "\u010d\u00E1rky\n";
diff --git a/gcc/testsuite/g++.dg/ext/utf8-2.C b/gcc/testsuite/g++.dg/ext/utf8-2.C
index 417a8bfdc1e..bafe6e8351c 100644
--- a/gcc/testsuite/g++.dg/ext/utf8-2.C
+++ b/gcc/testsuite/g++.dg/ext/utf8-2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
const char s0[] = u8"ab";
const char16_t s1[] = u8"ab"; // { dg-error "from non-wide" }
diff --git a/gcc/testsuite/g++.dg/ext/vector18.C b/gcc/testsuite/g++.dg/ext/vector18.C
index dfffad5af76..402558ef93a 100644
--- a/gcc/testsuite/g++.dg/ext/vector18.C
+++ b/gcc/testsuite/g++.dg/ext/vector18.C
@@ -1,5 +1,4 @@
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
typedef signed char __attribute__((vector_size(128) )) vec;
diff --git a/gcc/testsuite/g++.dg/ext/vector19.C b/gcc/testsuite/g++.dg/ext/vector19.C
index 4fd937fa27e..a41e8d51706 100644
--- a/gcc/testsuite/g++.dg/ext/vector19.C
+++ b/gcc/testsuite/g++.dg/ext/vector19.C
@@ -1,5 +1,4 @@
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
typedef double vec __attribute__((vector_size(2*sizeof(double))));
typedef signed char vec2 __attribute__((vector_size(16)));
diff --git a/gcc/testsuite/g++.dg/ext/vector20.C b/gcc/testsuite/g++.dg/ext/vector20.C
index 3d7c39250cf..2199a22e483 100644
--- a/gcc/testsuite/g++.dg/ext/vector20.C
+++ b/gcc/testsuite/g++.dg/ext/vector20.C
@@ -1,5 +1,4 @@
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
typedef long vec __attribute__((vector_size (2 * sizeof (long))));
constexpr vec v = { 3, 4 };
diff --git a/gcc/testsuite/g++.dg/ext/vector23.C b/gcc/testsuite/g++.dg/ext/vector23.C
index c073895f0ca..461d8a9e969 100644
--- a/gcc/testsuite/g++.dg/ext/vector23.C
+++ b/gcc/testsuite/g++.dg/ext/vector23.C
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-std=gnu++1y -Wsign-conversion" } */
+/* { dg-do compile { target c++1y } } */
+/* { dg-options "-Wsign-conversion" } */
// Ignore warning on some powerpc-linux configurations.
// { dg-prune-output "non-standard ABI extension" }
// Ignore warning on Linux/x86
diff --git a/gcc/testsuite/g++.dg/ext/vector26.C b/gcc/testsuite/g++.dg/ext/vector26.C
index 11ec7e19d74..1d7a1e47160 100644
--- a/gcc/testsuite/g++.dg/ext/vector26.C
+++ b/gcc/testsuite/g++.dg/ext/vector26.C
@@ -5,5 +5,5 @@
typedef enum { e } T __attribute__((vector_size(8)));
static void foo(T t) {}
-void bar (T t) {} // { dg-error "no linkage" "" { target c++98 } }
-// { dg-final { scan-assembler-not "globl\[ \t]*_Z3bar" { target { ! c++98 } } } }
+void bar (T t) {} // { dg-error "no linkage" "" { target { ! c++11 } } }
+// { dg-final { scan-assembler-not "globl\[ \t]*_Z3bar" { target c++11 } } }
diff --git a/gcc/testsuite/g++.dg/ext/visibility/anon8.C b/gcc/testsuite/g++.dg/ext/visibility/anon8.C
index 5e58b551994..b8507497d32 100644
--- a/gcc/testsuite/g++.dg/ext/visibility/anon8.C
+++ b/gcc/testsuite/g++.dg/ext/visibility/anon8.C
@@ -29,5 +29,5 @@ int main ()
call<&B2::fn2> (); // { dg-error "linkage|no matching" }
call<&fn3> ();
call<&B1::fn4> ();
- call<&fn5> (); // { dg-error "linkage|no matching" "" { target c++98 } }
+ call<&fn5> (); // { dg-error "linkage|no matching" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.dg/ext/vla11.C b/gcc/testsuite/g++.dg/ext/vla11.C
index 8f3be9e56c2..e448be325fb 100644
--- a/gcc/testsuite/g++.dg/ext/vla11.C
+++ b/gcc/testsuite/g++.dg/ext/vla11.C
@@ -1,5 +1,6 @@
// Test that auto works with VLAs.
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
+// { dg-options "" { target { ! c++1y } } }
void bar(int n)
{
diff --git a/gcc/testsuite/g++.dg/gomp/pr38639.C b/gcc/testsuite/g++.dg/gomp/pr38639.C
index 481583e80e3..834a03a4cac 100644
--- a/gcc/testsuite/g++.dg/gomp/pr38639.C
+++ b/gcc/testsuite/g++.dg/gomp/pr38639.C
@@ -1,6 +1,6 @@
// PR c++/38639
-// { dg-do compile }
-// { dg-options "-fopenmp -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fopenmp" }
template<int> void
foo ()
diff --git a/gcc/testsuite/g++.dg/gomp/tls-wrap4.C b/gcc/testsuite/g++.dg/gomp/tls-wrap4.C
index 130114811f8..59a56839050 100644
--- a/gcc/testsuite/g++.dg/gomp/tls-wrap4.C
+++ b/gcc/testsuite/g++.dg/gomp/tls-wrap4.C
@@ -2,7 +2,8 @@
// copy per shared object.
// { dg-require-effective-target tls }
-// { dg-options "-std=c++11 -fPIC" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fPIC" }
// { dg-final { scan-assembler-not "_ZTW1i@PLT" { target i?86-*-* x86_64-*-* } } }
extern thread_local int i;
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress5.C b/gcc/testsuite/g++.dg/init/array37.C
index b1935912d6a..a909a18dd5d 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress5.C
+++ b/gcc/testsuite/g++.dg/init/array37.C
@@ -1,5 +1,3 @@
-// { dg-options -std=c++0x }
-
struct A
{
int i;
diff --git a/gcc/testsuite/g++.dg/init/brace2.C b/gcc/testsuite/g++.dg/init/brace2.C
index fec9c6ce4d7..50dc4813954 100644
--- a/gcc/testsuite/g++.dg/init/brace2.C
+++ b/gcc/testsuite/g++.dg/init/brace2.C
@@ -5,4 +5,4 @@ const char * y = { "hello" };
int a = 2;
int b = { 2,3 }; // { dg-error "requires one element in initializer" }
int c = { { 2 } } ; // { dg-error "braces around scalar initializer" }
-int d = {}; // { dg-error "initializer" "" { target c++98 } }
+int d = {}; // { dg-error "initializer" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.dg/init/brace6.C b/gcc/testsuite/g++.dg/init/brace6.C
index ca39b0180d0..0fa818c80c0 100644
--- a/gcc/testsuite/g++.dg/init/brace6.C
+++ b/gcc/testsuite/g++.dg/init/brace6.C
@@ -18,7 +18,7 @@ int main()
{
int i = { 1 };
int j = { 1, 2 }; /* { dg-error "requires one element" } */
- A a = { 6 }; /* { dg-error "initialize" "" { target c++98 } } */
+ A a = { 6 }; /* { dg-error "initialize" "" { target { ! c++11 } } } */
B b = { 6 }; /* { dg-error "" } */
C c = { 6 }; /* { dg-error "too many initializers" } */
D d = { 6 };
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/ctor1.C b/gcc/testsuite/g++.dg/init/ctor11.C
index c35d6011f3b..486f58aa95c 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/ctor1.C
+++ b/gcc/testsuite/g++.dg/init/ctor11.C
@@ -1,5 +1,4 @@
// PR c++/49569
-// { dg-options -std=c++0x }
struct A
{
@@ -18,4 +17,3 @@ struct C
C(): b() { }
C(const B& b): b(b) { }
};
-
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/no-elide1.C b/gcc/testsuite/g++.dg/init/no-elide1.C
index 50df9501635..75b648ed120 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/no-elide1.C
+++ b/gcc/testsuite/g++.dg/init/no-elide1.C
@@ -1,5 +1,5 @@
// PR c++/47503
-// { dg-options "-std=c++0x -fno-elide-constructors" }
+// { dg-options "-fno-elide-constructors" }
struct A
{
diff --git a/gcc/testsuite/g++.dg/init/null1.C b/gcc/testsuite/g++.dg/init/null1.C
index a76ae2a2574..2c05dc3dc5d 100644
--- a/gcc/testsuite/g++.dg/init/null1.C
+++ b/gcc/testsuite/g++.dg/init/null1.C
@@ -1,5 +1,5 @@
// PR c++/16489
-// { dg-do compile { target c++98 } }
+// { dg-do compile { target { ! c++11 } } }
const int NULL = 0;
int main() {
diff --git a/gcc/testsuite/g++.dg/init/pr25811.C b/gcc/testsuite/g++.dg/init/pr25811.C
index e8945dafe93..0a462be5471 100644
--- a/gcc/testsuite/g++.dg/init/pr25811.C
+++ b/gcc/testsuite/g++.dg/init/pr25811.C
@@ -3,49 +3,49 @@
struct A1 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const j; // { dg-message "should be initialized" "" { target c++98 } }
+ int const j; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A2 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const volatile i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const volatile i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A3 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A4 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int const& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A5 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S1 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const i; // { dg-message "should be initialized" "" { target c++98 } }
+ T const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S2 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const volatile i; // { dg-message "should be initialized" "" { target c++98 } }
+ T const volatile i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S3 // { dg-error "uninitialized" "" { target c++11 } }
{
- T& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ T& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S4 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const i; // { dg-message "should be initialized" "" { target c++98 } }
- T& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ T const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
+ T& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct X
@@ -57,7 +57,7 @@ struct X
struct Y11 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Y1 // { dg-error "deleted" "" { target c++11 } }
@@ -67,7 +67,7 @@ struct Y1 // { dg-error "deleted" "" { target c++11 } }
struct Y22 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Y2 // { dg-error "deleted" "" { target c++11 } }
@@ -77,22 +77,22 @@ struct Y2 // { dg-error "deleted" "" { target c++11 } }
struct Z1 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z2 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z3 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z4 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z5
@@ -111,7 +111,7 @@ struct Z // { dg-error "deleted" "" { target c++11 } }
union U // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
void f1 ()
diff --git a/gcc/testsuite/g++.dg/init/pr29043.C b/gcc/testsuite/g++.dg/init/pr29043.C
index f868dfb91a4..f341f8c8f1f 100644
--- a/gcc/testsuite/g++.dg/init/pr29043.C
+++ b/gcc/testsuite/g++.dg/init/pr29043.C
@@ -3,7 +3,7 @@
struct S // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
class C
@@ -15,7 +15,7 @@ public:
struct S2 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
class C2
@@ -35,7 +35,7 @@ class C3
struct S4 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct C4
diff --git a/gcc/testsuite/g++.dg/init/pr43719.C b/gcc/testsuite/g++.dg/init/pr43719.C
index 13a82210bc6..81930d07d10 100644
--- a/gcc/testsuite/g++.dg/init/pr43719.C
+++ b/gcc/testsuite/g++.dg/init/pr43719.C
@@ -3,49 +3,49 @@
struct A1 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const j; // { dg-message "should be initialized" "" { target c++98 } }
+ int const j; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A2 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const volatile i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const volatile i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A3 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A4 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int const& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct A5 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S1 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const i; // { dg-message "should be initialized" "" { target c++98 } }
+ T const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S2 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const volatile i; // { dg-message "should be initialized" "" { target c++98 } }
+ T const volatile i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S3 // { dg-error "uninitialized" "" { target c++11 } }
{
- T& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ T& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
template <class T> struct S4 // { dg-error "uninitialized" "" { target c++11 } }
{
- T const i; // { dg-message "should be initialized" "" { target c++98 } }
- T& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ T const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
+ T& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct X
@@ -57,7 +57,7 @@ struct X
struct Y11 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Y1 // { dg-error "deleted" "" { target c++11 } }
@@ -67,7 +67,7 @@ struct Y1 // { dg-error "deleted" "" { target c++11 } }
struct Y22 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Y2 // { dg-error "deleted" "" { target c++11 } }
@@ -77,22 +77,22 @@ struct Y2 // { dg-error "deleted" "" { target c++11 } }
struct Z1 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z2 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z3 // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z4 // { dg-error "uninitialized" "" { target c++11 } }
{
- int& ref; // { dg-message "should be initialized" "" { target c++98 } }
+ int& ref; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
struct Z5
@@ -111,7 +111,7 @@ struct Z // { dg-error "deleted" "" { target c++11 } }
union U // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
diff --git a/gcc/testsuite/g++.dg/init/pr44086.C b/gcc/testsuite/g++.dg/init/pr44086.C
index b4b0833dd69..96b5bef1cec 100644
--- a/gcc/testsuite/g++.dg/init/pr44086.C
+++ b/gcc/testsuite/g++.dg/init/pr44086.C
@@ -3,7 +3,7 @@
struct A // { dg-error "uninitialized" "" { target c++11 } }
{
- int const i : 2; // { dg-message "should be initialized" "" { target c++98 } }
+ int const i : 2; // { dg-message "should be initialized" "" { target { ! c++11 } } }
};
void f()
diff --git a/gcc/testsuite/g++.dg/ipa/devirt-12.C b/gcc/testsuite/g++.dg/ipa/devirt-12.C
index 2fdf5c49b77..16bae4d8d7b 100644
--- a/gcc/testsuite/g++.dg/ipa/devirt-12.C
+++ b/gcc/testsuite/g++.dg/ipa/devirt-12.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -O -fdump-ipa-inline" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O -fdump-ipa-inline" }
class Foo
{
diff --git a/gcc/testsuite/g++.dg/ipa/devirt-29.C b/gcc/testsuite/g++.dg/ipa/devirt-29.C
index 190d9e2feba..b4f24a1044c 100644
--- a/gcc/testsuite/g++.dg/ipa/devirt-29.C
+++ b/gcc/testsuite/g++.dg/ipa/devirt-29.C
@@ -1,7 +1,7 @@
-/* { dg-do run } */
+/* { dg-do run { target c++11 } } */
/* There is a devirtualizable call. In PR60306 we deduced wrong target to cxa_pure_virtual.
For gcc 4.10 we temporarily disable the devirtualization. */
-/* { dg-options "-O3 -std=c++11" } */
+/* { dg-options "-O3" } */
#include <vector>
diff --git a/gcc/testsuite/g++.dg/ipa/pr56310.C b/gcc/testsuite/g++.dg/ipa/pr56310.C
index af6979c8fd3..04f6aa6b6ea 100644
--- a/gcc/testsuite/g++.dg/ipa/pr56310.C
+++ b/gcc/testsuite/g++.dg/ipa/pr56310.C
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-O -fipa-cp -std=gnu++0x -fno-early-inlining -fipa-cp-clone --param=ipa-cp-eval-threshold=1" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-O -fipa-cp -fno-early-inlining -fipa-cp-clone --param=ipa-cp-eval-threshold=1" } */
void bar (void *, void *);
diff --git a/gcc/testsuite/g++.dg/opt/builtins2.C b/gcc/testsuite/g++.dg/opt/builtins2.C
index 00a28dbc1bf..658c128d62d 100644
--- a/gcc/testsuite/g++.dg/opt/builtins2.C
+++ b/gcc/testsuite/g++.dg/opt/builtins2.C
@@ -1,6 +1,6 @@
// PR c++/49813
// We should handle asinh as a built-in in C++0x mode, even when strict.
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler-not "asinh" } }
#include <math.h>
diff --git a/gcc/testsuite/g++.dg/opt/dump1.C b/gcc/testsuite/g++.dg/opt/dump1.C
index b77c1d58cb6..d90061feee2 100644
--- a/gcc/testsuite/g++.dg/opt/dump1.C
+++ b/gcc/testsuite/g++.dg/opt/dump1.C
@@ -1,5 +1,6 @@
// PR c++/57102
-// { dg-options "-std=gnu++0x -O2 -fno-inline -fdump-final-insns" }
+// { dg-options "-O2 -fno-inline -fdump-final-insns" }
+// { dg-do compile { target c++11 } }
// { dg-final cleanup-saved-temps }
namespace std
diff --git a/gcc/testsuite/g++.dg/opt/pr56381.C b/gcc/testsuite/g++.dg/opt/pr56381.C
index 38a121d979a..00e5495a3e7 100644
--- a/gcc/testsuite/g++.dg/opt/pr56381.C
+++ b/gcc/testsuite/g++.dg/opt/pr56381.C
@@ -1,6 +1,6 @@
// PR tree-optimization/56381
-// { dg-do compile }
-// { dg-options "-std=c++11 -O2 -w" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O2 -w" }
template <class>
class intrusive_ptr {};
diff --git a/gcc/testsuite/g++.dg/opt/pr57661.C b/gcc/testsuite/g++.dg/opt/pr57661.C
index 8be9f09b633..9573663afca 100644
--- a/gcc/testsuite/g++.dg/opt/pr57661.C
+++ b/gcc/testsuite/g++.dg/opt/pr57661.C
@@ -1,6 +1,6 @@
// PR tree-optimization/57661
-// { dg-do compile }
-// { dg-options "-O2 -fno-tree-forwprop -std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O2 -fno-tree-forwprop" }
template <typename>
struct A
diff --git a/gcc/testsuite/g++.dg/opt/pr59947.C b/gcc/testsuite/g++.dg/opt/pr59947.C
index b9a9698975e..71c51b226ce 100644
--- a/gcc/testsuite/g++.dg/opt/pr59947.C
+++ b/gcc/testsuite/g++.dg/opt/pr59947.C
@@ -1,6 +1,6 @@
// PR ipa/59947
-// { dg-do compile }
-// { dg-options "-O0 -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-O0" }
#pragma GCC optimize ("O2")
template <typename T>
diff --git a/gcc/testsuite/g++.dg/opt/value-init1.C b/gcc/testsuite/g++.dg/opt/value-init1.C
index fd38b2e0264..1569a822f56 100644
--- a/gcc/testsuite/g++.dg/opt/value-init1.C
+++ b/gcc/testsuite/g++.dg/opt/value-init1.C
@@ -1,5 +1,6 @@
// PR c++/59659
-// { dg-options "-fdump-tree-gimple -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fdump-tree-gimple" }
// { dg-final { scan-tree-dump-times "i = 0" 0 "gimple" } }
// { dg-final { cleanup-tree-dump "gimple" } }
diff --git a/gcc/testsuite/g++.dg/other/anon-union3.C b/gcc/testsuite/g++.dg/other/anon-union3.C
index e65ee948a3b..94d0aecaf03 100644
--- a/gcc/testsuite/g++.dg/other/anon-union3.C
+++ b/gcc/testsuite/g++.dg/other/anon-union3.C
@@ -2,7 +2,7 @@
class C
{
- auto union // { dg-error "storage class" "" { target c++98 } }
+ auto union // { dg-error "storage class" "" { target { ! c++11 } } }
{
int a;
}; // { dg-error "multiple|specified" "" { target c++11 } }
diff --git a/gcc/testsuite/g++.dg/other/anon3.C b/gcc/testsuite/g++.dg/other/anon3.C
index 707c2d58f9d..586a40e5eef 100644
--- a/gcc/testsuite/g++.dg/other/anon3.C
+++ b/gcc/testsuite/g++.dg/other/anon3.C
@@ -4,4 +4,4 @@
// { dg-do compile }
-enum { a = 3 } x; // { dg-warning "anonymous type" "" { target c++98 } }
+enum { a = 3 } x; // { dg-warning "anonymous type" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.dg/other/crash-6.C b/gcc/testsuite/g++.dg/other/crash-6.C
index 2220675dc70..06aea4f5897 100644
--- a/gcc/testsuite/g++.dg/other/crash-6.C
+++ b/gcc/testsuite/g++.dg/other/crash-6.C
@@ -1,6 +1,6 @@
// Origin: PR c++/42634
-// { dg-options "-g -std=c++0x" }
-// { dg-do compile }
+// { dg-options "-g" }
+// { dg-do compile { target c++11 } }
template<typename T> T declval();
diff --git a/gcc/testsuite/g++.dg/other/crash-7.C b/gcc/testsuite/g++.dg/other/crash-7.C
index d5bc892c07c..d96aeead072 100644
--- a/gcc/testsuite/g++.dg/other/crash-7.C
+++ b/gcc/testsuite/g++.dg/other/crash-7.C
@@ -1,6 +1,6 @@
// Origin: PR c++/42336
-// { dg-options "-std=c++0x -O2 -g" }
-// { dg-do compile }
+// { dg-options "-O2 -g" }
+// { dg-do compile { target c++11 } }
struct X {
void func() {}
diff --git a/gcc/testsuite/g++.dg/other/crash-8.C b/gcc/testsuite/g++.dg/other/crash-8.C
index c260431d5ec..dcae7da76c7 100644
--- a/gcc/testsuite/g++.dg/other/crash-8.C
+++ b/gcc/testsuite/g++.dg/other/crash-8.C
@@ -1,5 +1,6 @@
// Origin: PR c++/42797
-// { dg-options "-g -O2 -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-g -O2" }
template<typename _Tp, _Tp __v> struct integral_constant {
static const _Tp value = __v;
diff --git a/gcc/testsuite/g++.dg/other/final1.C b/gcc/testsuite/g++.dg/other/final1.C
index 3e02c252162..db513629b6a 100644
--- a/gcc/testsuite/g++.dg/other/final1.C
+++ b/gcc/testsuite/g++.dg/other/final1.C
@@ -1,6 +1,6 @@
/* Verify that final methods are devirtualized */
-/* { dg-do compile } */
-/* { dg-options "-fdump-tree-original -std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-fdump-tree-original" } */
struct A final
{
diff --git a/gcc/testsuite/g++.dg/other/final2.C b/gcc/testsuite/g++.dg/other/final2.C
index a07562299d6..92e75379642 100644
--- a/gcc/testsuite/g++.dg/other/final2.C
+++ b/gcc/testsuite/g++.dg/other/final2.C
@@ -1,5 +1,6 @@
// PR c++/53186
-// { dg-options "-fdump-tree-original -std=c++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fdump-tree-original" }
struct F1
{
diff --git a/gcc/testsuite/g++.dg/other/gc5.C b/gcc/testsuite/g++.dg/other/gc5.C
index a369084e00c..00184fc0e07 100644
--- a/gcc/testsuite/g++.dg/other/gc5.C
+++ b/gcc/testsuite/g++.dg/other/gc5.C
@@ -1,6 +1,6 @@
// PR c++/51852
-// { dg-do compile }
-// { dg-options "-std=gnu++11 --param ggc-min-heapsize=0 --param ggc-min-expand=0" }
+// { dg-do compile { target c++11 } }
+// { dg-options "--param ggc-min-heapsize=0 --param ggc-min-expand=0" }
template <typename, typename>
class transformed {};
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/isnan.C b/gcc/testsuite/g++.dg/other/isnan.C
index 40d07e5deef..f80523dc80f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/isnan.C
+++ b/gcc/testsuite/g++.dg/other/isnan.C
@@ -1,5 +1,4 @@
// PR c++/48369
-// { dg-options -std=gnu++0x }
extern "C" int isnan (double);
diff --git a/gcc/testsuite/g++.dg/other/var_copy-1.C b/gcc/testsuite/g++.dg/other/var_copy-1.C
index 2fc6b780e18..192af758216 100644
--- a/gcc/testsuite/g++.dg/other/var_copy-1.C
+++ b/gcc/testsuite/g++.dg/other/var_copy-1.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
// Test to allow for va_copy with C++0x standard.
diff --git a/gcc/testsuite/g++.dg/other/vector-compare.C b/gcc/testsuite/g++.dg/other/vector-compare.C
index b2d1ecbc5ed..03ff5fd7255 100644
--- a/gcc/testsuite/g++.dg/other/vector-compare.C
+++ b/gcc/testsuite/g++.dg/other/vector-compare.C
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-std=gnu++11 -Wall" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-Wall" } */
// Check that we can compare vector types that really are the same through
// typedefs.
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress6.C b/gcc/testsuite/g++.dg/parse/ambig9.C
index 6de64c0b347..68744d1ba63 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress6.C
+++ b/gcc/testsuite/g++.dg/parse/ambig9.C
@@ -1,5 +1,4 @@
// PR c++/49691
-// { dg-options -std=c++0x }
struct A { int x; };
A* f();
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/bitfield-err1.C b/gcc/testsuite/g++.dg/parse/bitfield5.C
index a2e9d47b578..15661320de8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/bitfield-err1.C
+++ b/gcc/testsuite/g++.dg/parse/bitfield5.C
@@ -1,5 +1,4 @@
// PR c++/46282
-// { dg-options -std=c++0x }
template<int>
class A
diff --git a/gcc/testsuite/g++.dg/parse/crash56.C b/gcc/testsuite/g++.dg/parse/crash56.C
index 2b823aed402..6da84f8a78e 100644
--- a/gcc/testsuite/g++.dg/parse/crash56.C
+++ b/gcc/testsuite/g++.dg/parse/crash56.C
@@ -1,6 +1,5 @@
/* PR c++/43081 */
-/* { dg-do compile } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do compile { target c++11 } } */
struct A
{
diff --git a/gcc/testsuite/g++.dg/parse/error11.C b/gcc/testsuite/g++.dg/parse/error11.C
index 6e42ed89afa..319e6acf2b0 100644
--- a/gcc/testsuite/g++.dg/parse/error11.C
+++ b/gcc/testsuite/g++.dg/parse/error11.C
@@ -16,22 +16,22 @@ struct Foo
};
void method(void) {
- typename Foo<::B>::template Nested<::B> n; // { dg-error "17:'<::' cannot begin" "17-begin" { target c++98 } }
-// { dg-message "17:'<:' is an alternate spelling" "17-alt" { target c++98 } 19 }
-// { dg-error "39:'<::' cannot begin" "39-begin" { target c++98 } 19 }
-// { dg-message "39:'<:' is an alternate spelling" "39-alt" { target c++98 } 19 }
+ typename Foo<::B>::template Nested<::B> n; // { dg-error "17:'<::' cannot begin" "17-begin" { target { ! c++11 } } }
+// { dg-message "17:'<:' is an alternate spelling" "17-alt" { target { ! c++11 } } 19 }
+// { dg-error "39:'<::' cannot begin" "39-begin" { target { ! c++11 } } 19 }
+// { dg-message "39:'<:' is an alternate spelling" "39-alt" { target { ! c++11 } } 19 }
n.template Nested<B>::method();
- n.template Nested<::B>::method(); // { dg-error "22:'<::' cannot begin" "error" { target c++98 } }
-// { dg-message "22:'<:' is an alternate" "note" { target c++98 } 24 }
+ n.template Nested<::B>::method(); // { dg-error "22:'<::' cannot begin" "error" { target { ! c++11 } } }
+// { dg-message "22:'<:' is an alternate" "note" { target { ! c++11 } } 24 }
Nested<B>::method();
- Nested<::B>::method(); // { dg-error "11:'<::' cannot begin" "error" { target c++98 } }
-// { dg-message "11:'<:' is an alternate" "note" { target c++98 } 27 }
+ Nested<::B>::method(); // { dg-error "11:'<::' cannot begin" "error" { target { ! c++11 } } }
+// { dg-message "11:'<:' is an alternate" "note" { target { ! c++11 } } 27 }
}
};
template <int N> struct Foo2 {};
-template struct Foo2<::B>; // { dg-error "21:'<::' cannot begin" "begin" { target c++98 } }
-// { dg-message "21:'<:' is an alternate" "alt" { target c++98 } 33 }
+template struct Foo2<::B>; // { dg-error "21:'<::' cannot begin" "begin" { target { ! c++11 } } }
+// { dg-message "21:'<:' is an alternate" "alt" { target { ! c++11 } } 33 }
// { dg-message "25:type/value mismatch" "mismatch" { target *-*-* } 33 }
// { dg-error "25:expected a constant" "const" { target *-*-* } 33 }
@@ -39,11 +39,11 @@ int value = 0;
void func(void)
{
- Foo<::B> f; // { dg-error "cannot begin" "begin" { target c++98 } }
-// { dg-message "alternate spelling" "alt" { target c++98 } 42 }
+ Foo<::B> f; // { dg-error "cannot begin" "begin" { target { ! c++11 } } }
+// { dg-message "alternate spelling" "alt" { target { ! c++11 } } 42 }
f.Foo<B>::method();
- f.Foo<::B>::method(); // { dg-error "8:cannot begin" "begin" { target c++98 } }
-// { dg-message "8:alternate spelling" "alt" { target c++98 } 45 }
+ f.Foo<::B>::method(); // { dg-error "8:cannot begin" "begin" { target { ! c++11 } } }
+// { dg-message "8:alternate spelling" "alt" { target { ! c++11 } } 45 }
// Check cases where we the token sequence is the correct one, but there
// was no digraph or whitespaces in the middle, so we should not emit
@@ -61,9 +61,9 @@ void func(void)
Foo[::value] = 0;
}
-template struct Foo<::B>; // { dg-error "20:'<::' cannot begin" "begin" { target c++98 } }
-// { dg-message "20:is an alternate" "alt" { target c++98 } 64 }
+template struct Foo<::B>; // { dg-error "20:'<::' cannot begin" "begin" { target { ! c++11 } } }
+// { dg-message "20:is an alternate" "alt" { target { ! c++11 } } 64 }
// On the first error message, an additional note about the use of
// -fpermissive should be present
-// { dg-message "17:\\(if you use '-fpermissive' or '-std=c\\+\\+11', or '-std=gnu\\+\\+11' G\\+\\+ will accept your code\\)" "-fpermissive" { target c++98 } 19 }
+// { dg-message "17:\\(if you use '-fpermissive' or '-std=c\\+\\+11', or '-std=gnu\\+\\+11' G\\+\\+ will accept your code\\)" "-fpermissive" { target { ! c++11 } } 19 }
diff --git a/gcc/testsuite/g++.dg/parse/error12.C b/gcc/testsuite/g++.dg/parse/error12.C
index 203ca3febb2..3e6d374e351 100644
--- a/gcc/testsuite/g++.dg/parse/error12.C
+++ b/gcc/testsuite/g++.dg/parse/error12.C
@@ -8,6 +8,6 @@ struct B;
template <class A>
struct Foo {};
-Foo<::B> foo; // { dg-bogus "error" "error in place of warning" { target c++98 } }
-// { dg-warning "4: '<::' cannot begin a template-argument list" "warning <::" { target c++98 } 11 }
-// { dg-message "4:'<:' is an alternate spelling for '.'. Insert whitespace between '<' and '::'" "note <:" { target c++98 } 11 }
+Foo<::B> foo; // { dg-bogus "error" "error in place of warning" { target { ! c++11 } } }
+// { dg-warning "4: '<::' cannot begin a template-argument list" "warning <::" { target { ! c++11 } } 11 }
+// { dg-message "4:'<:' is an alternate spelling for '.'. Insert whitespace between '<' and '::'" "note <:" { target { ! c++11 } } 11 }
diff --git a/gcc/testsuite/g++.dg/parse/template21.C b/gcc/testsuite/g++.dg/parse/template21.C
index 963d269028d..af2194cb9ef 100644
--- a/gcc/testsuite/g++.dg/parse/template21.C
+++ b/gcc/testsuite/g++.dg/parse/template21.C
@@ -2,4 +2,4 @@
template <const int*> class Helper { };
const int foo = 0;
-typedef Helper<&foo> HelperType; // { dg-error "linkage|type" "" { target c++98 } }
+typedef Helper<&foo> HelperType; // { dg-error "linkage|type" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.dg/parse/tmpl-outside1.C b/gcc/testsuite/g++.dg/parse/tmpl-outside1.C
index 7d969e46858..b628f997298 100644
--- a/gcc/testsuite/g++.dg/parse/tmpl-outside1.C
+++ b/gcc/testsuite/g++.dg/parse/tmpl-outside1.C
@@ -7,4 +7,4 @@ struct X
template <int i> struct Y {};
};
-typedef X::template Y<0> y; // { dg-error "template|invalid" "" { target c++98 } }
+typedef X::template Y<0> y; // { dg-error "template|invalid" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.dg/parse/tmpl-outside2.C b/gcc/testsuite/g++.dg/parse/tmpl-outside2.C
index 54d39fa88db..21f1ac04fbe 100644
--- a/gcc/testsuite/g++.dg/parse/tmpl-outside2.C
+++ b/gcc/testsuite/g++.dg/parse/tmpl-outside2.C
@@ -15,5 +15,5 @@ void test()
int main()
{
- typename A<double>::template B<int> b; // { dg-error "template|expected" "" { target c++98 } }
+ typename A<double>::template B<int> b; // { dg-error "template|expected" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.dg/plugin/plugin.exp b/gcc/testsuite/g++.dg/plugin/plugin.exp
index e4ff52f6991..e97fb76a270 100644
--- a/gcc/testsuite/g++.dg/plugin/plugin.exp
+++ b/gcc/testsuite/g++.dg/plugin/plugin.exp
@@ -31,7 +31,7 @@ if { ![info exists TESTING_IN_BUILD_TREE] || ![info exists ENABLE_PLUGIN] } {
# If a testcase doesn't have special options, use these.
global DEFAULT_CXXFLAGS
if ![info exists DEFAULT_CXXFLAGS] then {
- set DEFAULT_CXXFLAGS " -ansi -pedantic-errors -Wno-long-long"
+ set DEFAULT_CXXFLAGS " -pedantic-errors -Wno-long-long"
}
# The procedures in plugin-support.exp need these parameters.
diff --git a/gcc/testsuite/g++.dg/pr57175.C b/gcc/testsuite/g++.dg/pr57175.C
index f54162f0213..d6801a73529 100644
--- a/gcc/testsuite/g++.dg/pr57175.C
+++ b/gcc/testsuite/g++.dg/pr57175.C
@@ -1,5 +1,4 @@
-/* { dg-do compile } */
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
extern "C" void do_not_remove ();
diff --git a/gcc/testsuite/g++.dg/pr57878.C b/gcc/testsuite/g++.dg/pr57878.C
index 0a21ef53b10..231f9e346b9 100644
--- a/gcc/testsuite/g++.dg/pr57878.C
+++ b/gcc/testsuite/g++.dg/pr57878.C
@@ -1,5 +1,6 @@
/* { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -fPIC -std=gnu++11" } */
+// { dg-require-effective-target c++11 }
+/* { dg-options "-O2 -fno-omit-frame-pointer -fPIC" } */
typedef int int32;
typedef long long int64;
diff --git a/gcc/testsuite/g++.dg/simulate-thread/atomics-1.C b/gcc/testsuite/g++.dg/simulate-thread/atomics-1.C
index 91867ba46a0..950caddb7ee 100644
--- a/gcc/testsuite/g++.dg/simulate-thread/atomics-1.C
+++ b/gcc/testsuite/g++.dg/simulate-thread/atomics-1.C
@@ -1,5 +1,4 @@
-/* { dg-do link } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do link { target c++11 } } */
/* { dg-final { simulate-thread } } */
/* { dg-require-effective-target sync_char_short } */
/* { dg-require-effective-target sync_int_long } */
diff --git a/gcc/testsuite/g++.dg/simulate-thread/atomics-2.C b/gcc/testsuite/g++.dg/simulate-thread/atomics-2.C
index 601555bd236..ee11da55e31 100644
--- a/gcc/testsuite/g++.dg/simulate-thread/atomics-2.C
+++ b/gcc/testsuite/g++.dg/simulate-thread/atomics-2.C
@@ -1,5 +1,4 @@
-/* { dg-do link } */
-/* { dg-options "-std=c++0x" } */
+/* { dg-do link { target c++11 } } */
/* { dg-final { simulate-thread } } */
/* { dg-require-effective-target sync_int_long } */
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress4.C b/gcc/testsuite/g++.dg/template/access28.C
index b56263ae5ae..4dd53508dbf 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress4.C
+++ b/gcc/testsuite/g++.dg/template/access28.C
@@ -1,5 +1,4 @@
// PR c++/49663
-// { dg-options -std=c++0x }
struct Nosm
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress1.C b/gcc/testsuite/g++.dg/template/aggr-init1.C
index a6fe3999c98..a09c7a79264 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress1.C
+++ b/gcc/testsuite/g++.dg/template/aggr-init1.C
@@ -1,6 +1,4 @@
// PR c++/46903
-// This isn't C++0x code, but it was breaking in C++0x mode.
-// { dg-options -std=c++0x }
struct A {};
struct B {
diff --git a/gcc/testsuite/g++.dg/template/arg2.C b/gcc/testsuite/g++.dg/template/arg2.C
index dabefc8778f..ef84cfdd79a 100644
--- a/gcc/testsuite/g++.dg/template/arg2.C
+++ b/gcc/testsuite/g++.dg/template/arg2.C
@@ -10,5 +10,5 @@ template <typename T> class X {};
void fn ()
{
class L {};
- X<L> f; // { dg-error "uses local type|trying to instantiate|no type|invalid type" "" { target c++98 } }
+ X<L> f; // { dg-error "uses local type|trying to instantiate|no type|invalid type" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/array1.C b/gcc/testsuite/g++.dg/template/array27.C
index 629ab4103f5..95680dd15fd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/array1.C
+++ b/gcc/testsuite/g++.dg/template/array27.C
@@ -1,5 +1,5 @@
// PR c++/47808
-// { dg-options -std=c++0x }
+// { dg-options "" }
template <typename T>
inline T abs (T const & x) { return x; }
diff --git a/gcc/testsuite/g++.dg/template/canon-type-12.C b/gcc/testsuite/g++.dg/template/canon-type-12.C
index 08c86f0a981..f2467fa1747 100644
--- a/gcc/testsuite/g++.dg/template/canon-type-12.C
+++ b/gcc/testsuite/g++.dg/template/canon-type-12.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<class T, T t = (T)0>
struct S
diff --git a/gcc/testsuite/g++.dg/template/canon-type-9.C b/gcc/testsuite/g++.dg/template/canon-type-9.C
index 4fcd5243534..c15f93ad753 100644
--- a/gcc/testsuite/g++.dg/template/canon-type-9.C
+++ b/gcc/testsuite/g++.dg/template/canon-type-9.C
@@ -1,6 +1,5 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
struct F { F(int) {}};
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/condition1.C b/gcc/testsuite/g++.dg/template/condition1.C
index 0346764f79b..4151e9e5661 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/condition1.C
+++ b/gcc/testsuite/g++.dg/template/condition1.C
@@ -1,5 +1,4 @@
// PR c++/47950
-// { dg-options -std=c++0x }
template <typename T> struct empty
{
diff --git a/gcc/testsuite/g++.dg/template/const5.C b/gcc/testsuite/g++.dg/template/const5.C
index 5d3ec5b1c91..6de02581624 100644
--- a/gcc/testsuite/g++.dg/template/const5.C
+++ b/gcc/testsuite/g++.dg/template/const5.C
@@ -1,5 +1,5 @@
// PR c++/49176
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
struct A { static int a(); };
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/template-const1.C b/gcc/testsuite/g++.dg/template/const7.C
index 32db1f831b4..424ac6d6f05 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/template-const1.C
+++ b/gcc/testsuite/g++.dg/template/const7.C
@@ -1,5 +1,4 @@
// PR c++/47897
-// { dg-options -std=c++0x }
template < typename T, T N >
struct S
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/template-const2.C b/gcc/testsuite/g++.dg/template/const8.C
index 25354b3a54a..5b12629539b 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/template-const2.C
+++ b/gcc/testsuite/g++.dg/template/const8.C
@@ -1,5 +1,4 @@
// PR c++/48707
-// { dg-options -std=c++0x }
struct A {
static int a();
diff --git a/gcc/testsuite/g++.dg/template/defarg12.C b/gcc/testsuite/g++.dg/template/defarg12.C
index d11848af228..7131501e1c2 100644
--- a/gcc/testsuite/g++.dg/template/defarg12.C
+++ b/gcc/testsuite/g++.dg/template/defarg12.C
@@ -1,5 +1,5 @@
// PR c++/35828
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template < typename > struct A ;
template < template < typename > class = A >
diff --git a/gcc/testsuite/g++.dg/template/dependent-expr8.C b/gcc/testsuite/g++.dg/template/dependent-expr8.C
index 20014d6e70b..33fb51debdd 100644
--- a/gcc/testsuite/g++.dg/template/dependent-expr8.C
+++ b/gcc/testsuite/g++.dg/template/dependent-expr8.C
@@ -1,6 +1,5 @@
// Origin PR c++/48574
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/enum1.C b/gcc/testsuite/g++.dg/template/enum8.C
index 6e29f9ea923..314100f61b1 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/enum1.C
+++ b/gcc/testsuite/g++.dg/template/enum8.C
@@ -1,5 +1,4 @@
// PR c++/47482
-// { dg-options -std=c++0x }
template<class>
struct K
diff --git a/gcc/testsuite/g++.dg/template/error-recovery3.C b/gcc/testsuite/g++.dg/template/error-recovery3.C
new file mode 100644
index 00000000000..f8fd94b9db9
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/error-recovery3.C
@@ -0,0 +1,8 @@
+// PR c++/48212
+
+template < bool > void
+foo ()
+{
+ const bool b =; // { dg-error "" }
+ foo < b > (); // { dg-error "" }
+}
diff --git a/gcc/testsuite/g++.dg/template/explicit-args2.C b/gcc/testsuite/g++.dg/template/explicit-args2.C
index d37b734202d..3b5537bade7 100644
--- a/gcc/testsuite/g++.dg/template/explicit-args2.C
+++ b/gcc/testsuite/g++.dg/template/explicit-args2.C
@@ -1,5 +1,5 @@
// PR c++/37177
-// { dg-options -std=c++0x }
+// { dg-do compile { target c++11 } }
#include <typeinfo>
diff --git a/gcc/testsuite/g++.dg/template/inherit6.C b/gcc/testsuite/g++.dg/template/inherit6.C
index 241a68e5e4a..4f070984ed9 100644
--- a/gcc/testsuite/g++.dg/template/inherit6.C
+++ b/gcc/testsuite/g++.dg/template/inherit6.C
@@ -1,6 +1,5 @@
// Origin PR c++/47172
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/template/inherit7.C b/gcc/testsuite/g++.dg/template/inherit7.C
index 67afbca6bf0..b3abc26b98c 100644
--- a/gcc/testsuite/g++.dg/template/inherit7.C
+++ b/gcc/testsuite/g++.dg/template/inherit7.C
@@ -1,6 +1,5 @@
// Origin: PR c++/48656
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
struct A {
int f();
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress3.C b/gcc/testsuite/g++.dg/template/koenig10.C
index ffbb97f6b85..6a1b9b55be8 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress3.C
+++ b/gcc/testsuite/g++.dg/template/koenig10.C
@@ -1,5 +1,4 @@
// PR c++/47511
-// { dg-options -std=c++0x }
namespace N {
template <typename T> bool g( T ) {
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/call1.C b/gcc/testsuite/g++.dg/template/new12.C
index 833318b0560..84eedf8adfd 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/call1.C
+++ b/gcc/testsuite/g++.dg/template/new12.C
@@ -1,5 +1,4 @@
// PR c++/48500
-// { dg-options -std=c++0x }
struct linked_ptr {
};
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/non-const1.C b/gcc/testsuite/g++.dg/template/non-const1.C
index 7fc66a7ae81..16a38518887 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/non-const1.C
+++ b/gcc/testsuite/g++.dg/template/non-const1.C
@@ -1,5 +1,4 @@
// PR c++/48015
-// { dg-options -std=c++0x }
template <typename T> T f(T);
template <typename T> void g()
diff --git a/gcc/testsuite/g++.dg/template/nontype25.C b/gcc/testsuite/g++.dg/template/nontype25.C
index f3994083ebe..85393c1c35a 100644
--- a/gcc/testsuite/g++.dg/template/nontype25.C
+++ b/gcc/testsuite/g++.dg/template/nontype25.C
@@ -8,7 +8,7 @@ template<const B* b> class D {};
template<B* b> class E {};
template<const B* b> void f(D<b> &, C<static_cast<const A*>(b)> &) {} // { dg-error "" "" }
-template<const B* b> void g(D<b> &, E<const_cast<B*>(b)> &) {} // { dg-error "" "" { target c++98 } }
+template<const B* b> void g(D<b> &, E<const_cast<B*>(b)> &) {} // { dg-error "" "" { target { ! c++11 } } }
B b;
@@ -16,7 +16,7 @@ int main()
{
C<static_cast<const A*>(&b)> c; // { dg-error "" }
D<&b> d;
- E<const_cast<B*>(&b)> e; // { dg-error "" "" { target c++98 } }
+ E<const_cast<B*>(&b)> e; // { dg-error "" "" { target { ! c++11 } } }
f(d, c); // { dg-error "" "" { target c++11 } }
g(d, e);
}
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/ptrmem1.C b/gcc/testsuite/g++.dg/template/ptrmem25.C
index 873000b9c38..381d055bfa7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/ptrmem1.C
+++ b/gcc/testsuite/g++.dg/template/ptrmem25.C
@@ -1,5 +1,4 @@
// PR c++/49298
-// { dg-options -std=c++0x }
template <class T, int T::*> struct B { };
template <class T> struct A
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/regress2.C b/gcc/testsuite/g++.dg/template/ptrmem26.C
index 470ee1c4c80..ba3eab10f2f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/regress2.C
+++ b/gcc/testsuite/g++.dg/template/ptrmem26.C
@@ -1,5 +1,4 @@
// PR c++/46552
-// { dg-options -std=c++0x }
struct S
{
diff --git a/gcc/testsuite/g++.dg/template/qualttp18.C b/gcc/testsuite/g++.dg/template/qualttp18.C
index 691517fd372..0a980f463d5 100644
--- a/gcc/testsuite/g++.dg/template/qualttp18.C
+++ b/gcc/testsuite/g++.dg/template/qualttp18.C
@@ -14,7 +14,7 @@ template <template <class> class TT> struct X
struct C
{
- X<A::template B> x; // { dg-error "template" "" { target c++98 } }
+ X<A::template B> x; // { dg-error "template" "" { target { ! c++11 } } }
};
int main()
diff --git a/gcc/testsuite/g++.dg/template/sfinae15.C b/gcc/testsuite/g++.dg/template/sfinae15.C
index 27bce255db3..326823bcb45 100644
--- a/gcc/testsuite/g++.dg/template/sfinae15.C
+++ b/gcc/testsuite/g++.dg/template/sfinae15.C
@@ -1,6 +1,5 @@
// PR c++/40944
-// { dg-options -std=c++0x }
-// { dg-do run }
+// { dg-do run { target c++11 } }
template<typename T>
struct make { static T&& it(); };
diff --git a/gcc/testsuite/g++.dg/template/sfinae16.C b/gcc/testsuite/g++.dg/template/sfinae16.C
index 28a06d280d3..3df581a3293 100644
--- a/gcc/testsuite/g++.dg/template/sfinae16.C
+++ b/gcc/testsuite/g++.dg/template/sfinae16.C
@@ -1,5 +1,6 @@
// PR c++/41927
-// { dg-options "-std=c++0x -Wall" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wall" }
// We were getting a spurious ||/&& warning about the enable_if with the
// source position of d1.
diff --git a/gcc/testsuite/g++.dg/template/sfinae20.C b/gcc/testsuite/g++.dg/template/sfinae20.C
index 9767bc02984..61bd8da93d9 100644
--- a/gcc/testsuite/g++.dg/template/sfinae20.C
+++ b/gcc/testsuite/g++.dg/template/sfinae20.C
@@ -1,5 +1,5 @@
// PR c++/44907
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
#include <utility>
diff --git a/gcc/testsuite/g++.dg/template/sfinae22.C b/gcc/testsuite/g++.dg/template/sfinae22.C
index cdac99d91b7..57846feba5b 100644
--- a/gcc/testsuite/g++.dg/template/sfinae22.C
+++ b/gcc/testsuite/g++.dg/template/sfinae22.C
@@ -1,5 +1,5 @@
// PR c++/44908
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
#include <utility>
diff --git a/gcc/testsuite/g++.dg/template/sfinae23.C b/gcc/testsuite/g++.dg/template/sfinae23.C
index 9e0197a7050..53ed51dd52f 100644
--- a/gcc/testsuite/g++.dg/template/sfinae23.C
+++ b/gcc/testsuite/g++.dg/template/sfinae23.C
@@ -1,5 +1,5 @@
// PR c++/44969
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
template<typename Tp, typename... Args>
class mini_is_constructible
diff --git a/gcc/testsuite/g++.dg/template/typedef25.C b/gcc/testsuite/g++.dg/template/typedef25.C
index 4f5868f1271..f5a13ea8595 100644
--- a/gcc/testsuite/g++.dg/template/typedef25.C
+++ b/gcc/testsuite/g++.dg/template/typedef25.C
@@ -1,7 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin PR c++/42225
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template<class T>
struct A
diff --git a/gcc/testsuite/g++.dg/template/typedef38.C b/gcc/testsuite/g++.dg/template/typedef38.C
index 445db17bd08..42abbbb158e 100644
--- a/gcc/testsuite/g++.dg/template/typedef38.C
+++ b/gcc/testsuite/g++.dg/template/typedef38.C
@@ -1,6 +1,5 @@
// Origin: PR c++/46394
-// { dg-options "-std=c++0x" }
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
template<class T>
struct S0
diff --git a/gcc/testsuite/g++.dg/template/unify11.C b/gcc/testsuite/g++.dg/template/unify11.C
index 85bdbbc940a..80ae98d482a 100644
--- a/gcc/testsuite/g++.dg/template/unify11.C
+++ b/gcc/testsuite/g++.dg/template/unify11.C
@@ -1,6 +1,6 @@
// Contributed by Dodji Seketeli <dodji@redhat.com>
// Origin: PR c++/40684
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/cpp0x/regress/value-dep1.C b/gcc/testsuite/g++.dg/template/value-dep1.C
index 112389d4a8e..7c9b927bf51 100644
--- a/gcc/testsuite/g++.dg/cpp0x/regress/value-dep1.C
+++ b/gcc/testsuite/g++.dg/template/value-dep1.C
@@ -1,5 +1,4 @@
// PR c++/48265
-// { dg-options -std=c++0x }
template < int > struct S
{
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-cse.C b/gcc/testsuite/g++.dg/tls/thread_local-cse.C
index 33064d67c81..5a47e988fc8 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-cse.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-cse.C
@@ -1,7 +1,7 @@
// Test for CSE of the wrapper function: we should only call it once
// for the two references to ir.
-// { dg-do run }
-// { dg-options "-std=c++11 -O -fno-inline -save-temps" }
+// { dg-do run { target c++11 } }
+// { dg-options "-O -fno-inline -save-temps" }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
// { dg-final { scan-assembler-times "call *_ZTW2ir" 1 { xfail *-*-* } } }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-ice.C b/gcc/testsuite/g++.dg/tls/thread_local-ice.C
index 174aac42adb..274e800c812 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-ice.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-ice.C
@@ -1,5 +1,5 @@
// PR c++/55801
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target tls }
class C;
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-ice2.C b/gcc/testsuite/g++.dg/tls/thread_local-ice2.C
index 53bc2978093..5d3ba697a70 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-ice2.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-ice2.C
@@ -1,5 +1,5 @@
// PR c++/58672
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target tls }
struct A
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-order1.C b/gcc/testsuite/g++.dg/tls/thread_local-order1.C
index 10b53af83c8..a43cf884be1 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-order1.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-order1.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
// { dg-require-cxa-atexit "" }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-order2.C b/gcc/testsuite/g++.dg/tls/thread_local-order2.C
index a24df28ebc9..f8df91737df 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-order2.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-order2.C
@@ -3,7 +3,7 @@
// __cxa_thread_atexit into glibc to get this right.
// { dg-do run { xfail *-*-* } }
-// { dg-options "-std=c++11" }
+// { dg-require-effective-target c++11 }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-wrap1.C b/gcc/testsuite/g++.dg/tls/thread_local-wrap1.C
index 56177da1f9f..45efc0a6ffb 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-wrap1.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-wrap1.C
@@ -2,7 +2,7 @@
// with a wrapper.
// { dg-require-effective-target tls }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler-not "_ZTW1i" } }
thread_local int i = 42;
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-wrap2.C b/gcc/testsuite/g++.dg/tls/thread_local-wrap2.C
index 1e8078fa8d1..c8366052141 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-wrap2.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-wrap2.C
@@ -2,7 +2,7 @@
// unit, we build a wrapper but don't bother with an init function.
// { dg-require-effective-target tls }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZTW1i" } }
// { dg-final { scan-assembler-not "_ZTH1i" } }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-wrap3.C b/gcc/testsuite/g++.dg/tls/thread_local-wrap3.C
index ca40e52b549..f2fda8c3ad8 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-wrap3.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-wrap3.C
@@ -3,7 +3,7 @@
// { dg-require-alias "" }
// { dg-require-effective-target tls }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-final { scan-assembler "_ZTW1i" } }
// { dg-final { scan-assembler "_ZTH1i" } }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local-wrap4.C b/gcc/testsuite/g++.dg/tls/thread_local-wrap4.C
index 7c8481cc2cb..e0d66db34ea 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local-wrap4.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local-wrap4.C
@@ -3,7 +3,8 @@
// { dg-require-effective-target tls }
// { dg-require-effective-target fpic }
-// { dg-options "-std=c++11 -fPIC" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fPIC" }
// { dg-final { scan-assembler-not "_ZTW1i@PLT" { target i?86-*-* x86_64-*-* } } }
extern thread_local int i;
diff --git a/gcc/testsuite/g++.dg/tls/thread_local1.C b/gcc/testsuite/g++.dg/tls/thread_local1.C
index e7734a0badf..67bde5549de 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local1.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local1.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target tls }
// The variable should have a guard.
diff --git a/gcc/testsuite/g++.dg/tls/thread_local2.C b/gcc/testsuite/g++.dg/tls/thread_local2.C
index bb255de7a14..6b67466fc45 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local2.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local2.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local2g.C b/gcc/testsuite/g++.dg/tls/thread_local2g.C
index e84ef56e081..8304a4d2f93 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local2g.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local2g.C
@@ -1,5 +1,4 @@
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local6.C b/gcc/testsuite/g++.dg/tls/thread_local6.C
index 39dd6029eb9..378cf3d58c7 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local6.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local6.C
@@ -1,7 +1,6 @@
// Test for cleanups in the main thread without -pthread.
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local6g.C b/gcc/testsuite/g++.dg/tls/thread_local6g.C
index 70e97d3b259..f261d5419c7 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local6g.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local6g.C
@@ -1,7 +1,6 @@
// Test for cleanups in the main thread without -pthread.
-// { dg-do run }
-// { dg-options "-std=c++11" }
+// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }
// { dg-require-cxa-atexit "" }
diff --git a/gcc/testsuite/g++.dg/tls/thread_local7.C b/gcc/testsuite/g++.dg/tls/thread_local7.C
index f453b965768..3cb02dd51fc 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local7.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local7.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target tls }
// The reference temp should be TLS, not normal data.
diff --git a/gcc/testsuite/g++.dg/tls/thread_local7g.C b/gcc/testsuite/g++.dg/tls/thread_local7g.C
index 0fdfe7ef991..fb847ce4a06 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local7g.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local7g.C
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target tls }
// The reference temp should be TLS, not normal data.
diff --git a/gcc/testsuite/g++.dg/tls/thread_local8.C b/gcc/testsuite/g++.dg/tls/thread_local8.C
index 9b91a6b9a61..23f2a1b5eb4 100644
--- a/gcc/testsuite/g++.dg/tls/thread_local8.C
+++ b/gcc/testsuite/g++.dg/tls/thread_local8.C
@@ -1,5 +1,5 @@
// PR c++/55800
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
// { dg-require-alias "" }
// { dg-require-effective-target tls }
// { dg-final { scan-assembler "_ZTH12foo_instance" { target tls_native } } }
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-1.C b/gcc/testsuite/g++.dg/tm/noexcept-1.C
index 9b1a8c65ffe..887945af6b9 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-1.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-1.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -O -std=c++0x -fdump-tree-tmmark -fdump-tree-tmlower" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm -O -fdump-tree-tmmark -fdump-tree-tmlower" }
struct TrueFalse
{
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-2.C b/gcc/testsuite/g++.dg/tm/noexcept-2.C
index f9cbbb61235..d2282489e31 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-2.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -std=c++0x" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm" }
// All of these must fail, because they are not constant expressions.
template<typename T> int foo(int x, T t)
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-3.C b/gcc/testsuite/g++.dg/tm/noexcept-3.C
index 958290ef6a0..973b442cebc 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-3.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-3.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -O -std=c++0x -fdump-tree-tmmark -fdump-tree-tmlower" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm -O -fdump-tree-tmmark -fdump-tree-tmlower" }
// Same as noexcept-1.C but all noexcepts are false.
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-4.C b/gcc/testsuite/g++.dg/tm/noexcept-4.C
index 1166a159886..a7eb7ef933b 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-4.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-4.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -O -std=c++0x -fdump-tree-tmmark -fdump-tree-tmlower" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm -O -fdump-tree-tmmark -fdump-tree-tmlower" }
// Similar to noexcept-1.C but without an explicit (true) for noexcept.
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-5.C b/gcc/testsuite/g++.dg/tm/noexcept-5.C
index 44ef6177e6f..42674329170 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-5.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-5.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -O -std=c++0x -fdump-tree-tmmark -fdump-tree-tmlower" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm -O -fdump-tree-tmmark -fdump-tree-tmlower" }
int global;
diff --git a/gcc/testsuite/g++.dg/tm/noexcept-6.C b/gcc/testsuite/g++.dg/tm/noexcept-6.C
index 4391159e235..dd9845c093d 100644
--- a/gcc/testsuite/g++.dg/tm/noexcept-6.C
+++ b/gcc/testsuite/g++.dg/tm/noexcept-6.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fno-exceptions -fgnu-tm -O -std=c++0x -fdump-tree-tmlower" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fno-exceptions -fgnu-tm -O -fdump-tree-tmlower" }
struct TrueFalse
{
diff --git a/gcc/testsuite/g++.dg/tm/pr58516.C b/gcc/testsuite/g++.dg/tm/pr58516.C
index b1ada3c8c1d..131fa38269b 100644
--- a/gcc/testsuite/g++.dg/tm/pr58516.C
+++ b/gcc/testsuite/g++.dg/tm/pr58516.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -fgnu-tm" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm" }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/tm/pr58635-1.C b/gcc/testsuite/g++.dg/tm/pr58635-1.C
index 9287e1b8eec..b566b0c84eb 100644
--- a/gcc/testsuite/g++.dg/tm/pr58635-1.C
+++ b/gcc/testsuite/g++.dg/tm/pr58635-1.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -fgnu-tm" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm" }
int
foo (void)
diff --git a/gcc/testsuite/g++.dg/tm/pr58635-2.C b/gcc/testsuite/g++.dg/tm/pr58635-2.C
index 8a27bc45288..9380fe71f8a 100644
--- a/gcc/testsuite/g++.dg/tm/pr58635-2.C
+++ b/gcc/testsuite/g++.dg/tm/pr58635-2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++11 -fgnu-tm" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm" }
int
foo (void)
diff --git a/gcc/testsuite/g++.dg/tm/template-2.C b/gcc/testsuite/g++.dg/tm/template-2.C
index 53870246a58..09deb809bf5 100644
--- a/gcc/testsuite/g++.dg/tm/template-2.C
+++ b/gcc/testsuite/g++.dg/tm/template-2.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fgnu-tm -O -std=c++0x -fdump-tree-tmmark" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fgnu-tm -O -fdump-tree-tmmark" }
struct TrueFalse
{
diff --git a/gcc/testsuite/g++.dg/torture/pr40991.C b/gcc/testsuite/g++.dg/torture/pr40991.C
index c08124024a7..c04ef9e7ad9 100644
--- a/gcc/testsuite/g++.dg/torture/pr40991.C
+++ b/gcc/testsuite/g++.dg/torture/pr40991.C
@@ -1,4 +1,4 @@
-/* { dg-options "-std=gnu++0x" } */
+// { dg-do compile { target c++11 } }
typedef __SIZE_TYPE__ size_t;
namespace std __attribute__ ((__visibility__ ("default"))) {
diff --git a/gcc/testsuite/g++.dg/torture/pr47559.C b/gcc/testsuite/g++.dg/torture/pr47559.C
index 42dedee291c..00731c3ce62 100644
--- a/gcc/testsuite/g++.dg/torture/pr47559.C
+++ b/gcc/testsuite/g++.dg/torture/pr47559.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x -fnon-call-exceptions" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fnon-call-exceptions" }
void foo (int *k) noexcept
{
diff --git a/gcc/testsuite/g++.dg/torture/pr49770.C b/gcc/testsuite/g++.dg/torture/pr49770.C
index 7eac9e0d9bb..8180648cbe6 100644
--- a/gcc/testsuite/g++.dg/torture/pr49770.C
+++ b/gcc/testsuite/g++.dg/torture/pr49770.C
@@ -1,5 +1,5 @@
-/* { dg-do run } */
-/* { dg-options "-std=c++0x -fno-tree-forwprop" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-fno-tree-forwprop" } */
typedef __SIZE_TYPE__ size_t;
diff --git a/gcc/testsuite/g++.dg/torture/pr51198.C b/gcc/testsuite/g++.dg/torture/pr51198.C
index 65009ff5458..79819e04eaa 100644
--- a/gcc/testsuite/g++.dg/torture/pr51198.C
+++ b/gcc/testsuite/g++.dg/torture/pr51198.C
@@ -1,4 +1,4 @@
-/* { dg-options "-std=gnu++0x" } */
+// { dg-do compile { target c++11 } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/torture/pr53161.C b/gcc/testsuite/g++.dg/torture/pr53161.C
index 766f2942b3d..483556d9d8b 100644
--- a/gcc/testsuite/g++.dg/torture/pr53161.C
+++ b/gcc/testsuite/g++.dg/torture/pr53161.C
@@ -1,4 +1,4 @@
-/* { dg-options "-std=c++11" } */
+/* { dg-do compile { target c++11 } } */
void gg();
static __typeof(gg) __gthrw_gg __attribute__((__weakref__("gg")));
diff --git a/gcc/testsuite/g++.dg/torture/pr53602.C b/gcc/testsuite/g++.dg/torture/pr53602.C
index 1bb9cf4faaf..ab0f16fe2e9 100644
--- a/gcc/testsuite/g++.dg/torture/pr53602.C
+++ b/gcc/testsuite/g++.dg/torture/pr53602.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++11" }
+// { dg-do compile { target c++11 } }
namespace std
{
diff --git a/gcc/testsuite/g++.dg/torture/pr55260-1.C b/gcc/testsuite/g++.dg/torture/pr55260-1.C
index 552da8df262..dee5b603532 100644
--- a/gcc/testsuite/g++.dg/torture/pr55260-1.C
+++ b/gcc/testsuite/g++.dg/torture/pr55260-1.C
@@ -1,5 +1,5 @@
-/* { dg-do compile } */
-/* { dg-options "-std=gnu++0x -fno-inline" } */
+/* { dg-do compile { target c++11 } } */
+/* { dg-options "-fno-inline" } */
/* { dg-add-options bind_pic_locally } */
struct B
diff --git a/gcc/testsuite/g++.dg/torture/pr56768.C b/gcc/testsuite/g++.dg/torture/pr56768.C
index db504c500e0..93d292a9fd6 100644
--- a/gcc/testsuite/g++.dg/torture/pr56768.C
+++ b/gcc/testsuite/g++.dg/torture/pr56768.C
@@ -1,5 +1,4 @@
-// { dg-do compile }
-// { dg-options "-std=c++0x" }
+// { dg-do compile { target c++11 } }
struct Iter
{
diff --git a/gcc/testsuite/g++.dg/torture/pr59265.C b/gcc/testsuite/g++.dg/torture/pr59265.C
index 880c454da10..be4c6e1e8d2 100644
--- a/gcc/testsuite/g++.dg/torture/pr59265.C
+++ b/gcc/testsuite/g++.dg/torture/pr59265.C
@@ -1,5 +1,5 @@
-// { dg-do compile }
-// { dg-options "-fprofile-use -std=gnu++11" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-fprofile-use" }
class A {
int m_fn1() const;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-main.inc b/gcc/testsuite/g++.dg/torture/vshuf-main.inc
index 6c2310a4b85..697bd019733 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-main.inc
+++ b/gcc/testsuite/g++.dg/torture/vshuf-main.inc
@@ -1,7 +1,6 @@
/* Driver fragment for __builtin_shuffle of any vector shape. */
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
extern "C" void abort(void);
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v16hi.C b/gcc/testsuite/g++.dg/torture/vshuf-v16hi.C
index 6277068b859..501d9dacc0c 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v16hi.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v16hi.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
typedef unsigned short V __attribute__((vector_size(32)));
typedef V VI;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v16qi.C b/gcc/testsuite/g++.dg/torture/vshuf-v16qi.C
index 56801177583..1cc8bea0c28 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v16qi.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v16qi.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
typedef unsigned char V __attribute__((vector_size(16)));
typedef V VI;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v2df.C b/gcc/testsuite/g++.dg/torture/vshuf-v2df.C
index ba45078ea13..71a6ac4c340 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v2df.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v2df.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// // { dg-do run }
+// // { dg-do run { target c++11 } }
#if __SIZEOF_DOUBLE__ == 8 && __SIZEOF_LONG_LONG__ == 8
typedef double V __attribute__((vector_size(16)));
typedef unsigned long long VI __attribute__((vector_size(16)));
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v2di.C b/gcc/testsuite/g++.dg/torture/vshuf-v2di.C
index a4272842a36..dd521f2e49b 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v2di.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v2di.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// // { dg-do run }
+// // { dg-do run { target c++11 } }
#if __SIZEOF_LONG_LONG__ == 8
typedef unsigned long long V __attribute__((vector_size(16)));
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v2sf.C b/gcc/testsuite/g++.dg/torture/vshuf-v2sf.C
index dd229bac0c3..274dacdaec1 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v2sf.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v2sf.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// // { dg-do run }
+// // { dg-do run { target c++11 } }
#if __SIZEOF_FLOAT__ == 4
typedef float V __attribute__((vector_size(8)));
# if __SIZEOF_INT__ == 4
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v2si.C b/gcc/testsuite/g++.dg/torture/vshuf-v2si.C
index 2670855e092..36aeb82b766 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v2si.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v2si.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_INT__ == 4
typedef unsigned int V __attribute__((vector_size(8)));
typedef V VI;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v4df.C b/gcc/testsuite/g++.dg/torture/vshuf-v4df.C
index e26f2c9b30d..a1694b21ee7 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v4df.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v4df.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_DOUBLE__ == 8 && __SIZEOF_LONG_LONG__ == 8
typedef double V __attribute__((vector_size(32)));
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v4di.C b/gcc/testsuite/g++.dg/torture/vshuf-v4di.C
index 42cf60cfb31..8a5e5c507e8 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v4di.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v4di.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_LONG_LONG__ == 8
typedef unsigned long long V __attribute__((vector_size(32)));
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v4sf.C b/gcc/testsuite/g++.dg/torture/vshuf-v4sf.C
index c7d58434409..aa67dbbe618 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v4sf.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v4sf.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_FLOAT__ == 4
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v4si.C b/gcc/testsuite/g++.dg/torture/vshuf-v4si.C
index af37de78ba8..4d377c11425 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v4si.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v4si.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_INT__ == 4
typedef unsigned int V __attribute__((vector_size(16)));
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v8hi.C b/gcc/testsuite/g++.dg/torture/vshuf-v8hi.C
index 33b20c68a87..c2be87f5b29 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v8hi.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v8hi.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
typedef unsigned short V __attribute__((vector_size(16)));
typedef V VI;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v8qi.C b/gcc/testsuite/g++.dg/torture/vshuf-v8qi.C
index 868150963a6..5ec040e14e3 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v8qi.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v8qi.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
typedef unsigned char V __attribute__((vector_size(8)));
typedef V VI;
diff --git a/gcc/testsuite/g++.dg/torture/vshuf-v8si.C b/gcc/testsuite/g++.dg/torture/vshuf-v8si.C
index 8583aa20133..27631d77548 100644
--- a/gcc/testsuite/g++.dg/torture/vshuf-v8si.C
+++ b/gcc/testsuite/g++.dg/torture/vshuf-v8si.C
@@ -1,5 +1,4 @@
-// { dg-options "-std=c++11" }
-// { dg-do run }
+// { dg-do run { target c++11 } }
#if __SIZEOF_INT__ == 4
typedef unsigned int V __attribute__((vector_size(32)));
diff --git a/gcc/testsuite/g++.dg/tree-prof/pr59255.C b/gcc/testsuite/g++.dg/tree-prof/pr59255.C
index eb2b51f7e25..77f208a3a5f 100644
--- a/gcc/testsuite/g++.dg/tree-prof/pr59255.C
+++ b/gcc/testsuite/g++.dg/tree-prof/pr59255.C
@@ -1,5 +1,5 @@
// PR c++/59255
-// { dg-options "-O2 -std=c++11" }
+// { dg-options "-std=c++11 -O2" }
struct S
{
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr18178.C b/gcc/testsuite/g++.dg/tree-ssa/pr18178.C
index 9223e8323c0..a04807780bb 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/pr18178.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/pr18178.C
@@ -35,7 +35,7 @@ void doit (array *a)
{
for (ORIG i = 0; i < a->len; ++i)
{
- if (FIRST CAST (i) >= CAST (a->len))
+ if (FIRST CAST i >= CAST (a->len))
throw 5;
call (a->data[i]);
}
diff --git a/gcc/testsuite/g++.dg/ubsan/cxx11-shift-1.C b/gcc/testsuite/g++.dg/ubsan/cxx11-shift-1.C
index a5c0e330ab3..3e16892854a 100644
--- a/gcc/testsuite/g++.dg/ubsan/cxx11-shift-1.C
+++ b/gcc/testsuite/g++.dg/ubsan/cxx11-shift-1.C
@@ -1,5 +1,5 @@
-/* { dg-do run } */
-/* { dg-options "-fsanitize=shift -w -std=c++11" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-fsanitize=shift -w" } */
int
main (void)
diff --git a/gcc/testsuite/g++.dg/ubsan/cxx11-shift-2.C b/gcc/testsuite/g++.dg/ubsan/cxx11-shift-2.C
index fbc16dfd3d8..867908aef79 100644
--- a/gcc/testsuite/g++.dg/ubsan/cxx11-shift-2.C
+++ b/gcc/testsuite/g++.dg/ubsan/cxx11-shift-2.C
@@ -1,5 +1,5 @@
-/* { dg-do run } */
-/* { dg-options "-fsanitize=shift -w -std=c++11" } */
+/* { dg-do run { target c++11 } } */
+/* { dg-options "-fsanitize=shift -w" } */
int
main (void)
diff --git a/gcc/testsuite/g++.dg/ubsan/cxx1y-vla.C b/gcc/testsuite/g++.dg/ubsan/cxx1y-vla.C
index 7023c70cea0..ca1e922d69a 100644
--- a/gcc/testsuite/g++.dg/ubsan/cxx1y-vla.C
+++ b/gcc/testsuite/g++.dg/ubsan/cxx1y-vla.C
@@ -1,5 +1,5 @@
-/* { dg-do run } */
-/* { dg-options "-fsanitize=vla-bound -Wall -Wno-unused-variable -std=c++1y" } */
+/* { dg-do run { target c++1y } } */
+/* { dg-options "-fsanitize=vla-bound -Wall -Wno-unused-variable" } */
/* { dg-shouldfail "ubsan" } */
int
diff --git a/gcc/testsuite/g++.dg/warn/Wconversion-null-3.C b/gcc/testsuite/g++.dg/warn/Wconversion-null-3.C
index 644ae1c40da..a1f0cf71d48 100644
--- a/gcc/testsuite/g++.dg/warn/Wconversion-null-3.C
+++ b/gcc/testsuite/g++.dg/warn/Wconversion-null-3.C
@@ -1,5 +1,5 @@
// PR c++/48420
-// { dg-do compile { target c++98 } }
+// { dg-do compile { target { ! c++11 } } }
void foo(int* p);
diff --git a/gcc/testsuite/g++.dg/warn/Wdiv-by-zero-2.C b/gcc/testsuite/g++.dg/warn/Wdiv-by-zero-2.C
index d7e226ce0a5..675e9594b8e 100644
--- a/gcc/testsuite/g++.dg/warn/Wdiv-by-zero-2.C
+++ b/gcc/testsuite/g++.dg/warn/Wdiv-by-zero-2.C
@@ -1,6 +1,7 @@
// PR c++/56607
// { dg-do compile { target { { lp64 || ilp32 } || llp64 } } }
-// { dg-options "-O2 -Wdiv-by-zero -std=c++11" }
+// { dg-require-effective-target c++11 }
+// { dg-options "-O2 -Wdiv-by-zero" }
constexpr int sc () { return sizeof (char); }
constexpr int si () { return sizeof (int); }
diff --git a/gcc/testsuite/g++.dg/warn/Wsequence-point-2.C b/gcc/testsuite/g++.dg/warn/Wsequence-point-2.C
index ab9c97a8094..6e00e0233be 100644
--- a/gcc/testsuite/g++.dg/warn/Wsequence-point-2.C
+++ b/gcc/testsuite/g++.dg/warn/Wsequence-point-2.C
@@ -1,6 +1,6 @@
// PR c++/45894
-// { dg-do compile }
-// { dg-options "-std=c++0x -Wsequence-point" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wsequence-point" }
struct F
{
diff --git a/gcc/testsuite/g++.dg/warn/Wshadow-6.C b/gcc/testsuite/g++.dg/warn/Wshadow-6.C
index 78275743115..9c2e8b89460 100644
--- a/gcc/testsuite/g++.dg/warn/Wshadow-6.C
+++ b/gcc/testsuite/g++.dg/warn/Wshadow-6.C
@@ -1,7 +1,7 @@
// Test the declaration of nested lambda function shadows
// a parameter or previous local.
-// { dg-do compile }
-// { dg-options "-std=c++0x -Wshadow" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wshadow" }
struct S {};
int f1(int x) // { dg-message "shadowed declaration" }
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-var-19.C b/gcc/testsuite/g++.dg/warn/Wunused-var-19.C
index 4d26b368143..75fd1e3276d 100644
--- a/gcc/testsuite/g++.dg/warn/Wunused-var-19.C
+++ b/gcc/testsuite/g++.dg/warn/Wunused-var-19.C
@@ -1,6 +1,6 @@
// PR c++/55643
-// { dg-do compile }
-// { dg-options "-std=c++11 -Wunused" }
+// { dg-do compile { target c++11 } }
+// { dg-options "-Wunused" }
enum class E { e = 123 };
diff --git a/gcc/testsuite/g++.dg/warn/Wvla-2.C b/gcc/testsuite/g++.dg/warn/Wvla-2.C
index ba83ac1a9f2..df479d0b0bc 100644
--- a/gcc/testsuite/g++.dg/warn/Wvla-2.C
+++ b/gcc/testsuite/g++.dg/warn/Wvla-2.C
@@ -1,4 +1,4 @@
-/* { dg-do compile } */
+/* { dg-do compile { target { ! c++1y } } } */
/* { dg-options "-pedantic-errors -Wvla" } */
void func (int i)
diff --git a/gcc/testsuite/g++.dg/warn/delete-non-virtual-dtor.C b/gcc/testsuite/g++.dg/warn/delete-non-virtual-dtor.C
index c4acbde26a1..f5727ea90a0 100644
--- a/gcc/testsuite/g++.dg/warn/delete-non-virtual-dtor.C
+++ b/gcc/testsuite/g++.dg/warn/delete-non-virtual-dtor.C
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++0x -Wdelete-non-virtual-dtor" }
-// { dg-do compile }
+// { dg-options "-Wdelete-non-virtual-dtor" }
+// { dg-do compile { target c++11 } }
struct polyBase { virtual void f(); };
diff --git a/gcc/testsuite/g++.dg/warn/format8.C b/gcc/testsuite/g++.dg/warn/format8.C
index ffceb797a7d..16b223ef86f 100644
--- a/gcc/testsuite/g++.dg/warn/format8.C
+++ b/gcc/testsuite/g++.dg/warn/format8.C
@@ -3,5 +3,5 @@
extern "C" int printf (const char *, ...);
void f() {
- printf("%lf", 0.0); // { dg-warning "%lf" "" { target c++98 } }
+ printf("%lf", 0.0); // { dg-warning "%lf" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.dg/warn/pr13358-3.C b/gcc/testsuite/g++.dg/warn/pr13358-3.C
index f23e7d97e36..7ae0e236167 100644
--- a/gcc/testsuite/g++.dg/warn/pr13358-3.C
+++ b/gcc/testsuite/g++.dg/warn/pr13358-3.C
@@ -1,8 +1,8 @@
// PR c++/13358: g++ should accept a long long constant sans LL suffix
// if -Wno-long-long is in use
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target int32plus }
-// { dg-options "-std=c++0x -pedantic-errors" }
+// { dg-options "-pedantic-errors" }
void use_longlong ()
diff --git a/gcc/testsuite/g++.dg/warn/pr13358-4.C b/gcc/testsuite/g++.dg/warn/pr13358-4.C
index b9a59ca62c4..3aaeb8573e4 100644
--- a/gcc/testsuite/g++.dg/warn/pr13358-4.C
+++ b/gcc/testsuite/g++.dg/warn/pr13358-4.C
@@ -1,8 +1,8 @@
// PR c++/13358: g++ should accept a long long constant sans LL suffix
// if -Wno-long-long is in use.
-// { dg-do compile }
+// { dg-do compile { target c++11 } }
// { dg-require-effective-target int32plus }
-// { dg-options "-std=c++0x -pedantic-errors -Wlong-long" }
+// { dg-options "-pedantic-errors -Wlong-long" }
void use_longlong ()
diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C b/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C
index d41c26b4984..e900c9f7e08 100644
--- a/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C
+++ b/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
// prms-id: 12475
#include <limits.h>
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C
index 5fd31a6a2e8..c9ee80fc929 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
// GROUPS passed old-abort
typedef __SIZE_TYPE__ size_t;
typedef void (*RF_Ptr)(void *);
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C
index 544d59bf496..f67602d29d9 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C
@@ -5,7 +5,7 @@
class Thing
{
public:
- typedef enum { GOOD_THING, BAD_THING, } ThingType ; // { dg-error "" "comma" { target c++98 } }
+ typedef enum { GOOD_THING, BAD_THING, } ThingType ; // { dg-error "" "comma" { target { ! c++11 } } }
Thing (ThingType type) : thingType (type) { }
~Thing () { }
private:
@@ -15,7 +15,7 @@ private:
class Group
{
public:
- typedef enum { THIS_GROUP, THAT_GROUP, } GroupType ; // { dg-error "" "comma" { target c++98 } }
+ typedef enum { THIS_GROUP, THAT_GROUP, } GroupType ; // { dg-error "" "comma" { target { ! c++11 } } }
Group (GroupType type) : groupType (type), groupCount (0) { }
~Group () { }
void append (Thing* const &entry) { groupCount ++ ; }
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C
index 9c105609ec3..fda718b4f7e 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C
@@ -6,7 +6,7 @@ class X
{
oneMask = 0x0000FFFF,
twoMask = 0x000F0000,
- thiMask = 0xFFF00000, // { dg-error "comma at end" "" { target c++98 } }
+ thiMask = 0xFFF00000, // { dg-error "comma at end" "" { target { ! c++11 } } }
};
unsigned int foo;
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C
index bbdda4bfe2b..c48398ef87c 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C
@@ -6,7 +6,7 @@ class foo1
enum foo1_enum
{
ENUM1,
- ENUM2, // { dg-error "comma at end" "" { target c++98 } }
+ ENUM2, // { dg-error "comma at end" "" { target { ! c++11 } } }
};
};
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C
index d8a7d1bd47a..6eb94dab2b9 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C
@@ -2,7 +2,7 @@
// GROUPS passed enums
enum fig {
figgy,
- pudding, // { dg-error "comma at end" "" { target c++98 } }
+ pudding, // { dg-error "comma at end" "" { target { ! c++11 } } }
};
class X {
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C b/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C
index 209ea8c0e06..d49629e2b1f 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C
@@ -5,7 +5,7 @@ class B {
friend class A;
enum {
- bEnum = 1, // { dg-error "comma at end" "" { target c++98 } }
+ bEnum = 1, // { dg-error "comma at end" "" { target { ! c++11 } } }
};
int bArray[ bEnum ];
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init2.C b/gcc/testsuite/g++.old-deja/g++.brendan/init2.C
index 1b376dc7802..1f21f34666a 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/init2.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/init2.C
@@ -2,4 +2,4 @@
// GROUPS passed initialization
// this should give an error in require_required_type about not
// being allowed to have an initializer list in an argument list.
-int f(int a = {1});// { dg-error "" "" { target c++98 } }
+int f(int a = {1});// { dg-error "" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init4.C b/gcc/testsuite/g++.old-deja/g++.brendan/init4.C
index d3d1ffd2247..7d82d941419 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/init4.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/init4.C
@@ -2,4 +2,4 @@
// GROUPS passed initialization
struct CharList { int i; };
-const CharList& terminals = { 1 }; // { dg-error "initializer lists" "" { target c++98 } }
+const CharList& terminals = { 1 }; // { dg-error "initializer lists" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C
index ea6ce4c74c7..c4229a130e9 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C
@@ -4,7 +4,7 @@ class X {
public:
enum e {
New // { dg-message "previous" }
- , // { dg-error "comma at end" "" { target c++98 } }
+ , // { dg-error "comma at end" "" { target { ! c++11 } } }
};
static int New(int); // { dg-error "conflicts with a previous" }
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cond.C b/gcc/testsuite/g++.old-deja/g++.jason/cond.C
index 605500e784a..e0ae2b8ea19 100644
--- a/gcc/testsuite/g++.old-deja/g++.jason/cond.C
+++ b/gcc/testsuite/g++.old-deja/g++.jason/cond.C
@@ -51,7 +51,7 @@ int main()
// { dg-error "is initialized like a variable" "var" { target *-*-* } 50 }
;
- if (int a[2] = {1, 2}) // { dg-error "extended init" "" { target c++98 } }
+ if (int a[2] = {1, 2}) // { dg-error "extended init" "" { target { ! c++11 } } }
;
}
diff --git a/gcc/testsuite/g++.old-deja/g++.law/init1.C b/gcc/testsuite/g++.old-deja/g++.law/init1.C
index 3cce388f292..bdcc49434a4 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/init1.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/init1.C
@@ -9,12 +9,12 @@ public:
class bar {
public:
- foo f[3] = { 1, 2, 3 }; // works: f[0] = 1, f[1] = 2, f[2] = 3 // { dg-error "" "" { target c++98 } } ANSI C++ forbids initialization of member f;
+ foo f[3] = { 1, 2, 3 }; // works: f[0] = 1, f[1] = 2, f[2] = 3 // { dg-error "" "" { target { ! c++11 } } } ANSI C++ forbids initialization of member f;
};
class bar2 {
public:
- foo f[3] = { foo(1), foo(2), foo(3) }; // { dg-error "" "" { target c++98 } } ANSI C++ forbids initialization of member f;
+ foo f[3] = { foo(1), foo(2), foo(3) }; // { dg-error "" "" { target { ! c++11 } } } ANSI C++ forbids initialization of member f;
// does not compile -- error: field initializer is not constant
};
diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators32.C b/gcc/testsuite/g++.old-deja/g++.law/operators32.C
index 9e1a35664f2..991e38ddbc4 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/operators32.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/operators32.C
@@ -49,7 +49,7 @@ foo() {std::cout << "foo created" << std::endl; }
};
foo **f2;
-allocate2d(d1, d2, f2);// { dg-error "" "" { target c++98 } }
-ffree(d1, f2);// { dg-error "" "" { target c++98 } }
+allocate2d(d1, d2, f2);// { dg-error "" "" { target { ! c++11 } } }
+ffree(d1, f2);// { dg-error "" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon9.C b/gcc/testsuite/g++.old-deja/g++.other/anon9.C
index acb4f460608..e4abad2546d 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/anon9.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/anon9.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
// Test that we properly diagnose an attempt to use an anonymous class
// in declaring an external function.
diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage1.C b/gcc/testsuite/g++.old-deja/g++.other/linkage1.C
index 2fa2dec04b7..8d9044544b3 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/linkage1.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/linkage1.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
typedef struct {
int i;
} *p;
diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage2.C b/gcc/testsuite/g++.old-deja/g++.other/linkage2.C
index 974cd639668..84756a1a602 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/linkage2.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/linkage2.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
// From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de>
extern "C"
{
diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage4.C b/gcc/testsuite/g++.old-deja/g++.other/linkage4.C
index 450733fab34..c872057cd28 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/linkage4.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/linkage4.C
@@ -8,4 +8,4 @@ void f () {}
// Check that the strlen declaration here is given internal linkage by
// using it as a non-type template argument, and expecting an error.
-template void f<strlen>(); // { dg-error "" "" { target c++98 } } no matching template
+template void f<strlen>(); // { dg-error "" "" { target { ! c++11 } } } no matching template
diff --git a/gcc/testsuite/g++.old-deja/g++.other/using3.C b/gcc/testsuite/g++.old-deja/g++.other/using3.C
index 3df78f09691..3a034937d03 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/using3.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/using3.C
@@ -8,5 +8,5 @@ typedef struct {
} S;
struct B: S{
- using S::S; // { dg-error "" "" { target c++98 } } no such field
+ using S::S; // { dg-error "" "" { target { ! c++11 } } } no such field
};
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum6.C b/gcc/testsuite/g++.old-deja/g++.pt/enum6.C
index 48bdbb0ca52..20be9bb7076 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/enum6.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/enum6.C
@@ -8,7 +8,7 @@ void fn(T)
{
enum tern { H, L, X, U };
- vector<tern> ternvec; // { dg-error "" "" { target c++98 } } composed from a local type
+ vector<tern> ternvec; // { dg-error "" "" { target { ! c++11 } } } composed from a local type
}
template void fn(int);
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C
index 1f53a757cb8..6c535fc42f0 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C
@@ -18,7 +18,7 @@ template int S<int>::t; // { dg-error "duplicate explicit instantiation" }
template class S<double>;
template class S<double>; // { dg-error "duplicate explicit instantiation" }
-extern template void f(double); // { dg-error "extern" "" { target c++98 } }
+extern template void f(double); // { dg-error "extern" "" { target { ! c++11 } } }
inline template class S<float>; // { dg-error "inline" } inline not allowed
template <class T>
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C
index 51a66fd4116..273bcabb85a 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C
@@ -12,4 +12,4 @@ public:
template<template<class> class>
class Y {
};
-Q::template X<int> x; // { dg-error "template" "" { target c++98 } }
+Q::template X<int> x; // { dg-error "template" "" { target { ! c++11 } } }
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload13.C b/gcc/testsuite/g++.old-deja/g++.pt/overload13.C
index 9c985141fd8..1ceb99f14e4 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/overload13.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/overload13.C
@@ -7,5 +7,5 @@ struct A {
int main ()
{
A a;
- return a.template f (0); // { dg-error "template" "" { target c++98 } }
+ return a.template f (0); // { dg-error "template" "" { target { ! c++11 } } }
}
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C
index 9a537133c4f..9f4bbe43f89 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C
@@ -27,8 +27,8 @@ int main() {
h<(int A::*) &A::i>(); // { dg-error "" "" { xfail c++11 } }
g<(void (A::*)()) &B::f>(); // { dg-error "" "" { xfail { c++11 && { aarch64*-*-* arm*-*-* mips*-*-* } } } }
h<(int A::*) &B::j>(); // { dg-error "" }
- g<(void (A::*)()) 0>(); // { dg-error "" "" { target c++98 } }
- h<(int A::*) 0>(); // { dg-error "" "" { target c++98 } }
+ g<(void (A::*)()) 0>(); // { dg-error "" "" { target { ! c++11 } } }
+ h<(int A::*) 0>(); // { dg-error "" "" { target { ! c++11 } } }
return 0;
}
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t29.C b/gcc/testsuite/g++.old-deja/g++.pt/t29.C
index f664f5402ba..41a034802e5 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/t29.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/t29.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
template <class X, int n> X f (auto X (*x)[n]) { return (*x)[n/2]; }
extern int i[30];
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t30.C b/gcc/testsuite/g++.old-deja/g++.pt/t30.C
index b0c4f2fbde4..fb455943581 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/t30.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/t30.C
@@ -1,4 +1,4 @@
-// { dg-do assemble { target c++98 } }
+// { dg-do assemble { target { ! c++11 } } }
template <class X, int n> X f (auto X (*x)[n]) { return (*x)[n/2]; }
extern int i[30], i2[33];
diff --git a/gcc/testsuite/lib/g++-dg.exp b/gcc/testsuite/lib/g++-dg.exp
index f8e92e62fc1..24542c8017b 100644
--- a/gcc/testsuite/lib/g++-dg.exp
+++ b/gcc/testsuite/lib/g++-dg.exp
@@ -43,9 +43,9 @@ proc g++-dg-runtest { testcases default-extra-flags } {
# if there's a dg-options line.
if ![search_for $test "-std=*++"] {
if [search_for $test "dg-options"] {
- set option_list { -std=gnu++98 -std=gnu++11 }
+ set option_list { -std=gnu++98 -std=gnu++11 -std=gnu++1y }
} else {
- set option_list { -std=c++98 -std=c++11 }
+ set option_list { -std=c++98 -std=c++11 -std=c++1y }
}
} else {
set option_list { "" }
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 2addae86d48..bee8471337a 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -5456,29 +5456,44 @@ proc check_effective_target_c++ { } {
return 0
}
-# Check which language standard is active by checking for the presence of
-# one of the C++11 -std flags. This assumes that the default for the
-# compiler is C++98, and that there will never be multiple -std= arguments
-# on the command line.
-proc check_effective_target_c++11 { } {
+# Check whether the current active language standard supports the features
+# of C++11/C++1y by checking for the presence of one of the -std
+# flags. This assumes that the default for the compiler is C++98, and that
+# there will never be multiple -std= arguments on the command line.
+proc check_effective_target_c++11_only { } {
if ![check_effective_target_c++] {
return 0
}
return [check-flags { { } { } { -std=c++0x -std=gnu++0x -std=c++11 -std=gnu++11 } }]
}
+proc check_effective_target_c++11 { } {
+ if [check_effective_target_c++11_only] {
+ return 1
+ }
+ return [check_effective_target_c++1y]
+}
+proc check_effective_target_c++11_down { } {
+ if ![check_effective_target_c++] {
+ return 0
+ }
+ return ![check_effective_target_c++1y]
+}
-proc check_effective_target_c++1y { } {
+proc check_effective_target_c++1y_only { } {
if ![check_effective_target_c++] {
return 0
}
- return [check-flags { { } { } { -std=c++1y -std=gnu++1y } }]
+ return [check-flags { { } { } { -std=c++1y -std=gnu++1y -std=c++14 -std=gnu++14 } }]
+}
+proc check_effective_target_c++1y { } {
+ return [check_effective_target_c++1y_only]
}
-proc check_effective_target_c++98 { } {
+proc check_effective_target_c++98_only { } {
if ![check_effective_target_c++] {
return 0
}
- return [check-flags { { } { } { } { -std=c++0x -std=gnu++0x -std=c++11 -std=gnu++11 -std=c++1y -std=gnu++1y } }]
+ return ![check_effective_target_c++11]
}
# Return 1 if expensive testcases should be run.
OpenPOWER on IntegriCloud