]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* doc/invoke.texi: Document -std=c++17 and -std=gnu++17 and document
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 15 Sep 2017 16:15:46 +0000 (16:15 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 15 Sep 2017 16:15:46 +0000 (16:15 +0000)
c++1z and gnu++1z as deprecated.  Change other references to
-std=c++1z to -std=c++17 and -std=gnu++1z to -std=gnu++17.
Change -Wc++1z-compat to -Wc++17-compat.
* doc/cpp.texi: Document -std=c++17 defines __cplusplus 201703L.
* dwarf2out.c (highest_c_language): Handle C++17.
(gen_compile_unit_die): Likewise.
c-family/
* c.opt (Wc++1z-compat): Change from option to undocumented alias.
(Wc++17-compat): Change from undocumented alias to option.
(Wnoexcept-type): Enable by Wc++17-compat instead of Wc++1z-compat,
change C++1z to C++17 in description.
(std=c++1z, std=gnu++1z): Change from option to undocumented
deprecated alias.
(std=c++17, std=gnu++17): Change from undocumented alias to option.
Adjust description.
* c-common.h (enum cxx_dialect): Rename cxx1z to cxx17.
* c-opts.c (set_std_cxx1z): Rename to ...
(set_std_cxx17): ... this.
(c_common_handle_option): Rename OPT_std_c__1z to OPT_std_c__17
and OPT_std_gnu__1z to OPT_std_gnu__17.  Adjust set_std_cxx1z
caller.
(c_common_post_options): Use cxx17 instead of cxx1z.  Adjust
comments.
cp/
* decl.c (redeclaration_error_message): Use cxx17 instead of cxx1z,
adjust diagnostics refering to C++1z or -std=gnu++1z or -std=c++1z
to C++17 or -std=gnu++17 or -std=c++17.  Adjust comments.
(cxx_init_decl_processing, next_initializable_field,
is_direct_enum_init, check_initializer, cp_finish_decl,
mark_inline_variable, grokdeclarator, grokparms, xref_basetypes,
finish_function): Likewise.
* cp-tree.h (DECL_INLINE_VAR_P): Likewise.
* pt.c (mark_template_parm, convert_nontype_argument,
instantiate_class_template_1, type_unification_real, unify,
get_partial_spec_bindings, dependent_type_p_r): Likewise.
* typeck.c (cp_build_unary_op): Likewise.
* constexpr.c (var_in_maybe_constexpr_fn): Likewise.
* call.c (build_user_type_conversion_1, build_over_call,
build_special_member_call): Likewise.
* lambda.c (begin_lambda_type): Likewise.
* typeck2.c (process_init_constructor_record): Likewise.
* class.c (build_base_field, finalize_literal_type_property,
explain_non_literal_class): Likewise.
* parser.c (cp_parser_diagnose_invalid_type_name,
cp_parser_primary_expression, cp_parser_lambda_introducer,
cp_parser_lambda_declarator_opt, cp_parser_selection_statement,
cp_convert_range_for, cp_parser_perform_range_for_lookup,
cp_parser_decomposition_declaration, cp_parser_linkage_specification,
cp_parser_static_assert, cp_parser_simple_type_specifier,
cp_parser_namespace_definition, cp_parser_using_declaration,
cp_parser_init_declarator, cp_parser_type_parameter_key,
cp_parser_exception_specification_opt, cp_parser_std_attribute_spec,
cp_parser_constructor_declarator_p): Likewise.
* mangle.c (struct globals): Rename need_cxx1z_warning to
need_cxx17_warning.
(write_exception_spec, start_mangling, mangle_decl): Likewise.
* Make-lang.in (check-c++1z): Rename to check-c++17, depend on
it.
(check-c++17): New goal.  Use 17 instead of 1z.
(check-c++-all): Use 17 instead of 1z.
testsuite/
* lib/g++-dg.exp (g++-dg-runtest): Use 17 instead of 1z.
* lib/target-supports.exp (check_effective_target_c++14): Use
check_effective_target_c++17 instead of check_effective_target_c++1z.
(check_effective_target_c++14_down): Likewise.
(check_effective_target_c++1z_only): Rename to ...
(check_effective_target_c++17_only): ... this.
(check_effective_target_c++1z): Rename to ...
(check_effective_target_c++17): ... this.
* g++.dg/debug/dwarf2/inline-var-1.C: Use -std=c++17 or -std=gnu++17
instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead of c++1z
and c++17_only instead of c++1z_only.  Adjust expected diagnostics
and comments refering to 1z to 17.
* g++.dg/debug/dwarf2/inline-var-2.C: Likewise.
* g++.dg/template/partial5.C: Likewise.
* g++.dg/template/nontype8.C: Likewise.
* g++.dg/cpp1z/noexcept-type5.C: Likewise.
* g++.dg/cpp1z/nontype3a.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda4.C: Likewise.
* g++.dg/cpp1z/noexcept-type16.C: Likewise.
* g++.dg/cpp1z/class-deduction32.C: Likewise.
* g++.dg/cpp1z/pr78771.C: Likewise.
* g++.dg/cpp1z/elide1.C: Likewise.
* g++.dg/cpp1z/fold3.C: Likewise.
* g++.dg/cpp1z/class-deduction2.C: Likewise.
* g++.dg/cpp1z/noexcept-type12.C: Likewise.
* g++.dg/cpp1z/inline-var2.C: Likewise.
* g++.dg/cpp1z/eval-order2.C: Likewise.
* g++.dg/cpp1z/decomp21.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda11.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda9.C: Likewise.
* g++.dg/cpp1z/utf8-neg.C: Likewise.
* g++.dg/cpp1z/class-deduction41.C: Likewise.
* g++.dg/cpp1z/class-deduction23.C: Likewise.
* g++.dg/cpp1z/nodiscard3.C: Likewise.
* g++.dg/cpp1z/static_assert-nomsg.C: Likewise.
* g++.dg/cpp1z/noexcept-type9.C: Likewise.
* g++.dg/cpp1z/class-deduction21.C: Likewise.
* g++.dg/cpp1z/range-for1.C: Likewise.
* g++.dg/cpp1z/init-statement4.C: Likewise.
* g++.dg/cpp1z/udlit-utf8char.C: Likewise.
* g++.dg/cpp1z/decomp30.C: Likewise.
* g++.dg/cpp1z/class-deduction39.C: Likewise.
* g++.dg/cpp1z/register2.C: Likewise.
* g++.dg/cpp1z/decomp9.C: Likewise.
* g++.dg/cpp1z/regress1.C: Likewise.
* g++.dg/cpp1z/direct-enum-init1.C: Likewise.
* g++.dg/cpp1z/class-deduction30.C: Likewise.
* g++.dg/cpp1z/abbrev2.C: Likewise.
* g++.dg/cpp1z/nontype-auto6.C: Likewise.
* g++.dg/cpp1z/regress2.C: Likewise.
* g++.dg/cpp1z/decomp16.C: Likewise.
* g++.dg/cpp1z/bool-increment1.C: Likewise.
* g++.dg/cpp1z/aligned-new1.C: Likewise.
* g++.dg/cpp1z/decomp3.C: Likewise.
* g++.dg/cpp1z/register1.C: Likewise.
* g++.dg/cpp1z/namespace-attribs.C: Likewise.
* g++.dg/cpp1z/class-deduction1.C: Likewise.
* g++.dg/cpp1z/decomp10.C: Likewise.
* g++.dg/cpp1z/constexpr-if11.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda10.C: Likewise.
* g++.dg/cpp1z/decomp27.C: Likewise.
* g++.dg/cpp1z/noexcept-type2.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda6.C: Likewise.
* g++.dg/cpp1z/class-deduction9.C: Likewise.
* g++.dg/cpp1z/attributes-enum-1.C: Likewise.
* g++.dg/cpp1z/decomp11.C: Likewise.
* g++.dg/cpp1z/aligned-new3.C: Likewise.
* g++.dg/cpp1z/utf8-2.C: Likewise.
* g++.dg/cpp1z/lambda-this3.C: Likewise.
* g++.dg/cpp1z/decomp-constexpr1.C: Likewise.
* g++.dg/cpp1z/byte1.C: Likewise.
* g++.dg/cpp1z/nontype-auto9.C: Likewise.
* g++.dg/cpp1z/aggr-base4.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda1.C: Likewise.
* g++.dg/cpp1z/nontype-auto3.C: Likewise.
* g++.dg/cpp1z/utf8-2a.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda7.C: Likewise.
* g++.dg/cpp1z/aggr-base6.C: Likewise.
* g++.dg/cpp1z/cplusplus.C: Likewise.
* g++.dg/cpp1z/class-deduction20.C: Likewise.
* g++.dg/cpp1z/aggr-base2.C: Likewise.
* g++.dg/cpp1z/class-deduction6.C: Likewise.
* g++.dg/cpp1z/noexcept-type3.C: Likewise.
* g++.dg/cpp1z/class-deduction31.C: Likewise.
* g++.dg/cpp1z/class-deduction25.C: Likewise.
* g++.dg/cpp1z/class-deduction18.C: Likewise.
* g++.dg/cpp1z/fold9.C: Likewise.
* g++.dg/cpp1z/noexcept-type8.C: Likewise.
* g++.dg/cpp1z/abbrev1.C: Likewise.
* g++.dg/cpp1z/constexpr-if10.C: Likewise.
* g++.dg/cpp1z/utf8.C: Likewise.
* g++.dg/cpp1z/noexcept-type7.C: Likewise.
* g++.dg/cpp1z/aggr-base3.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda8.C: Likewise.
* g++.dg/cpp1z/init-statement2.C: Likewise.
* g++.dg/cpp1z/nontype-auto4.C: Likewise.
* g++.dg/cpp1z/constexpr-if12.C: Likewise.
* g++.dg/cpp1z/class-deduction40.C: Likewise.
* g++.dg/cpp1z/nontype3.C: Likewise.
* g++.dg/cpp1z/class-deduction14.C: Likewise.
* g++.dg/cpp1z/fold7.C: Likewise.
* g++.dg/cpp1z/nontype2.C: Likewise.
* g++.dg/cpp1z/class-deduction15.C: Likewise.
* g++.dg/cpp1z/nested-namespace-def1.C: Likewise.
* g++.dg/cpp1z/class-deduction13.C: Likewise.
* g++.dg/cpp1z/aligned-new7.C: Likewise.
* g++.dg/cpp1z/noexcept-type1.C: Likewise.
* g++.dg/cpp1z/nontype1.C: Likewise.
* g++.dg/cpp1z/init-statement5.C: Likewise.
* g++.dg/cpp1z/nontype-auto2.C: Likewise.
* g++.dg/cpp1z/decomp17.C: Likewise.
* g++.dg/cpp1z/fold4.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda2.C: Likewise.
* g++.dg/cpp1z/fold7a.C: Likewise.
* g++.dg/cpp1z/nontype-auto5.C: Likewise.
* g++.dg/cpp1z/init-statement7.C: Likewise.
* g++.dg/cpp1z/aggr-base5.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda5.C: Likewise.
* g++.dg/cpp1z/pr79143.C: Likewise.
* g++.dg/cpp1z/class-deduction38.C: Likewise.
* g++.dg/cpp1z/nontype-auto8.C: Likewise.
* g++.dg/cpp1z/class-deduction12.C: Likewise.
* g++.dg/cpp1z/decomp20.C: Likewise.
* g++.dg/cpp1z/class-deduction22.C: Likewise.
* g++.dg/cpp1z/class-deduction29.C: Likewise.
* g++.dg/cpp1z/class-deduction8.C: Likewise.
* g++.dg/cpp1z/class-deduction43.C: Likewise.
* g++.dg/cpp1z/feat-cxx1z.C: Likewise.
* g++.dg/cpp1z/fold8.C: Likewise.
* g++.dg/cpp1z/init-statement3.C: Likewise.
* g++.dg/cpp1z/nontype-auto10.C: Likewise.
* g++.dg/cpp1z/class-deduction36.C: Likewise.
* g++.dg/cpp1z/noexcept-type17.C: Likewise.
* g++.dg/cpp1z/fallthrough1.C: Likewise.
* g++.dg/cpp1z/fold1.C: Likewise.
* g++.dg/cpp1z/class-deduction26.C: Likewise.
* g++.dg/cpp1z/fold-ice1.C: Likewise.
* g++.dg/cpp1z/fold5.C: Likewise.
* g++.dg/cpp1z/class-deduction34.C: Likewise.
* g++.dg/cpp1z/noexcept-type6.C: Likewise.
* g++.dg/cpp1z/class-deduction7.C: Likewise.
* g++.dg/cpp1z/class-deduction16.C: Likewise.
* g++.dg/cpp1z/class-deduction10.C: Likewise.
* g++.dg/cpp1z/eval-order3.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda13.C: Likewise.
* g++.dg/cpp1z/aggr-base2a.C: Likewise.
* g++.dg/cpp1z/nontype-auto1.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda3.C: Likewise.
* g++.dg/cpp1z/nontype-auto7.C: Likewise.
* g++.dg/cpp1z/decomp15.C: Likewise.
* g++.dg/cpp1z/noexcept-type4.C: Likewise.
* g++.dg/cpp1z/fold-mangle.C: Likewise.
* g++.dg/cpp1z/class-deduction35.C: Likewise.
* g++.dg/cpp1z/decomp4.C: Likewise.
* g++.dg/cpp1z/class-deduction42.C: Likewise.
* g++.dg/cpp1z/init-statement8.C: Likewise.
* g++.dg/cpp1z/inline-var1a.C: Likewise.
* g++.dg/cpp1z/init-statement6.C: Likewise.
* g++.dg/cpp1z/class-deduction17.C: Likewise.
* g++.dg/cpp1z/class-deduction28.C: Likewise.
* g++.dg/cpp1z/class-deduction27.C: Likewise.
* g++.dg/cpp1z/decomp-bitfield1.C: Likewise.
* g++.dg/cpp1z/attributes-enum-1a.C: Likewise.
* g++.dg/cpp1z/class-deduction11.C: Likewise.
* g++.dg/cpp1z/constexpr-lambda12.C: Likewise.
* g++.dg/cpp1z/init-statement9.C: Likewise.
* g++.dg/cpp1z/class-deduction19.C: Likewise.
* g++.dg/cpp1z/class-deduction5.C: Likewise.
* g++.dg/cpp1z/fold2.C: Likewise.
* g++.dg/cpp1z/class-deduction33.C: Likewise.
* g++.dg/cpp1z/class-deduction24.C: Likewise.
* g++.dg/cpp1z/aggr-base1.C: Likewise.
* g++.dg/cpp1z/fold6.C: Likewise.
* g++.dg/cpp1z/decomp12.C: Likewise.
* g++.dg/cpp1z/class-deduction4.C: Likewise.
* g++.dg/cpp1z/inline-var1.C: Likewise.
* g++.dg/cpp1z/aligned-new2.C: Likewise.
* g++.dg/cpp1z/class-deduction3.C: Likewise.
* g++.dg/other/error3.C: Likewise.
* g++.dg/init/new25.C: Likewise.
* g++.dg/init/new13.C: Likewise.
* g++.dg/tls/diag-2.C: Likewise.
* g++.dg/tls/diag-4.C: Likewise.
* g++.dg/opt/noreturn-1.C: Likewise.
* g++.dg/eh/async-unwind2.C: Likewise.
* g++.dg/eh/spec9.C: Likewise.
* g++.dg/eh/spec7.C: Likewise.
* g++.dg/eh/template1.C: Likewise.
* g++.dg/eh/cond4.C: Likewise.
* g++.dg/eh/pr41819.C: Likewise.
* g++.dg/eh/delete1.C: Likewise.
* g++.dg/eh/spec3.C: Likewise.
* g++.dg/eh/forced4.C: Likewise.
* g++.dg/eh/spec2.C: Likewise.
* g++.dg/eh/shadow1.C: Likewise.
* g++.dg/eh/pr38662.C: Likewise.
* g++.dg/eh/ehopt1.C: Likewise.
* g++.dg/eh/spec8.C: Likewise.
* g++.dg/eh/init-temp2.C: Likewise.
* g++.dg/rtti/crash3.C: Likewise.
* g++.dg/warn/Wreturn-type-3.C: Likewise.
* g++.dg/warn/register-parm-1.C: Likewise.
* g++.dg/warn/register-var-2.C: Likewise.
* g++.dg/gcov/gcov-7.C: Likewise.
* g++.dg/tree-ssa/pr45605.C: Likewise.
* g++.dg/cpp/pr23827_cxx98_neg.C: Likewise.
* g++.dg/lookup/exception1.C: Likewise.
* g++.dg/ubsan/pr79589.C: Likewise.
* g++.dg/tm/pr47340.C: Likewise.
* g++.dg/tm/pr46567.C: Likewise.
* g++.dg/expr/bitfield5.C: Likewise.
* g++.dg/expr/bool1.C: Likewise.
* g++.dg/expr/lval3.C: Likewise.
* g++.dg/expr/lval4.C: Likewise.
* g++.dg/expr/bitfield4.C: Likewise.
* g++.dg/expr/bitfield6.C: Likewise.
* g++.dg/expr/bool3.C: Likewise.
* g++.dg/ext/has_nothrow_constructor.C: Likewise.
* g++.dg/ext/has_nothrow_copy-7.C: Likewise.
* g++.dg/ext/has_nothrow_copy-1.C: Likewise.
* g++.dg/ext/has_nothrow_copy-2.C: Likewise.
* g++.dg/ext/has_nothrow_copy-4.C: Likewise.
* g++.dg/ext/has_nothrow_copy-5.C: Likewise.
* g++.dg/ext/has_nothrow_copy-6.C: Likewise.
* g++.dg/ext/has_nothrow_assign.C: Likewise.
* g++.dg/parse/register1.C: Likewise.
* g++.dg/parse/error15.C: Likewise.
* g++.dg/parse/linkage2.C: Likewise.
* g++.dg/concepts/intro2.C: Likewise.
* g++.dg/concepts/class.C: Likewise.
* g++.dg/concepts/traits1.C: Likewise.
* g++.dg/concepts/req5.C: Likewise.
* g++.dg/concepts/var-concept5.C: Likewise.
* g++.dg/concepts/fn-concept2.C: Likewise.
* g++.dg/concepts/traits2.C: Likewise.
* g++.dg/concepts/placeholder2.C: Likewise.
* g++.dg/concepts/class6.C: Likewise.
* g++.dg/concepts/memtmpl1.C: Likewise.
* g++.dg/concepts/friend2.C: Likewise.
* g++.dg/concepts/template-parm3.C: Likewise.
* g++.dg/concepts/template-parm10.C: Likewise.
* g++.dg/concepts/explicit-spec1.C: Likewise.
* g++.dg/concepts/explicit-spec3.C: Likewise.
* g++.dg/concepts/var-templ2.C: Likewise.
* g++.dg/concepts/intro5.C: Likewise.
* g++.dg/concepts/deduction-constraint1.C: Likewise.
* g++.dg/concepts/iconv1.C: Likewise.
* g++.dg/concepts/constrained-parm.C: Likewise.
* g++.dg/concepts/template-template-parm1.C: Likewise.
* g++.dg/concepts/var-concept3.C: Likewise.
* g++.dg/concepts/class3.C: Likewise.
* g++.dg/concepts/memfun2.C: Likewise.
* g++.dg/concepts/req1.C: Likewise.
* g++.dg/concepts/disjunction1.C: Likewise.
* g++.dg/concepts/req17.C: Likewise.
* g++.dg/concepts/pr65848.C: Likewise.
* g++.dg/concepts/placeholder4.C: Likewise.
* g++.dg/concepts/decl-diagnose.C: Likewise.
* g++.dg/concepts/intro7.C: Likewise.
* g++.dg/concepts/pr68683.C: Likewise.
* g++.dg/concepts/partial-spec4.C: Likewise.
* g++.dg/concepts/template-parm5.C: Likewise.
* g++.dg/concepts/explicit-inst1.C: Likewise.
* g++.dg/concepts/class-deduction1.C: Likewise.
* g++.dg/concepts/class1.C: Likewise.
* g++.dg/concepts/req15.C: Likewise.
* g++.dg/concepts/memfun.C: Likewise.
* g++.dg/concepts/pr68434.C: Likewise.
* g++.dg/concepts/inherit-ctor4.C: Likewise.
* g++.dg/concepts/partial-spec6.C: Likewise.
* g++.dg/concepts/var-templ1.C: Likewise.
* g++.dg/concepts/template-parm8.C: Likewise.
* g++.dg/concepts/explicit-inst3.C: Likewise.
* g++.dg/concepts/class4.C: Likewise.
* g++.dg/concepts/req6.C: Likewise.
* g++.dg/concepts/fn8.C: Likewise.
* g++.dg/concepts/class5.C: Likewise.
* g++.dg/concepts/placeholder5.C: Likewise.
* g++.dg/concepts/req16.C: Likewise.
* g++.dg/concepts/req10.C: Likewise.
* g++.dg/concepts/var-concept2.C: Likewise.
* g++.dg/concepts/auto3.C: Likewise.
* g++.dg/concepts/generic-fn-err.C: Likewise.
* g++.dg/concepts/pr65552.C: Likewise.
* g++.dg/concepts/partial-concept-id2.C: Likewise.
* g++.dg/concepts/fn1.C: Likewise.
* g++.dg/concepts/partial-spec.C: Likewise.
* g++.dg/concepts/template-parm12.C: Likewise.
* g++.dg/concepts/diagnostic1.C: Likewise.
* g++.dg/concepts/intro1.C: Likewise.
* g++.dg/concepts/explicit-inst4.C: Likewise.
* g++.dg/concepts/req18.C: Likewise.
* g++.dg/concepts/explicit-spec5.C: Likewise.
* g++.dg/concepts/var-concept6.C: Likewise.
* g++.dg/concepts/fn9.C: Likewise.
* g++.dg/concepts/req2.C: Likewise.
* g++.dg/concepts/template-parm7.C: Likewise.
* g++.dg/concepts/req14.C: Likewise.
* g++.dg/concepts/template-parm6.C: Likewise.
* g++.dg/concepts/variadic4.C: Likewise.
* g++.dg/concepts/fn6.C: Likewise.
* g++.dg/concepts/req-neg1.C: Likewise.
* g++.dg/concepts/alias3.C: Likewise.
* g++.dg/concepts/expression2.C: Likewise.
* g++.dg/concepts/partial-spec3.C: Likewise.
* g++.dg/concepts/expression3.C: Likewise.
* g++.dg/concepts/memfun-err.C: Likewise.
* g++.dg/concepts/pr66091.C: Likewise.
* g++.dg/concepts/explicit-spec2.C: Likewise.
* g++.dg/concepts/equiv.C: Likewise.
* g++.dg/concepts/friend1.C: Likewise.
* g++.dg/concepts/fn4.C: Likewise.
* g++.dg/concepts/var-templ3.C: Likewise.
* g++.dg/concepts/explicit-inst2.C: Likewise.
* g++.dg/concepts/alias2.C: Likewise.
* g++.dg/concepts/regress/alias-decl-42.C: Likewise.
* g++.dg/concepts/placeholder6.C: Likewise.
* g++.dg/concepts/fn10.C: Likewise.
* g++.dg/concepts/req3.C: Likewise.
* g++.dg/concepts/variadic2.C: Likewise.
* g++.dg/concepts/pr65636.C: Likewise.
* g++.dg/concepts/intro6.C: Likewise.
* g++.dg/concepts/class2.C: Likewise.
* g++.dg/concepts/fn2.C: Likewise.
* g++.dg/concepts/req20.C: Likewise.
* g++.dg/concepts/req8.C: Likewise.
* g++.dg/concepts/placeholder1.C: Likewise.
* g++.dg/concepts/pr65854.C: Likewise.
* g++.dg/concepts/member-concept.C: Likewise.
* g++.dg/concepts/template-parm2.C: Likewise.
* g++.dg/concepts/variadic1.C: Likewise.
* g++.dg/concepts/fn7.C: Likewise.
* g++.dg/concepts/intro4.C: Likewise.
* g++.dg/concepts/req13.C: Likewise.
* g++.dg/concepts/inherit-ctor3.C: Likewise.
* g++.dg/concepts/explicit-spec6.C: Likewise.
* g++.dg/concepts/auto1.C: Likewise.
* g++.dg/concepts/alias1.C: Likewise.
* g++.dg/concepts/fn-concept1.C: Likewise.
* g++.dg/concepts/template-parm11.C: Likewise.
* g++.dg/concepts/explicit-spec4.C: Likewise.
* g++.dg/concepts/partial-concept-id1.C: Likewise.
* g++.dg/concepts/req9.C: Likewise.
* g++.dg/concepts/req4.C: Likewise.
* g++.dg/concepts/pr65681.C: Likewise.
* g++.dg/concepts/req7.C: Likewise.
* g++.dg/concepts/req12.C: Likewise.
* g++.dg/concepts/fn5.C: Likewise.
* g++.dg/concepts/alias4.C: Likewise.
* g++.dg/concepts/generic-fn.C: Likewise.
* g++.dg/concepts/feature-macro.C: Likewise.
* g++.dg/concepts/req19.C: Likewise.
* g++.dg/concepts/placeholder3.C: Likewise.
* g++.dg/concepts/intro3.C: Likewise.
* g++.dg/concepts/partial-spec5.C: Likewise.
* g++.dg/concepts/template-parm4.C: Likewise.
* g++.dg/concepts/dr1430.C: Likewise.
* g++.dg/concepts/pr65634.C: Likewise.
* g++.dg/concepts/var-concept4.C: Likewise.
* g++.dg/concepts/pr67249.C: Likewise.
* g++.dg/concepts/expression.C: Likewise.
* g++.dg/concepts/pr65575.C: Likewise.
* g++.dg/concepts/partial-spec2.C: Likewise.
* g++.dg/concepts/template-parm9.C: Likewise.
* g++.dg/concepts/inherit-ctor1.C: Likewise.
* g++.dg/concepts/equiv2.C: Likewise.
* g++.dg/concepts/req11.C: Likewise.
* g++.dg/concepts/template-parm1.C: Likewise.
* g++.dg/concepts/inherit-ctor2.C: Likewise.
* g++.dg/concepts/var-concept1.C: Likewise.
* g++.dg/concepts/fn3.C: Likewise.
* g++.dg/torture/pr46364.C: Likewise.
* g++.dg/torture/stackalign/eh-alloca-1.C: Likewise.
* g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-1.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-2.C: Likewise.
* g++.dg/torture/stackalign/eh-global-1.C: Likewise.
* g++.dg/torture/stackalign/eh-thiscall-1.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-2.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-1.C: Likewise.
* g++.dg/torture/pr52918-1.C: Likewise.
* g++.dg/torture/pr49394.C: Likewise.
* g++.dg/torture/pr57190.C: Likewise.
* g++.dg/cpp0x/static_assert8.C: Likewise.
* g++.dg/cpp0x/noexcept19.C: Likewise.
* g++.dg/cpp0x/variadic-throw.C: Likewise.
* g++.dg/cpp0x/variadic73.C: Likewise.
* g++.dg/cpp0x/noexcept02.C: Likewise.
* g++.dg/cpp0x/defaulted23.C: Likewise.
* g++.dg/cpp0x/noexcept08.C: Likewise.
* g++.dg/cpp0x/auto9.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-eh2.C: Likewise.
* g++.dg/cpp0x/error5.C: Likewise.
* c-c++-common/gomp/atomic-12.c: Likewise.
* c-c++-common/gomp/atomic-13.c: Likewise.
* c-c++-common/gomp/atomic-14.c: Likewise.
* c-c++-common/Wvarargs-2.c: Likewise.
* c-c++-common/Wvarargs.c: Likewise.
* c-c++-common/vector-subscript-2.c: Likewise.
* g++.old-deja/g++.robertl/eb123.C: Likewise.
* g++.old-deja/g++.eh/tmpl3.C: Likewise.
* g++.old-deja/g++.eh/cleanup2.C: Likewise.
* g++.old-deja/g++.eh/badalloc1.C: Likewise.
* g++.old-deja/g++.eh/throw2.C: Likewise.
* g++.old-deja/g++.eh/throw1.C: Likewise.
* g++.old-deja/g++.eh/tmpl1.C: Likewise.
* g++.old-deja/g++.other/new7.C: Likewise.
* g++.old-deja/g++.other/crash30.C: Likewise.
* g++.old-deja/g++.other/regstack.C: Likewise.
* g++.old-deja/g++.other/crash28.C: Likewise.
* g++.old-deja/g++.jason/bool5.C: Likewise.
* g++.old-deja/g++.mike/p10416.C: Likewise.
* g++.old-deja/g++.mike/eh25.C: Likewise.
* g++.old-deja/g++.mike/eh55.C: Likewise.
libcpp/
* include/cpplib.h (enum c_lang): Rename CLK_GNUCXX1Z
to CLK_GNUCXX17 and CLK_CXX1Z to CLK_CXX17.
* init.c (lang_defaults, cpp_init_builtins): Likewise.
* expr.c (cpp_classify_number): Use C++17 instead of C++1z
in diagnostics.
libstdc++-v3/
* testsuite/libstdc++-prettyprinters/cxx17.cc: Use -std=c++17 or
-std=gnu++17 instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead
of c++1z and c++17_only instead of c++1z_only.  Adjust expected
diagnostics and comments refering to 1z to 17.
* testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise.
* testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise.
* testsuite/30_threads/scoped_lock/cons/1.cc: Likewise.
* testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise.
* testsuite/18_support/launder/1.cc (test02): Likewise.
* testsuite/18_support/launder/requirements_neg.cc: Likewise.
* testsuite/18_support/launder/requirements.cc: Likewise.
* testsuite/18_support/byte/requirements.cc: Likewise.
* testsuite/18_support/byte/ops.cc: Likewise.
* testsuite/18_support/byte/global_neg.cc: Likewise.
* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
Likewise.
* testsuite/27_io/types/4.cc: Likewise.
* testsuite/25_algorithms/sample/81221.cc: Likewise.
* testsuite/25_algorithms/sample/1.cc: Likewise.
* testsuite/25_algorithms/sample/2.cc: Likewise.
* testsuite/25_algorithms/search/searcher.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
* testsuite/experimental/filesystem/path/construct/string_view.cc:
Likewise.
* testsuite/24_iterators/range_access_cpp17.cc: Likewise.
* testsuite/24_iterators/container_access.cc: Likewise.
* testsuite/ext/pb_ds/regression/hash_map_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
* testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
* testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/array.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/array.cc (struct A): Likewise.
* testsuite/20_util/pair/cons/deduction.cc: Likewise.
* testsuite/20_util/variant/deduction.cc: Likewise.
* testsuite/20_util/tuple/78939.cc: Likewise.
* testsuite/20_util/tuple/cons/deduction.cc: Likewise.
* testsuite/20_util/void_t/1.cc: Likewise.
* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: Likewise.
* testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise.
* testsuite/20_util/addressof/requirements/constexpr.cc: Likewise.
* testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise.
* testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/has_unique_object_representations/value.cc:
Likewise.
* testsuite/20_util/time_point/arithmetic/constexpr.cc: Likewise.
* testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
* testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise.
* testsuite/20_util/function/cons/deduction.cc: Likewise.
* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
Likewise.
* testsuite/20_util/is_aggregate/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_aggregate/value.cc: Likewise.
* testsuite/26_numerics/lcm/1.cc: Likewise.
* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
* testsuite/26_numerics/gcd/1.cc: Likewise.
* testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
* testsuite/26_numerics/valarray/deduction.cc: Likewise.
* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Likewise.
* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
* testsuite/23_containers/queue/members/emplace_cxx17_return.cc:
Likewise.
* testsuite/23_containers/array/cons/deduction.cc: Likewise.
* testsuite/23_containers/array/cons/deduction_neg.cc: Likewise.
* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
Likewise.
* testsuite/23_containers/deque/cons/deduction.cc: Likewise.
* testsuite/23_containers/stack/members/emplace_cxx17_return.cc:
Likewise.
* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc:
Likewise.
* testsuite/23_containers/list/cons/deduction.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc:
Likewise.
* testsuite/23_containers/forward_list/cons/deduction.cc: Likewise.
* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Likewise.
* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
Likewise.
* testsuite/23_containers/vector/cons/deduction.cc: Likewise.
* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc:
Likewise.
* testsuite/21_strings/basic_string/cons/char/9.cc: Likewise.
* testsuite/21_strings/basic_string/cons/char/deduction.cc: Likewise.
* testsuite/21_strings/basic_string/cons/char/79162.cc: Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/79162.cc: Likewise.
* testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@252826 138bc75d-0d04-0410-961f-82ee72b054a4

521 files changed:
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c-common.h
gcc/c-family/c-opts.c
gcc/c-family/c.opt
gcc/cp/ChangeLog
gcc/cp/Make-lang.in
gcc/cp/call.c
gcc/cp/class.c
gcc/cp/constexpr.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/lambda.c
gcc/cp/mangle.c
gcc/cp/parser.c
gcc/cp/pt.c
gcc/cp/typeck.c
gcc/cp/typeck2.c
gcc/doc/cpp.texi
gcc/doc/invoke.texi
gcc/dwarf2out.c
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/Wvarargs-2.c
gcc/testsuite/c-c++-common/Wvarargs.c
gcc/testsuite/c-c++-common/gomp/atomic-12.c
gcc/testsuite/c-c++-common/gomp/atomic-13.c
gcc/testsuite/c-c++-common/gomp/atomic-14.c
gcc/testsuite/c-c++-common/vector-subscript-2.c
gcc/testsuite/g++.dg/concepts/alias1.C
gcc/testsuite/g++.dg/concepts/alias2.C
gcc/testsuite/g++.dg/concepts/alias3.C
gcc/testsuite/g++.dg/concepts/alias4.C
gcc/testsuite/g++.dg/concepts/auto1.C
gcc/testsuite/g++.dg/concepts/auto3.C
gcc/testsuite/g++.dg/concepts/class-deduction1.C
gcc/testsuite/g++.dg/concepts/class.C
gcc/testsuite/g++.dg/concepts/class1.C
gcc/testsuite/g++.dg/concepts/class2.C
gcc/testsuite/g++.dg/concepts/class3.C
gcc/testsuite/g++.dg/concepts/class4.C
gcc/testsuite/g++.dg/concepts/class5.C
gcc/testsuite/g++.dg/concepts/class6.C
gcc/testsuite/g++.dg/concepts/constrained-parm.C
gcc/testsuite/g++.dg/concepts/decl-diagnose.C
gcc/testsuite/g++.dg/concepts/deduction-constraint1.C
gcc/testsuite/g++.dg/concepts/diagnostic1.C
gcc/testsuite/g++.dg/concepts/disjunction1.C
gcc/testsuite/g++.dg/concepts/dr1430.C
gcc/testsuite/g++.dg/concepts/equiv.C
gcc/testsuite/g++.dg/concepts/equiv2.C
gcc/testsuite/g++.dg/concepts/explicit-inst1.C
gcc/testsuite/g++.dg/concepts/explicit-inst2.C
gcc/testsuite/g++.dg/concepts/explicit-inst3.C
gcc/testsuite/g++.dg/concepts/explicit-inst4.C
gcc/testsuite/g++.dg/concepts/explicit-spec1.C
gcc/testsuite/g++.dg/concepts/explicit-spec2.C
gcc/testsuite/g++.dg/concepts/explicit-spec3.C
gcc/testsuite/g++.dg/concepts/explicit-spec4.C
gcc/testsuite/g++.dg/concepts/explicit-spec5.C
gcc/testsuite/g++.dg/concepts/explicit-spec6.C
gcc/testsuite/g++.dg/concepts/expression.C
gcc/testsuite/g++.dg/concepts/expression2.C
gcc/testsuite/g++.dg/concepts/expression3.C
gcc/testsuite/g++.dg/concepts/feature-macro.C
gcc/testsuite/g++.dg/concepts/fn-concept1.C
gcc/testsuite/g++.dg/concepts/fn-concept2.C
gcc/testsuite/g++.dg/concepts/fn1.C
gcc/testsuite/g++.dg/concepts/fn10.C
gcc/testsuite/g++.dg/concepts/fn2.C
gcc/testsuite/g++.dg/concepts/fn3.C
gcc/testsuite/g++.dg/concepts/fn4.C
gcc/testsuite/g++.dg/concepts/fn5.C
gcc/testsuite/g++.dg/concepts/fn6.C
gcc/testsuite/g++.dg/concepts/fn7.C
gcc/testsuite/g++.dg/concepts/fn8.C
gcc/testsuite/g++.dg/concepts/fn9.C
gcc/testsuite/g++.dg/concepts/friend1.C
gcc/testsuite/g++.dg/concepts/friend2.C
gcc/testsuite/g++.dg/concepts/generic-fn-err.C
gcc/testsuite/g++.dg/concepts/generic-fn.C
gcc/testsuite/g++.dg/concepts/iconv1.C
gcc/testsuite/g++.dg/concepts/inherit-ctor1.C
gcc/testsuite/g++.dg/concepts/inherit-ctor2.C
gcc/testsuite/g++.dg/concepts/inherit-ctor3.C
gcc/testsuite/g++.dg/concepts/inherit-ctor4.C
gcc/testsuite/g++.dg/concepts/intro1.C
gcc/testsuite/g++.dg/concepts/intro2.C
gcc/testsuite/g++.dg/concepts/intro3.C
gcc/testsuite/g++.dg/concepts/intro4.C
gcc/testsuite/g++.dg/concepts/intro5.C
gcc/testsuite/g++.dg/concepts/intro6.C
gcc/testsuite/g++.dg/concepts/intro7.C
gcc/testsuite/g++.dg/concepts/member-concept.C
gcc/testsuite/g++.dg/concepts/memfun-err.C
gcc/testsuite/g++.dg/concepts/memfun.C
gcc/testsuite/g++.dg/concepts/memfun2.C
gcc/testsuite/g++.dg/concepts/memtmpl1.C
gcc/testsuite/g++.dg/concepts/partial-concept-id1.C
gcc/testsuite/g++.dg/concepts/partial-concept-id2.C
gcc/testsuite/g++.dg/concepts/partial-spec.C
gcc/testsuite/g++.dg/concepts/partial-spec2.C
gcc/testsuite/g++.dg/concepts/partial-spec3.C
gcc/testsuite/g++.dg/concepts/partial-spec4.C
gcc/testsuite/g++.dg/concepts/partial-spec5.C
gcc/testsuite/g++.dg/concepts/partial-spec6.C
gcc/testsuite/g++.dg/concepts/placeholder1.C
gcc/testsuite/g++.dg/concepts/placeholder2.C
gcc/testsuite/g++.dg/concepts/placeholder3.C
gcc/testsuite/g++.dg/concepts/placeholder4.C
gcc/testsuite/g++.dg/concepts/placeholder5.C
gcc/testsuite/g++.dg/concepts/placeholder6.C
gcc/testsuite/g++.dg/concepts/pr65552.C
gcc/testsuite/g++.dg/concepts/pr65575.C
gcc/testsuite/g++.dg/concepts/pr65634.C
gcc/testsuite/g++.dg/concepts/pr65636.C
gcc/testsuite/g++.dg/concepts/pr65681.C
gcc/testsuite/g++.dg/concepts/pr65848.C
gcc/testsuite/g++.dg/concepts/pr65854.C
gcc/testsuite/g++.dg/concepts/pr66091.C
gcc/testsuite/g++.dg/concepts/pr67249.C
gcc/testsuite/g++.dg/concepts/pr68434.C
gcc/testsuite/g++.dg/concepts/pr68683.C
gcc/testsuite/g++.dg/concepts/regress/alias-decl-42.C
gcc/testsuite/g++.dg/concepts/req-neg1.C
gcc/testsuite/g++.dg/concepts/req1.C
gcc/testsuite/g++.dg/concepts/req10.C
gcc/testsuite/g++.dg/concepts/req11.C
gcc/testsuite/g++.dg/concepts/req12.C
gcc/testsuite/g++.dg/concepts/req13.C
gcc/testsuite/g++.dg/concepts/req14.C
gcc/testsuite/g++.dg/concepts/req15.C
gcc/testsuite/g++.dg/concepts/req16.C
gcc/testsuite/g++.dg/concepts/req17.C
gcc/testsuite/g++.dg/concepts/req18.C
gcc/testsuite/g++.dg/concepts/req19.C
gcc/testsuite/g++.dg/concepts/req2.C
gcc/testsuite/g++.dg/concepts/req20.C
gcc/testsuite/g++.dg/concepts/req3.C
gcc/testsuite/g++.dg/concepts/req4.C
gcc/testsuite/g++.dg/concepts/req5.C
gcc/testsuite/g++.dg/concepts/req6.C
gcc/testsuite/g++.dg/concepts/req7.C
gcc/testsuite/g++.dg/concepts/req8.C
gcc/testsuite/g++.dg/concepts/req9.C
gcc/testsuite/g++.dg/concepts/template-parm1.C
gcc/testsuite/g++.dg/concepts/template-parm10.C
gcc/testsuite/g++.dg/concepts/template-parm11.C
gcc/testsuite/g++.dg/concepts/template-parm12.C
gcc/testsuite/g++.dg/concepts/template-parm2.C
gcc/testsuite/g++.dg/concepts/template-parm3.C
gcc/testsuite/g++.dg/concepts/template-parm4.C
gcc/testsuite/g++.dg/concepts/template-parm5.C
gcc/testsuite/g++.dg/concepts/template-parm6.C
gcc/testsuite/g++.dg/concepts/template-parm7.C
gcc/testsuite/g++.dg/concepts/template-parm8.C
gcc/testsuite/g++.dg/concepts/template-parm9.C
gcc/testsuite/g++.dg/concepts/template-template-parm1.C
gcc/testsuite/g++.dg/concepts/traits1.C
gcc/testsuite/g++.dg/concepts/traits2.C
gcc/testsuite/g++.dg/concepts/var-concept1.C
gcc/testsuite/g++.dg/concepts/var-concept2.C
gcc/testsuite/g++.dg/concepts/var-concept3.C
gcc/testsuite/g++.dg/concepts/var-concept4.C
gcc/testsuite/g++.dg/concepts/var-concept5.C
gcc/testsuite/g++.dg/concepts/var-concept6.C
gcc/testsuite/g++.dg/concepts/var-templ1.C
gcc/testsuite/g++.dg/concepts/var-templ2.C
gcc/testsuite/g++.dg/concepts/var-templ3.C
gcc/testsuite/g++.dg/concepts/variadic1.C
gcc/testsuite/g++.dg/concepts/variadic2.C
gcc/testsuite/g++.dg/concepts/variadic4.C
gcc/testsuite/g++.dg/cpp/pr23827_cxx98_neg.C
gcc/testsuite/g++.dg/cpp0x/auto9.C
gcc/testsuite/g++.dg/cpp0x/defaulted23.C
gcc/testsuite/g++.dg/cpp0x/error5.C
gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
gcc/testsuite/g++.dg/cpp0x/noexcept02.C
gcc/testsuite/g++.dg/cpp0x/noexcept08.C
gcc/testsuite/g++.dg/cpp0x/noexcept19.C
gcc/testsuite/g++.dg/cpp0x/static_assert8.C
gcc/testsuite/g++.dg/cpp0x/variadic-throw.C
gcc/testsuite/g++.dg/cpp0x/variadic73.C
gcc/testsuite/g++.dg/cpp1z/abbrev1.C
gcc/testsuite/g++.dg/cpp1z/abbrev2.C
gcc/testsuite/g++.dg/cpp1z/aggr-base1.C
gcc/testsuite/g++.dg/cpp1z/aggr-base2.C
gcc/testsuite/g++.dg/cpp1z/aggr-base2a.C
gcc/testsuite/g++.dg/cpp1z/aggr-base3.C
gcc/testsuite/g++.dg/cpp1z/aggr-base4.C
gcc/testsuite/g++.dg/cpp1z/aggr-base5.C
gcc/testsuite/g++.dg/cpp1z/aggr-base6.C
gcc/testsuite/g++.dg/cpp1z/aligned-new1.C
gcc/testsuite/g++.dg/cpp1z/aligned-new2.C
gcc/testsuite/g++.dg/cpp1z/aligned-new3.C
gcc/testsuite/g++.dg/cpp1z/aligned-new7.C
gcc/testsuite/g++.dg/cpp1z/attributes-enum-1.C
gcc/testsuite/g++.dg/cpp1z/attributes-enum-1a.C
gcc/testsuite/g++.dg/cpp1z/bool-increment1.C
gcc/testsuite/g++.dg/cpp1z/byte1.C
gcc/testsuite/g++.dg/cpp1z/class-deduction1.C
gcc/testsuite/g++.dg/cpp1z/class-deduction10.C
gcc/testsuite/g++.dg/cpp1z/class-deduction11.C
gcc/testsuite/g++.dg/cpp1z/class-deduction12.C
gcc/testsuite/g++.dg/cpp1z/class-deduction13.C
gcc/testsuite/g++.dg/cpp1z/class-deduction14.C
gcc/testsuite/g++.dg/cpp1z/class-deduction15.C
gcc/testsuite/g++.dg/cpp1z/class-deduction16.C
gcc/testsuite/g++.dg/cpp1z/class-deduction17.C
gcc/testsuite/g++.dg/cpp1z/class-deduction18.C
gcc/testsuite/g++.dg/cpp1z/class-deduction19.C
gcc/testsuite/g++.dg/cpp1z/class-deduction2.C
gcc/testsuite/g++.dg/cpp1z/class-deduction20.C
gcc/testsuite/g++.dg/cpp1z/class-deduction21.C
gcc/testsuite/g++.dg/cpp1z/class-deduction22.C
gcc/testsuite/g++.dg/cpp1z/class-deduction23.C
gcc/testsuite/g++.dg/cpp1z/class-deduction24.C
gcc/testsuite/g++.dg/cpp1z/class-deduction25.C
gcc/testsuite/g++.dg/cpp1z/class-deduction26.C
gcc/testsuite/g++.dg/cpp1z/class-deduction27.C
gcc/testsuite/g++.dg/cpp1z/class-deduction28.C
gcc/testsuite/g++.dg/cpp1z/class-deduction29.C
gcc/testsuite/g++.dg/cpp1z/class-deduction3.C
gcc/testsuite/g++.dg/cpp1z/class-deduction30.C
gcc/testsuite/g++.dg/cpp1z/class-deduction31.C
gcc/testsuite/g++.dg/cpp1z/class-deduction32.C
gcc/testsuite/g++.dg/cpp1z/class-deduction33.C
gcc/testsuite/g++.dg/cpp1z/class-deduction34.C
gcc/testsuite/g++.dg/cpp1z/class-deduction35.C
gcc/testsuite/g++.dg/cpp1z/class-deduction36.C
gcc/testsuite/g++.dg/cpp1z/class-deduction38.C
gcc/testsuite/g++.dg/cpp1z/class-deduction39.C
gcc/testsuite/g++.dg/cpp1z/class-deduction4.C
gcc/testsuite/g++.dg/cpp1z/class-deduction40.C
gcc/testsuite/g++.dg/cpp1z/class-deduction41.C
gcc/testsuite/g++.dg/cpp1z/class-deduction42.C
gcc/testsuite/g++.dg/cpp1z/class-deduction43.C
gcc/testsuite/g++.dg/cpp1z/class-deduction5.C
gcc/testsuite/g++.dg/cpp1z/class-deduction6.C
gcc/testsuite/g++.dg/cpp1z/class-deduction7.C
gcc/testsuite/g++.dg/cpp1z/class-deduction8.C
gcc/testsuite/g++.dg/cpp1z/class-deduction9.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if10.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if11.C
gcc/testsuite/g++.dg/cpp1z/constexpr-if12.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda1.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda10.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda11.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda12.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda13.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda2.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda3.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda4.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda5.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda6.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda7.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda8.C
gcc/testsuite/g++.dg/cpp1z/constexpr-lambda9.C
gcc/testsuite/g++.dg/cpp1z/cplusplus.C
gcc/testsuite/g++.dg/cpp1z/decomp-bitfield1.C
gcc/testsuite/g++.dg/cpp1z/decomp-constexpr1.C
gcc/testsuite/g++.dg/cpp1z/decomp10.C
gcc/testsuite/g++.dg/cpp1z/decomp11.C
gcc/testsuite/g++.dg/cpp1z/decomp12.C
gcc/testsuite/g++.dg/cpp1z/decomp15.C
gcc/testsuite/g++.dg/cpp1z/decomp16.C
gcc/testsuite/g++.dg/cpp1z/decomp17.C
gcc/testsuite/g++.dg/cpp1z/decomp20.C
gcc/testsuite/g++.dg/cpp1z/decomp21.C
gcc/testsuite/g++.dg/cpp1z/decomp27.C
gcc/testsuite/g++.dg/cpp1z/decomp3.C
gcc/testsuite/g++.dg/cpp1z/decomp30.C
gcc/testsuite/g++.dg/cpp1z/decomp4.C
gcc/testsuite/g++.dg/cpp1z/decomp9.C
gcc/testsuite/g++.dg/cpp1z/direct-enum-init1.C
gcc/testsuite/g++.dg/cpp1z/elide1.C
gcc/testsuite/g++.dg/cpp1z/eval-order2.C
gcc/testsuite/g++.dg/cpp1z/eval-order3.C
gcc/testsuite/g++.dg/cpp1z/fallthrough1.C
gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
gcc/testsuite/g++.dg/cpp1z/fold-ice1.C
gcc/testsuite/g++.dg/cpp1z/fold-mangle.C
gcc/testsuite/g++.dg/cpp1z/fold1.C
gcc/testsuite/g++.dg/cpp1z/fold2.C
gcc/testsuite/g++.dg/cpp1z/fold3.C
gcc/testsuite/g++.dg/cpp1z/fold4.C
gcc/testsuite/g++.dg/cpp1z/fold5.C
gcc/testsuite/g++.dg/cpp1z/fold6.C
gcc/testsuite/g++.dg/cpp1z/fold7.C
gcc/testsuite/g++.dg/cpp1z/fold7a.C
gcc/testsuite/g++.dg/cpp1z/fold8.C
gcc/testsuite/g++.dg/cpp1z/fold9.C
gcc/testsuite/g++.dg/cpp1z/init-statement2.C
gcc/testsuite/g++.dg/cpp1z/init-statement3.C
gcc/testsuite/g++.dg/cpp1z/init-statement4.C
gcc/testsuite/g++.dg/cpp1z/init-statement5.C
gcc/testsuite/g++.dg/cpp1z/init-statement6.C
gcc/testsuite/g++.dg/cpp1z/init-statement7.C
gcc/testsuite/g++.dg/cpp1z/init-statement8.C
gcc/testsuite/g++.dg/cpp1z/init-statement9.C
gcc/testsuite/g++.dg/cpp1z/inline-var1.C
gcc/testsuite/g++.dg/cpp1z/inline-var1a.C
gcc/testsuite/g++.dg/cpp1z/inline-var2.C
gcc/testsuite/g++.dg/cpp1z/lambda-this3.C
gcc/testsuite/g++.dg/cpp1z/namespace-attribs.C
gcc/testsuite/g++.dg/cpp1z/nested-namespace-def1.C
gcc/testsuite/g++.dg/cpp1z/nodiscard3.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type1.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type12.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type16.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type17.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type2.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type3.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type4.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type5.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type6.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type7.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type8.C
gcc/testsuite/g++.dg/cpp1z/noexcept-type9.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto1.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto10.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto2.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto3.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto4.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto5.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto6.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto7.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto8.C
gcc/testsuite/g++.dg/cpp1z/nontype-auto9.C
gcc/testsuite/g++.dg/cpp1z/nontype1.C
gcc/testsuite/g++.dg/cpp1z/nontype2.C
gcc/testsuite/g++.dg/cpp1z/nontype3.C
gcc/testsuite/g++.dg/cpp1z/nontype3a.C
gcc/testsuite/g++.dg/cpp1z/pr78771.C
gcc/testsuite/g++.dg/cpp1z/pr79143.C
gcc/testsuite/g++.dg/cpp1z/range-for1.C
gcc/testsuite/g++.dg/cpp1z/register1.C
gcc/testsuite/g++.dg/cpp1z/register2.C
gcc/testsuite/g++.dg/cpp1z/regress1.C
gcc/testsuite/g++.dg/cpp1z/regress2.C
gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C
gcc/testsuite/g++.dg/cpp1z/udlit-utf8char.C
gcc/testsuite/g++.dg/cpp1z/utf8-2.C
gcc/testsuite/g++.dg/cpp1z/utf8-2a.C
gcc/testsuite/g++.dg/cpp1z/utf8-neg.C
gcc/testsuite/g++.dg/cpp1z/utf8.C
gcc/testsuite/g++.dg/debug/dwarf2/inline-var-1.C
gcc/testsuite/g++.dg/debug/dwarf2/inline-var-2.C
gcc/testsuite/g++.dg/eh/async-unwind2.C
gcc/testsuite/g++.dg/eh/cond4.C
gcc/testsuite/g++.dg/eh/delete1.C
gcc/testsuite/g++.dg/eh/ehopt1.C
gcc/testsuite/g++.dg/eh/forced4.C
gcc/testsuite/g++.dg/eh/init-temp2.C
gcc/testsuite/g++.dg/eh/pr38662.C
gcc/testsuite/g++.dg/eh/pr41819.C
gcc/testsuite/g++.dg/eh/shadow1.C
gcc/testsuite/g++.dg/eh/spec2.C
gcc/testsuite/g++.dg/eh/spec3.C
gcc/testsuite/g++.dg/eh/spec7.C
gcc/testsuite/g++.dg/eh/spec8.C
gcc/testsuite/g++.dg/eh/spec9.C
gcc/testsuite/g++.dg/eh/template1.C
gcc/testsuite/g++.dg/expr/bitfield4.C
gcc/testsuite/g++.dg/expr/bitfield5.C
gcc/testsuite/g++.dg/expr/bitfield6.C
gcc/testsuite/g++.dg/expr/bool1.C
gcc/testsuite/g++.dg/expr/bool3.C
gcc/testsuite/g++.dg/expr/lval3.C
gcc/testsuite/g++.dg/expr/lval4.C
gcc/testsuite/g++.dg/ext/has_nothrow_assign.C
gcc/testsuite/g++.dg/ext/has_nothrow_constructor.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-1.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-2.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-4.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-5.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-6.C
gcc/testsuite/g++.dg/ext/has_nothrow_copy-7.C
gcc/testsuite/g++.dg/gcov/gcov-7.C
gcc/testsuite/g++.dg/init/new13.C
gcc/testsuite/g++.dg/init/new25.C
gcc/testsuite/g++.dg/lookup/exception1.C
gcc/testsuite/g++.dg/opt/noreturn-1.C
gcc/testsuite/g++.dg/other/error3.C
gcc/testsuite/g++.dg/parse/error15.C
gcc/testsuite/g++.dg/parse/linkage2.C
gcc/testsuite/g++.dg/parse/register1.C
gcc/testsuite/g++.dg/rtti/crash3.C
gcc/testsuite/g++.dg/template/nontype8.C
gcc/testsuite/g++.dg/template/partial5.C
gcc/testsuite/g++.dg/tls/diag-2.C
gcc/testsuite/g++.dg/tls/diag-4.C
gcc/testsuite/g++.dg/tm/pr46567.C
gcc/testsuite/g++.dg/tm/pr47340.C
gcc/testsuite/g++.dg/torture/pr46364.C
gcc/testsuite/g++.dg/torture/pr49394.C
gcc/testsuite/g++.dg/torture/pr52918-1.C
gcc/testsuite/g++.dg/torture/pr57190.C
gcc/testsuite/g++.dg/torture/stackalign/eh-alloca-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-fastcall-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-global-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-inline-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-inline-2.C
gcc/testsuite/g++.dg/torture/stackalign/eh-thiscall-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-vararg-1.C
gcc/testsuite/g++.dg/torture/stackalign/eh-vararg-2.C
gcc/testsuite/g++.dg/tree-ssa/pr45605.C
gcc/testsuite/g++.dg/ubsan/pr79589.C
gcc/testsuite/g++.dg/warn/Wreturn-type-3.C
gcc/testsuite/g++.dg/warn/register-parm-1.C
gcc/testsuite/g++.dg/warn/register-var-2.C
gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C
gcc/testsuite/g++.old-deja/g++.eh/cleanup2.C
gcc/testsuite/g++.old-deja/g++.eh/throw1.C
gcc/testsuite/g++.old-deja/g++.eh/throw2.C
gcc/testsuite/g++.old-deja/g++.eh/tmpl1.C
gcc/testsuite/g++.old-deja/g++.eh/tmpl3.C
gcc/testsuite/g++.old-deja/g++.jason/bool5.C
gcc/testsuite/g++.old-deja/g++.mike/eh25.C
gcc/testsuite/g++.old-deja/g++.mike/eh55.C
gcc/testsuite/g++.old-deja/g++.mike/p10416.C
gcc/testsuite/g++.old-deja/g++.other/crash28.C
gcc/testsuite/g++.old-deja/g++.other/crash30.C
gcc/testsuite/g++.old-deja/g++.other/new7.C
gcc/testsuite/g++.old-deja/g++.other/regstack.C
gcc/testsuite/g++.old-deja/g++.robertl/eb123.C
gcc/testsuite/lib/g++-dg.exp
gcc/testsuite/lib/target-supports.exp
libcpp/ChangeLog
libcpp/expr.c
libcpp/include/cpplib.h
libcpp/init.c
libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/18_support/byte/global_neg.cc
libstdc++-v3/testsuite/18_support/byte/ops.cc
libstdc++-v3/testsuite/18_support/byte/requirements.cc
libstdc++-v3/testsuite/18_support/launder/1.cc
libstdc++-v3/testsuite/18_support/launder/requirements.cc
libstdc++-v3/testsuite/18_support/launder/requirements_neg.cc
libstdc++-v3/testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc
libstdc++-v3/testsuite/20_util/addressof/requirements/constexpr.cc
libstdc++-v3/testsuite/20_util/duration/arithmetic/constexpr_c++17.cc
libstdc++-v3/testsuite/20_util/function/cons/deduction.cc
libstdc++-v3/testsuite/20_util/function_objects/invoke/59768.cc
libstdc++-v3/testsuite/20_util/function_objects/mem_fn/80478.cc
libstdc++-v3/testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc
libstdc++-v3/testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc
libstdc++-v3/testsuite/20_util/has_unique_object_representations/value.cc
libstdc++-v3/testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc
libstdc++-v3/testsuite/20_util/is_aggregate/requirements/typedefs.cc
libstdc++-v3/testsuite/20_util/is_aggregate/value.cc
libstdc++-v3/testsuite/20_util/pair/cons/deduction.cc
libstdc++-v3/testsuite/20_util/shared_ptr/casts/reinterpret.cc
libstdc++-v3/testsuite/20_util/shared_ptr/cons/array.cc
libstdc++-v3/testsuite/20_util/shared_ptr/cons/deduction.cc
libstdc++-v3/testsuite/20_util/shared_ptr/observers/array.cc
libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc
libstdc++-v3/testsuite/20_util/time_point/arithmetic/constexpr.cc
libstdc++-v3/testsuite/20_util/tuple/78939.cc
libstdc++-v3/testsuite/20_util/tuple/cons/deduction.cc
libstdc++-v3/testsuite/20_util/unique_ptr/cons/deduction_neg.cc
libstdc++-v3/testsuite/20_util/variant/deduction.cc
libstdc++-v3/testsuite/20_util/void_t/1.cc
libstdc++-v3/testsuite/20_util/weak_ptr/cons/deduction.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/char/79162.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/char/9.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/char/deduction.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/79162.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/9.cc
libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc
libstdc++-v3/testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc
libstdc++-v3/testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc
libstdc++-v3/testsuite/21_strings/basic_string_view/operations/compare/char/2.cc
libstdc++-v3/testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc
libstdc++-v3/testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc
libstdc++-v3/testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc
libstdc++-v3/testsuite/23_containers/array/cons/deduction.cc
libstdc++-v3/testsuite/23_containers/array/cons/deduction_neg.cc
libstdc++-v3/testsuite/23_containers/deque/cons/deduction.cc
libstdc++-v3/testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc
libstdc++-v3/testsuite/23_containers/forward_list/cons/deduction.cc
libstdc++-v3/testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc
libstdc++-v3/testsuite/23_containers/list/cons/deduction.cc
libstdc++-v3/testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc
libstdc++-v3/testsuite/23_containers/queue/members/emplace_cxx17_return.cc
libstdc++-v3/testsuite/23_containers/stack/members/emplace_cxx17_return.cc
libstdc++-v3/testsuite/23_containers/unordered_set/allocator/ext_ptr.cc
libstdc++-v3/testsuite/23_containers/vector/bool/emplace_cxx17_return.cc
libstdc++-v3/testsuite/23_containers/vector/cons/deduction.cc
libstdc++-v3/testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc
libstdc++-v3/testsuite/24_iterators/container_access.cc
libstdc++-v3/testsuite/24_iterators/range_access_cpp17.cc
libstdc++-v3/testsuite/25_algorithms/sample/1.cc
libstdc++-v3/testsuite/25_algorithms/sample/2.cc
libstdc++-v3/testsuite/25_algorithms/sample/81221.cc
libstdc++-v3/testsuite/25_algorithms/search/searcher.cc
libstdc++-v3/testsuite/26_numerics/gcd/1.cc
libstdc++-v3/testsuite/26_numerics/gcd/gcd_neg.cc
libstdc++-v3/testsuite/26_numerics/headers/cmath/hypot.cc
libstdc++-v3/testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc
libstdc++-v3/testsuite/26_numerics/lcm/1.cc
libstdc++-v3/testsuite/26_numerics/lcm/lcm_neg.cc
libstdc++-v3/testsuite/26_numerics/valarray/deduction.cc
libstdc++-v3/testsuite/27_io/types/4.cc
libstdc++-v3/testsuite/28_regex/basic_regex/ctors/deduction.cc
libstdc++-v3/testsuite/30_threads/lock_guard/cons/deduction.cc
libstdc++-v3/testsuite/30_threads/scoped_lock/cons/1.cc
libstdc++-v3/testsuite/30_threads/scoped_lock/cons/deduction.cc
libstdc++-v3/testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc
libstdc++-v3/testsuite/30_threads/scoped_lock/requirements/typedefs.cc
libstdc++-v3/testsuite/30_threads/unique_lock/cons/deduction.cc
libstdc++-v3/testsuite/experimental/filesystem/path/construct/string_view.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/hash_map_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/hash_set_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/list_update_map_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/list_update_set_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/priority_queue_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/tree_map_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/tree_set_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/trie_map_rand.cc
libstdc++-v3/testsuite/ext/pb_ds/regression/trie_set_rand.cc
libstdc++-v3/testsuite/libstdc++-prettyprinters/cxx17.cc

index 8c9988fccfb1c35b9dfb9eb702ada3eab3ed480f..71191121ce31ff8b965c0adc9e20ecf789c24718 100644 (file)
@@ -1,3 +1,13 @@
+2017-09-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * doc/invoke.texi: Document -std=c++17 and -std=gnu++17 and document
+       c++1z and gnu++1z as deprecated.  Change other references to
+       -std=c++1z to -std=c++17 and -std=gnu++1z to -std=gnu++17.
+       Change -Wc++1z-compat to -Wc++17-compat.
+       * doc/cpp.texi: Document -std=c++17 defines __cplusplus 201703L.
+       * dwarf2out.c (highest_c_language): Handle C++17.
+       (gen_compile_unit_die): Likewise.
+
 2017-09-15  Jakub Jelinek  <jakub@redhat.com>
 
        PR rtl-optimization/82192
index 6391ced934d40e2c8564d462e7ad319d0e81a60d..4fffa3156444524ef5a8983059147bc5aeacd039 100644 (file)
@@ -1,3 +1,22 @@
+2017-09-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * c.opt (Wc++1z-compat): Change from option to undocumented alias.
+       (Wc++17-compat): Change from undocumented alias to option.
+       (Wnoexcept-type): Enable by Wc++17-compat instead of Wc++1z-compat,
+       change C++1z to C++17 in description.
+       (std=c++1z, std=gnu++1z): Change from option to undocumented
+       deprecated alias.
+       (std=c++17, std=gnu++17): Change from undocumented alias to option.
+       Adjust description.
+       * c-common.h (enum cxx_dialect): Rename cxx1z to cxx17.
+       * c-opts.c (set_std_cxx1z): Rename to ...
+       (set_std_cxx17): ... this.
+       (c_common_handle_option): Rename OPT_std_c__1z to OPT_std_c__17
+       and OPT_std_gnu__1z to OPT_std_gnu__17.  Adjust set_std_cxx1z
+       caller.  
+       (c_common_post_options): Use cxx17 instead of cxx1z.  Adjust
+       comments.
+
 2017-09-12  H.J. Lu  <hongjiu.lu@intel.com>
 
        * c-attribs.c (common_handle_aligned_attribute): Don't warn
index 0de549d2412393c27bbfdf7678db05493279746d..d57829bc89a02f486bb6d597c7846de5095869fc 100644 (file)
@@ -702,8 +702,8 @@ enum cxx_dialect {
   cxx11 = cxx0x,
   /* C++14 */
   cxx14,
-  /* C++1z (C++17?) */
-  cxx1z
+  /* C++17 */
+  cxx17
 };
 
 /* The C++ dialect being used. C++98 is the default.  */
index 9e7f0a361ca0b485b0a2be5e26586f844e07829d..cdbcd6cf8740e723f1631a35c1f72f292639bffd 100644 (file)
@@ -110,7 +110,7 @@ static void handle_OPT_d (const char *);
 static void set_std_cxx98 (int);
 static void set_std_cxx11 (int);
 static void set_std_cxx14 (int);
-static void set_std_cxx1z (int);
+static void set_std_cxx17 (int);
 static void set_std_c89 (int, int);
 static void set_std_c99 (int);
 static void set_std_c11 (int);
@@ -631,10 +631,10 @@ c_common_handle_option (size_t scode, const char *arg, int value,
        set_std_cxx14 (code == OPT_std_c__14 /* ISO */);
       break;
 
-    case OPT_std_c__1z:
-    case OPT_std_gnu__1z:
+    case OPT_std_c__17:
+    case OPT_std_gnu__17:
       if (!preprocessing_asm_p)
-       set_std_cxx1z (code == OPT_std_c__1z /* ISO */);
+       set_std_cxx17 (code == OPT_std_c__17 /* ISO */);
       break;
 
     case OPT_std_c90:
@@ -886,7 +886,7 @@ c_common_post_options (const char **pfilename)
 
   /* -Wregister is enabled by default in C++17.  */
   if (!global_options_set.x_warn_register)
-    warn_register = cxx_dialect >= cxx1z;
+    warn_register = cxx_dialect >= cxx17;
 
   /* Declone C++ 'structors if -Os.  */
   if (flag_declone_ctor_dtor == -1)
@@ -923,9 +923,9 @@ c_common_post_options (const char **pfilename)
   if (!global_options_set.x_flag_new_inheriting_ctors)
     flag_new_inheriting_ctors = abi_version_at_least (11);
 
-  /* For GCC 7, only enable DR150 resolution by default if -std=c++1z.  */
+  /* For GCC 7, only enable DR150 resolution by default if -std=c++17.  */
   if (!global_options_set.x_flag_new_ttp)
-    flag_new_ttp = (cxx_dialect >= cxx1z);
+    flag_new_ttp = (cxx_dialect >= cxx17);
 
   if (cxx_dialect >= cxx11)
     {
@@ -938,7 +938,7 @@ c_common_post_options (const char **pfilename)
        warn_narrowing = 1;
 
       /* Unless -f{,no-}ext-numeric-literals has been used explicitly,
-        for -std=c++{11,14,1z} default to -fno-ext-numeric-literals.  */
+        for -std=c++{11,14,17} default to -fno-ext-numeric-literals.  */
       if (flag_iso && !global_options_set.x_flag_ext_numeric_literals)
        cpp_opts->ext_numeric_literals = 0;
     }
@@ -949,7 +949,7 @@ c_common_post_options (const char **pfilename)
      for earlier C++ as well, so chaining works as expected.  */
   if (c_dialect_cxx ()
       && flag_strong_eval_order == -1)
-    flag_strong_eval_order = (cxx_dialect >= cxx1z ? 2 : 1);
+    flag_strong_eval_order = (cxx_dialect >= cxx17 ? 2 : 1);
 
   /* Global sized deallocation is new in C++14.  */
   if (flag_sized_deallocation == -1)
@@ -1581,7 +1581,7 @@ set_std_cxx11 (int iso)
   lang_hooks.name = "GNU C++11";
 }
 
-/* Set the C++ 2014 draft standard (without GNU extensions if ISO).  */
+/* Set the C++ 2014 standard (without GNU extensions if ISO).  */
 static void
 set_std_cxx14 (int iso)
 {
@@ -1596,11 +1596,11 @@ set_std_cxx14 (int iso)
   lang_hooks.name = "GNU C++14";
 }
 
-/* Set the C++ 201z draft standard (without GNU extensions if ISO).  */
+/* Set the C++ 2017 standard (without GNU extensions if ISO).  */
 static void
-set_std_cxx1z (int iso)
+set_std_cxx17 (int iso)
 {
-  cpp_set_lang (parse_in, iso ? CLK_CXX1Z: CLK_GNUCXX1Z);
+  cpp_set_lang (parse_in, iso ? CLK_CXX17: CLK_GNUCXX17);
   flag_no_gnu_keywords = iso;
   flag_no_nonansi_builtin = iso;
   flag_iso = iso;
@@ -1608,8 +1608,8 @@ set_std_cxx1z (int iso)
   flag_isoc94 = 1;
   flag_isoc99 = 1;
   flag_isoc11 = 1;
-  cxx_dialect = cxx1z;
-  lang_hooks.name = "GNU C++14"; /* Pretend C++14 till standarization.  */
+  cxx_dialect = cxx17;
+  lang_hooks.name = "GNU C++17";
 }
 
 /* Args to -d specify what to dump.  Silently ignore
index 3435fe90ccacef991baf3d0630796f17622af5ba..ed5938f0ea4a0b5db54af4cc03ffb79ba109b6d2 100644 (file)
@@ -378,11 +378,11 @@ C++ ObjC++ Var(warn_cxx14_compat) Warning LangEnabledBy(C++ ObjC++,Wall)
 Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014.
 
 Wc++1z-compat
-C++ ObjC++ Var(warn_cxx1z_compat) Warning LangEnabledBy(C++ ObjC++,Wall)
-Warn about C++ constructs whose meaning differs between ISO C++ 2014 and (forthcoming) ISO C++ 201z(7?).
+C++ ObjC++ Warning Alias(Wc++17-compat) Undocumented
 
 Wc++17-compat
-C++ ObjC++ Warning Alias(Wc++1z-compat) Undocumented
+C++ ObjC++ Var(warn_cxx17_compat) Warning LangEnabledBy(C++ ObjC++,Wall)
+Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO C++ 2017.
 
 Wcast-qual
 C ObjC C++ ObjC++ Var(warn_cast_qual) Warning
@@ -809,8 +809,8 @@ C++ ObjC++ Var(warn_noexcept) Warning
 Warn when a noexcept expression evaluates to false even though the expression can't actually throw.
 
 Wnoexcept-type
-C++ ObjC++ Warning Var(warn_noexcept_type) LangEnabledBy(C++ ObjC++,Wabi || Wc++1z-compat)
-Warn if C++1z noexcept function type will change the mangled name of a symbol.
+C++ ObjC++ Warning Var(warn_noexcept_type) LangEnabledBy(C++ ObjC++,Wabi || Wc++17-compat)
+Warn if C++17 noexcept function type will change the mangled name of a symbol.
 
 Wnon-template-friend
 C++ ObjC++ Var(warn_nontemplate_friend) Init(1) Warning
@@ -1925,11 +1925,12 @@ C++ ObjC++
 Conform to the ISO 2014 C++ standard.
 
 std=c++1z
-C++ ObjC++
-Conform to the ISO 2017(?) C++ draft standard (experimental and incomplete support).
+C++ ObjC++ Alias(std=c++17) Undocumented
+Deprecated in favor of -std=c++17.
 
 std=c++17
-C++ ObjC++ Alias(std=c++1z) Undocumented
+C++ ObjC++
+Conform to the ISO 2017 C++ standard.
 
 std=c11
 C ObjC
@@ -1982,11 +1983,12 @@ C++ ObjC++
 Conform to the ISO 2014 C++ standard with GNU extensions.
 
 std=gnu++1z
-C++ ObjC++
-Conform to the ISO 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support).
+C++ ObjC++ Alias(std=gnu++17) Undocumented
+Deprecated in favor of -std=gnu++17.
 
 std=gnu++17
-C++ ObjC++ Alias(std=gnu++1z) Undocumented
+C++ ObjC++
+Conform to the ISO 2017 C++ standard with GNU extensions.
 
 std=gnu11
 C ObjC
index 1bda58141ce77432fa0dda6ae9bd515f15890582..0a3b80f451805d1a035610dbc0ee0ebb6dc6ec68 100644 (file)
@@ -1,3 +1,42 @@
+2017-09-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * decl.c (redeclaration_error_message): Use cxx17 instead of cxx1z,
+       adjust diagnostics refering to C++1z or -std=gnu++1z or -std=c++1z
+       to C++17 or -std=gnu++17 or -std=c++17.  Adjust comments.
+       (cxx_init_decl_processing, next_initializable_field,
+       is_direct_enum_init, check_initializer, cp_finish_decl,
+       mark_inline_variable, grokdeclarator, grokparms, xref_basetypes,
+       finish_function): Likewise.
+       * cp-tree.h (DECL_INLINE_VAR_P): Likewise.
+       * pt.c (mark_template_parm, convert_nontype_argument,
+       instantiate_class_template_1, type_unification_real, unify,
+       get_partial_spec_bindings, dependent_type_p_r): Likewise.
+       * typeck.c (cp_build_unary_op): Likewise.
+       * constexpr.c (var_in_maybe_constexpr_fn): Likewise.
+       * call.c (build_user_type_conversion_1, build_over_call,
+       build_special_member_call): Likewise.
+       * lambda.c (begin_lambda_type): Likewise.
+       * typeck2.c (process_init_constructor_record): Likewise.
+       * class.c (build_base_field, finalize_literal_type_property,
+       explain_non_literal_class): Likewise.
+       * parser.c (cp_parser_diagnose_invalid_type_name,
+       cp_parser_primary_expression, cp_parser_lambda_introducer,
+       cp_parser_lambda_declarator_opt, cp_parser_selection_statement,
+       cp_convert_range_for, cp_parser_perform_range_for_lookup,
+       cp_parser_decomposition_declaration, cp_parser_linkage_specification,
+       cp_parser_static_assert, cp_parser_simple_type_specifier,
+       cp_parser_namespace_definition, cp_parser_using_declaration,
+       cp_parser_init_declarator, cp_parser_type_parameter_key,
+       cp_parser_exception_specification_opt, cp_parser_std_attribute_spec,
+       cp_parser_constructor_declarator_p): Likewise.
+       * mangle.c (struct globals): Rename need_cxx1z_warning to
+       need_cxx17_warning.
+       (write_exception_spec, start_mangling, mangle_decl): Likewise.
+       * Make-lang.in (check-c++1z): Rename to check-c++17, depend on
+       it.
+       (check-c++17): New goal.  Use 17 instead of 1z.
+       (check-c++-all): Use 17 instead of 1z.
+
 2017-09-14  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/81314
index f860645bfe5ccd21a07586440e9c7b34feae1f9c..24e9d7ced5b37df3ca596179b708049816be71ec 100644 (file)
@@ -169,13 +169,14 @@ c++.srcman: doc/g++.1
 # entry point.  We feed the former to the latter here.
 check-c++ : check-g++
 
-# Run the testsuite in C++1z mode.
-check-c++1z:
-       $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS)" GXX_TESTSUITE_STDS=1z check-g++
+# Run the testsuite in C++17 mode.
+check-c++1z: check-c++17
+check-c++17:
+       $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS)" GXX_TESTSUITE_STDS=17 check-g++
 
 # Run the testsuite in all standard conformance levels.
 check-c++-all:
-       $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) --stds=98,11,14,1z,concepts" check-g++
+       $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) --stds=98,11,14,17,concepts" check-g++
 
 # Run the testsuite with garbage collection at every opportunity.
 check-g++-strict-gc:
index 88af0d31446d511f49c407c0017dd33d2fe84d26..4fa0d035c804b9360d5c19832102bf7f768b1e8a 100644 (file)
@@ -3743,7 +3743,7 @@ build_user_type_conversion_1 (tree totype, tree expr, int flags,
   /* FIXME P0135 doesn't say what to do in C++17 about list-initialization from
      a single element.  For now, let's handle constructors as before and also
      consider conversion operators from the element.  */
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && BRACE_ENCLOSED_INITIALIZER_P (expr)
       && CONSTRUCTOR_NELTS (expr) == 1)
     fromtype = TREE_TYPE (CONSTRUCTOR_ELT (expr, 0)->value);
@@ -8035,7 +8035,7 @@ build_over_call (struct z_candidate *cand, int flags, tsubst_flags_t complain)
 
       /* In C++17 we shouldn't be copying a TARGET_EXPR except into a base
         subobject.  */
-      if (CHECKING_P && cxx_dialect >= cxx1z)
+      if (CHECKING_P && cxx_dialect >= cxx17)
        gcc_assert (TREE_CODE (arg) != TARGET_EXPR
                    /* It's from binding the ref parm to a packed field. */
                    || convs[0]->need_temporary_p
@@ -8792,7 +8792,7 @@ build_special_member_call (tree instance, tree name, vec<tree, va_gc> **args,
      of the destination, the initializer expression is used to initialize the
      destination object."  Handle that here to avoid doing overload
      resolution.  */
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && args && vec_safe_length (*args) == 1
       && name == complete_ctor_identifier)
     {
index cd63c21567a8c7f37442971229e504f545793fa1..97e29c0604e028c52b7c502c28475cfe06989656 100644 (file)
@@ -4317,7 +4317,7 @@ build_base_field (record_layout_info rli, tree binfo,
         back end issues with overlapping FIELD_DECLs, but that doesn't seem to
         be a problem anymore.  We need them to handle initialization of C++17
         aggregate bases.  */
-      if (cxx_dialect >= cxx1z && !BINFO_VIRTUAL_P (binfo))
+      if (cxx_dialect >= cxx17 && !BINFO_VIRTUAL_P (binfo))
        {
          tree decl = build_base_field_1 (t, basetype, next_field);
          DECL_FIELD_OFFSET (decl) = BINFO_OFFSET (binfo);
@@ -5351,7 +5351,7 @@ finalize_literal_type_property (tree t)
       || TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t))
     CLASSTYPE_LITERAL_P (t) = false;
   else if (CLASSTYPE_LITERAL_P (t) && LAMBDA_TYPE_P (t))
-    CLASSTYPE_LITERAL_P (t) = (cxx_dialect >= cxx1z);
+    CLASSTYPE_LITERAL_P (t) = (cxx_dialect >= cxx17);
   else if (CLASSTYPE_LITERAL_P (t) && !TYPE_HAS_TRIVIAL_DFLT (t)
           && CLASSTYPE_NON_AGGREGATE (t)
           && !TYPE_HAS_CONSTEXPR_CTOR (t))
@@ -5394,9 +5394,9 @@ explain_non_literal_class (tree t)
     return;
 
   inform (0, "%q+T is not literal because:", t);
-  if (cxx_dialect < cxx1z && LAMBDA_TYPE_P (t))
+  if (cxx_dialect < cxx17 && LAMBDA_TYPE_P (t))
     inform (0, "  %qT is a closure type, which is only literal in "
-           "C++1z and later", t);
+           "C++17 and later", t);
   else if (TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t))
     inform (0, "  %q+T has a non-trivial destructor", t);
   else if (CLASSTYPE_NON_AGGREGATE (t)
index 2d2f3b854ba72b3f35adc68a37ed5b9092962029..a89ee4993940fce562a803d38e557f359a20ad84 100644 (file)
@@ -3304,7 +3304,7 @@ var_in_constexpr_fn (tree t)
 bool
 var_in_maybe_constexpr_fn (tree t)
 {
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && DECL_FUNCTION_SCOPE_P (t)
       && LAMBDA_FUNCTION_P (DECL_CONTEXT (t)))
     return true;
index f4d6f802cbefef019a62dd013c83cf8417fa538d..e5085989e7d90b11360e93ff7d4178387ec5d819 100644 (file)
@@ -3884,7 +3884,7 @@ more_aggr_init_expr_args_p (const aggr_init_expr_arg_iterator *iter)
    declared with constexpr specifier are implicitly inline variables.  */
 #define DECL_INLINE_VAR_P(NODE) \
   (DECL_VAR_DECLARED_INLINE_P (NODE)                           \
-   || (cxx_dialect >= cxx1z                                    \
+   || (cxx_dialect >= cxx17                                    \
        && DECL_DECLARED_CONSTEXPR_P (NODE)                     \
        && DECL_CLASS_SCOPE_P (NODE)))
 
index 6101bdf2bc83a13b615a68de7fac7d3af14a1fb1..858747eecfc35c24e8de80f9bb2a947d1032f1f6 100644 (file)
@@ -2909,7 +2909,7 @@ redeclaration_error_message (tree newdecl, tree olddecl)
         if the variable is defined within the class with constexpr
         specifier is declaration rather than definition (and
         deprecated).  */
-      if (cxx_dialect >= cxx1z
+      if (cxx_dialect >= cxx17
          && DECL_CLASS_SCOPE_P (olddecl)
          && DECL_DECLARED_CONSTEXPR_P (olddecl)
          && !DECL_INITIAL (newdecl))
@@ -4050,7 +4050,7 @@ cxx_init_decl_processing (void)
   std_node = current_namespace;
   pop_namespace ();
 
-  flag_noexcept_type = (cxx_dialect >= cxx1z);
+  flag_noexcept_type = (cxx_dialect >= cxx17);
 
   c_common_nodes_and_builtins ();
 
@@ -4150,7 +4150,7 @@ cxx_init_decl_processing (void)
       aligned_new_threshold = 1;
     }
   if (aligned_new_threshold == -1)
-    aligned_new_threshold = (cxx_dialect >= cxx1z) ? 1 : 0;
+    aligned_new_threshold = (cxx_dialect >= cxx17) ? 1 : 0;
   if (aligned_new_threshold == 1)
     aligned_new_threshold = malloc_alignment () / BITS_PER_UNIT;
 
@@ -5573,7 +5573,7 @@ next_initializable_field (tree field)
         && (TREE_CODE (field) != FIELD_DECL
             || (DECL_C_BIT_FIELD (field) && !DECL_NAME (field))
             || (DECL_ARTIFICIAL (field)
-                && !(cxx_dialect >= cxx1z && DECL_FIELD_IS_BASE (field)))))
+                && !(cxx_dialect >= cxx17 && DECL_FIELD_IS_BASE (field)))))
     field = DECL_CHAIN (field);
 
   return field;
@@ -5585,7 +5585,7 @@ next_initializable_field (tree field)
 bool
 is_direct_enum_init (tree type, tree init)
 {
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && TREE_CODE (type) == ENUMERAL_TYPE
       && ENUM_FIXED_UNDERLYING_TYPE_P (type)
       && TREE_CODE (init) == CONSTRUCTOR
@@ -6351,7 +6351,7 @@ check_initializer (tree decl, tree init, int flags, vec<tree, va_gc> **cleanups)
 
       if (cxx_dialect < cxx11)
        error ("initializer invalid for static member with constructor");
-      else if (cxx_dialect < cxx1z)
+      else if (cxx_dialect < cxx17)
        error ("non-constant in-class initialization invalid for static "
               "member %qD", decl);
       else
@@ -6727,9 +6727,9 @@ cp_finish_decl (tree decl, tree init, bool init_const_expr_p,
      or local register variable extension.  */
   if (VAR_P (decl) && DECL_REGISTER (decl) && asmspec_tree == NULL_TREE)
     {
-      if (cxx_dialect >= cxx1z)
+      if (cxx_dialect >= cxx17)
        pedwarn (DECL_SOURCE_LOCATION (decl), OPT_Wregister,
-                "ISO C++1z does not allow %<register%> storage "
+                "ISO C++17 does not allow %<register%> storage "
                 "class specifier");
       else
        warning_at (DECL_SOURCE_LOCATION (decl), OPT_Wregister,
@@ -9787,10 +9787,10 @@ mark_inline_variable (tree decl)
             "%qD declared at block scope", decl);
       inlinep = false;
     }
-  else if (cxx_dialect < cxx1z)
+  else if (cxx_dialect < cxx17)
     pedwarn (DECL_SOURCE_LOCATION (decl), 0,
             "inline variables are only available "
-            "with -std=c++1z or -std=gnu++1z");
+            "with -std=c++17 or -std=gnu++17");
   if (inlinep)
     {
       retrofit_lang_decl (decl);
@@ -10522,7 +10522,7 @@ grokdeclarator (const cp_declarator *declarator,
   /* We might have ignored or rejected some of the qualifiers.  */
   type_quals = cp_type_quals (type);
 
-  if (cxx_dialect >= cxx1z && type && is_auto (type)
+  if (cxx_dialect >= cxx17 && type && is_auto (type)
       && innermost_code != cdk_function
       && id_declarator && declarator != id_declarator)
     if (tree tmpl = CLASS_PLACEHOLDER_TEMPLATE (type))
@@ -11730,7 +11730,7 @@ grokdeclarator (const cp_declarator *declarator,
        error ("cannot use %<::%> in parameter declaration");
 
       if (type_uses_auto (type)
-         && !(cxx_dialect >= cxx1z && template_parm_flag))
+         && !(cxx_dialect >= cxx17 && template_parm_flag))
        {
          if (cxx_dialect >= cxx14)
            error ("%<auto%> parameter not permitted in this context");
@@ -12063,7 +12063,7 @@ grokdeclarator (const cp_declarator *declarator,
                  mark_inline_variable (decl);
 
                if (!DECL_VAR_DECLARED_INLINE_P (decl)
-                   && !(cxx_dialect >= cxx1z && constexpr_p))
+                   && !(cxx_dialect >= cxx17 && constexpr_p))
                  /* Even if there is an in-class initialization, DECL
                     is considered undefined until an out-of-class
                     definition is provided, unless this is an inline
@@ -12332,9 +12332,9 @@ grokdeclarator (const cp_declarator *declarator,
        /* Warn about register storage specifiers on PARM_DECLs.  */
        if (TREE_CODE (decl) == PARM_DECL)
          {
-           if (cxx_dialect >= cxx1z)
+           if (cxx_dialect >= cxx17)
              pedwarn (DECL_SOURCE_LOCATION (decl), OPT_Wregister,
-                      "ISO C++1z does not allow %<register%> storage "
+                      "ISO C++17 does not allow %<register%> storage "
                       "class specifier");
            else
              warning_at (DECL_SOURCE_LOCATION (decl), OPT_Wregister,
@@ -12601,8 +12601,7 @@ grokparms (tree parmlist, tree *parms)
            }
          else if (abstract_virtuals_error (decl, type))
            any_error = 1;  /* Seems like a good idea.  */
-         else if (cxx_dialect < cxx1z
-                  && POINTER_TYPE_P (type))
+         else if (cxx_dialect < cxx17 && POINTER_TYPE_P (type))
            {
              /* Before C++17 DR 393:
                 [dcl.fct]/6, parameter types cannot contain pointers
@@ -13803,7 +13802,7 @@ xref_basetypes (tree ref, tree base_list)
 
       /* Before C++17, an aggregate cannot have base classes.  In C++17, an
         aggregate can't have virtual, private, or protected base classes.  */
-      if (cxx_dialect < cxx1z
+      if (cxx_dialect < cxx17
          || access != access_public_node
          || via_virtual)
        CLASSTYPE_NON_AGGREGATE (ref) = true;
@@ -15574,7 +15573,7 @@ finish_function (int flags)
     check_function_concept (fndecl);
 
   /* Lambda closure members are implicitly constexpr if possible.  */
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && LAMBDA_TYPE_P (CP_DECL_CONTEXT (fndecl)))
     DECL_DECLARED_CONSTEXPR_P (fndecl)
       = ((processing_template_decl
index 9ba3df10363c90ec89b61514aa0357d2771e3d64..e4412569a611012a67d2fd5c29450955d1ee9b62 100644 (file)
@@ -155,7 +155,7 @@ begin_lambda_type (tree lambda)
 
   /* In C++17, assume the closure is literal; we'll clear the flag later if
      necessary.  */
-  if (cxx_dialect >= cxx1z)
+  if (cxx_dialect >= cxx17)
     CLASSTYPE_LITERAL_P (type) = true;
 
   /* Clear base types.  */
index 15f442133e6711ff6f6bb7efa0f03279a82d1752..33cd00e33147ee00a222854773d370bf18c2423e 100644 (file)
@@ -116,7 +116,7 @@ struct GTY(()) globals {
   bool need_abi_warning;
 
   /* True if the mangling will be different in C++17 mode.  */
-  bool need_cxx1z_warning;
+  bool need_cxx17_warning;
 };
 
 static GTY (()) globals G;
@@ -362,7 +362,7 @@ write_exception_spec (tree spec)
 
   if (!flag_noexcept_type)
     {
-      G.need_cxx1z_warning = true;
+      G.need_cxx17_warning = true;
       return;
     }
 
@@ -3666,7 +3666,7 @@ start_mangling (const tree entity)
 {
   G.entity = entity;
   G.need_abi_warning = false;
-  G.need_cxx1z_warning = false;
+  G.need_cxx17_warning = false;
   obstack_free (&name_obstack, name_base);
   mangle_obstack = &name_obstack;
   name_base = obstack_alloc (&name_obstack, 0);
@@ -3853,7 +3853,7 @@ mangle_decl (const tree decl)
     }
   SET_DECL_ASSEMBLER_NAME (decl, id);
 
-  if (G.need_cxx1z_warning
+  if (G.need_cxx17_warning
       && (TREE_PUBLIC (decl) || DECL_REALLY_EXTERN (decl)))
     warning_at (DECL_SOURCE_LOCATION (decl), OPT_Wnoexcept_type,
                "mangled name for %qD will change in C++17 because the "
index 4bfae3655d5b1d7f41d8ba6454fca0775fa48f9d..c9cb3cbe55bb1955f356544264cb359eb8440cc9 100644 (file)
@@ -3163,9 +3163,9 @@ cp_parser_diagnose_invalid_type_name (cp_parser *parser, tree id,
       error_at (location,
                "invalid use of template-name %qE without an argument list",
                decl);
-      if (DECL_CLASS_TEMPLATE_P (decl) && cxx_dialect < cxx1z)
+      if (DECL_CLASS_TEMPLATE_P (decl) && cxx_dialect < cxx17)
        inform (location, "class template argument deduction is only available "
-               "with -std=c++1z or -std=gnu++1z");
+               "with -std=c++17 or -std=gnu++17");
       inform (DECL_SOURCE_LOCATION (decl), "%qD declared here", decl);
     }
   else if (TREE_CODE (id) == BIT_NOT_EXPR)
@@ -5034,10 +5034,10 @@ cp_parser_primary_expression (cp_parser *parser,
          {
            expr = cp_parser_fold_expression (parser, expr);
            if (expr != error_mark_node
-               && cxx_dialect < cxx1z
+               && cxx_dialect < cxx17
                && !in_system_header_at (input_location))
              pedwarn (input_location, 0, "fold-expressions only available "
-                      "with -std=c++1z or -std=gnu++1z");
+                      "with -std=c++17 or -std=gnu++17");
          }
        else
          /* Let the front end know that this expression was
@@ -10200,9 +10200,9 @@ cp_parser_lambda_introducer (cp_parser* parser, tree lambda_expr)
          && cp_lexer_nth_token_is_keyword (parser->lexer, 2, RID_THIS))
        {
          location_t loc = cp_lexer_peek_token (parser->lexer)->location;
-         if (cxx_dialect < cxx1z)
+         if (cxx_dialect < cxx17)
            pedwarn (loc, 0, "%<*this%> capture only available with "
-                            "-std=c++1z or -std=gnu++1z");
+                            "-std=c++17 or -std=gnu++17");
          cp_lexer_consume_token (parser->lexer);
          cp_lexer_consume_token (parser->lexer);
          add_capture (lambda_expr,
@@ -10474,12 +10474,12 @@ cp_parser_lambda_declarator_opt (cp_parser* parser, tree lambda_expr)
 
     if (lambda_specs.locations[ds_constexpr])
       {
-       if (cxx_dialect >= cxx1z)
+       if (cxx_dialect >= cxx17)
          return_type_specs.locations[ds_constexpr]
            = lambda_specs.locations[ds_constexpr];
        else
          error_at (lambda_specs.locations[ds_constexpr], "%<constexpr%> "
-                   "lambda only available with -std=c++1z or -std=gnu++1z");
+                   "lambda only available with -std=c++17 or -std=gnu++17");
       }
 
     p = obstack_alloc (&declarator_obstack, 0);
@@ -11284,9 +11284,9 @@ cp_parser_selection_statement (cp_parser* parser, bool *if_p,
          {
            cx = true;
            cp_token *tok = cp_lexer_consume_token (parser->lexer);
-           if (cxx_dialect < cxx1z && !in_system_header_at (tok->location))
+           if (cxx_dialect < cxx17 && !in_system_header_at (tok->location))
              pedwarn (tok->location, 0, "%<if constexpr%> only available "
-                      "with -std=c++1z or -std=gnu++1z");
+                      "with -std=c++17 or -std=gnu++17");
          }
 
        /* Look for the `('.  */
@@ -11310,10 +11310,10 @@ cp_parser_selection_statement (cp_parser* parser, bool *if_p,
        if (cp_parser_init_statement_p (parser))
          {
            tree decl;
-           if (cxx_dialect < cxx1z)
+           if (cxx_dialect < cxx17)
              pedwarn (cp_lexer_peek_token (parser->lexer)->location, 0,
                       "init-statement in selection statements only available "
-                      "with -std=c++1z or -std=gnu++1z");
+                      "with -std=c++17 or -std=gnu++17");
            cp_parser_init_statement (parser, &decl);
          }
 
@@ -11884,7 +11884,7 @@ cp_convert_range_for (tree statement, tree range_decl, tree range_expr,
                  /*is_constant_init*/false, NULL_TREE,
                  LOOKUP_ONLYCONVERTING);
 
-  if (cxx_dialect >= cxx1z)
+  if (cxx_dialect >= cxx17)
     iter_type = cv_unqualified (TREE_TYPE (end_expr));
   end = build_decl (input_location, VAR_DECL,
                    get_identifier ("__for_end"), iter_type);
@@ -12024,7 +12024,7 @@ cp_parser_perform_range_for_lookup (tree range, tree *begin, tree *end)
             be the same, as required by the multiple auto declaration.  */
          if (!same_type_p (iter_type, cv_unqualified (TREE_TYPE (*end))))
            {
-             if (cxx_dialect >= cxx1z
+             if (cxx_dialect >= cxx17
                  && (build_x_binary_op (input_location, NE_EXPR,
                                         *begin, ERROR_MARK,
                                         *end, ERROR_MARK,
@@ -13178,9 +13178,9 @@ cp_parser_decomposition_declaration (cp_parser *parser,
        }
     }
 
-  if (cxx_dialect < cxx1z)
+  if (cxx_dialect < cxx17)
     pedwarn (loc, 0, "structured bindings only available with "
-                    "-std=c++1z or -std=gnu++1z");
+                    "-std=c++17 or -std=gnu++17");
 
   tree pushed_scope;
   cp_declarator *declarator = make_declarator (cdk_decomp);
@@ -13771,7 +13771,7 @@ cp_parser_linkage_specification (cp_parser* parser)
 
    static_assert-declaration:
      static_assert ( constant-expression , string-literal ) ; 
-     static_assert ( constant-expression ) ; (C++1Z)
+     static_assert ( constant-expression ) ; (C++17)
 
    If MEMBER_P, this static_assert is a class member.  */
 
@@ -13812,10 +13812,10 @@ cp_parser_static_assert(cp_parser *parser, bool member_p)
 
   if (cp_lexer_peek_token (parser->lexer)->type == CPP_CLOSE_PAREN)
     {
-      if (cxx_dialect < cxx1z)
+      if (cxx_dialect < cxx17)
        pedwarn (input_location, OPT_Wpedantic,
                 "static_assert without a message "
-                "only available with -std=c++1z or -std=gnu++1z");
+                "only available with -std=c++17 or -std=gnu++17");
       /* Eat the ')'  */
       cp_lexer_consume_token (parser->lexer);
       message = build_string (1, "");
@@ -17040,7 +17040,7 @@ cp_parser_simple_type_specifier (cp_parser* parser,
 
       /* Don't gobble tokens or issue error messages if this is an
         optional type-specifier.  */
-      if ((flags & CP_PARSER_FLAGS_OPTIONAL) || cxx_dialect >= cxx1z)
+      if ((flags & CP_PARSER_FLAGS_OPTIONAL) || cxx_dialect >= cxx17)
        cp_parser_parse_tentatively (parser);
 
       token = cp_lexer_peek_token (parser->lexer);
@@ -17088,10 +17088,10 @@ cp_parser_simple_type_specifier (cp_parser* parser,
          && identifier_p (DECL_NAME (type)))
        maybe_note_name_used_in_class (DECL_NAME (type), type);
       /* If it didn't work out, we don't have a TYPE.  */
-      if (((flags & CP_PARSER_FLAGS_OPTIONAL) || cxx_dialect >= cxx1z)
+      if (((flags & CP_PARSER_FLAGS_OPTIONAL) || cxx_dialect >= cxx17)
          && !cp_parser_parse_definitely (parser))
        type = NULL_TREE;
-      if (!type && cxx_dialect >= cxx1z)
+      if (!type && cxx_dialect >= cxx17)
        {
          if (flags & CP_PARSER_FLAGS_OPTIONAL)
            cp_parser_parse_tentatively (parser);
@@ -18425,10 +18425,10 @@ cp_parser_namespace_definition (cp_parser* parser)
       if (cp_lexer_next_token_is_not (parser->lexer, CPP_SCOPE))
        break;
   
-      if (!nested_definition_count && cxx_dialect < cxx1z)
+      if (!nested_definition_count && cxx_dialect < cxx17)
         pedwarn (input_location, OPT_Wpedantic,
                  "nested namespace definitions only available with "
-                 "-std=c++1z or -std=gnu++1z");
+                 "-std=c++17 or -std=gnu++17");
 
       /* Nested namespace names can create new namespaces (unlike
         other qualified-ids).  */
@@ -18657,11 +18657,11 @@ cp_parser_using_declaration (cp_parser* parser,
   else if (cp_lexer_next_token_is (parser->lexer, CPP_ELLIPSIS))
     {
       cp_token *ell = cp_lexer_consume_token (parser->lexer);
-      if (cxx_dialect < cxx1z
+      if (cxx_dialect < cxx17
          && !in_system_header_at (ell->location))
        pedwarn (ell->location, 0,
                 "pack expansion in using-declaration only available "
-                "with -std=c++1z or -std=gnu++1z");
+                "with -std=c++17 or -std=gnu++17");
       qscope = make_pack_expansion (qscope);
     }
 
@@ -18720,10 +18720,10 @@ cp_parser_using_declaration (cp_parser* parser,
       && cp_lexer_next_token_is (parser->lexer, CPP_COMMA))
     {
       cp_token *comma = cp_lexer_consume_token (parser->lexer);
-      if (cxx_dialect < cxx1z)
+      if (cxx_dialect < cxx17)
        pedwarn (comma->location, 0,
                 "comma-separated list in using-declaration only available "
-                "with -std=c++1z or -std=gnu++1z");
+                "with -std=c++17 or -std=gnu++17");
       goto again;
     }
 
@@ -19317,7 +19317,7 @@ cp_parser_init_declarator (cp_parser* parser,
       /* Handle C++17 deduction guides.  */
       if (!decl_specifiers->type
          && ctor_dtor_or_conv_p <= 0
-         && cxx_dialect >= cxx1z)
+         && cxx_dialect >= cxx17)
        {
          cp_declarator *id = get_id_declarator (declarator);
          tree name = id->u.id.unqualified_name;
@@ -23085,12 +23085,12 @@ cp_parser_type_parameter_key (cp_parser* parser)
   if ((tag_type = cp_parser_token_is_type_parameter_key (token)) != none_type)
     {
       cp_lexer_consume_token (parser->lexer);
-      if (pedantic && tag_type == typename_type && cxx_dialect < cxx1z)
+      if (pedantic && tag_type == typename_type && cxx_dialect < cxx17)
        /* typename is not allowed in a template template parameter
-          by the standard until C++1Z.  */
+          by the standard until C++17.  */
        pedwarn (token->location, OPT_Wpedantic, 
                 "ISO C++ forbids typename key in template template parameter;"
-                " use -std=c++1z or -std=gnu++1z");
+                " use -std=c++17 or -std=gnu++17");
     }
   else
     cp_parser_error (parser, "expected %<class%> or %<typename%>");
@@ -24122,9 +24122,9 @@ cp_parser_exception_specification_opt (cp_parser* parser)
       /* Restore the saved message.  */
       parser->type_definition_forbidden_message = saved_message;
 
-      if (cxx_dialect >= cxx1z)
+      if (cxx_dialect >= cxx17)
        {
-         error_at (loc, "ISO C++1z does not allow dynamic exception "
+         error_at (loc, "ISO C++17 does not allow dynamic exception "
                         "specifications");
          type_id_list = NULL_TREE;
        }
@@ -24136,7 +24136,7 @@ cp_parser_exception_specification_opt (cp_parser* parser)
   /* In C++17, throw() is equivalent to noexcept (true).  throw()
      is deprecated in C++11 and above as well, but is still widely used,
      so don't warn about it yet.  */
-  else if (cxx_dialect >= cxx1z)
+  else if (cxx_dialect >= cxx17)
     type_id_list = noexcept_true_spec;
   else
     type_id_list = empty_except_spec;
@@ -25133,11 +25133,11 @@ cp_parser_std_attribute_spec (cp_parser *parser)
          if (attr_ns
              && cp_lexer_nth_token_is (parser->lexer, 3, CPP_COLON))
            {
-             if (cxx_dialect < cxx1z
+             if (cxx_dialect < cxx17
                  && !in_system_header_at (input_location))
                pedwarn (input_location, 0,
                         "attribute using prefix only available "
-                        "with -std=c++1z or -std=gnu++1z");
+                        "with -std=c++17 or -std=gnu++17");
 
              cp_lexer_consume_token (parser->lexer);
              cp_lexer_consume_token (parser->lexer);
@@ -26197,7 +26197,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
      nested-name-specifier.  Except in C++17 mode, where we
      might be declaring a guiding declaration.  */
   if (!nested_name_specifier && outside_class_specifier_p
-      && cxx_dialect < cxx1z)
+      && cxx_dialect < cxx17)
     constructor_p = false;
   else if (nested_name_specifier == error_mark_node)
     constructor_p = false;
@@ -26228,7 +26228,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
           };
 
         we must recognize that the nested `S' names a class.  */
-      if (cxx_dialect >= cxx1z)
+      if (cxx_dialect >= cxx17)
        cp_parser_parse_tentatively (parser);
 
       tree type_decl;
@@ -26240,7 +26240,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
                                        /*class_head_p=*/false,
                                        /*is_declaration=*/false);
 
-      if (cxx_dialect >= cxx1z
+      if (cxx_dialect >= cxx17
          && !cp_parser_parse_definitely (parser))
        {
          type_decl = NULL_TREE;
index ec7bbc890c6b93a0e1126313ebad4939573b2254..f12ab2605d876fd1c30e83b38f8a437eca35a08c 100644 (file)
@@ -4551,7 +4551,7 @@ mark_template_parm (tree t, void* data)
     }
 
   /* In C++17 the type of a non-type argument is a deduced context.  */
-  if (cxx_dialect >= cxx1z
+  if (cxx_dialect >= cxx17
       && TREE_CODE (t) == TEMPLATE_PARM_INDEX)
     for_each_template_parm (TREE_TYPE (t),
                            &mark_template_parm,
@@ -6475,7 +6475,7 @@ convert_nontype_argument (tree type, tree expr, tsubst_flags_t complain)
           to leave it in that form rather than lower it to a
           CONSTRUCTOR.  */;
       else if (INTEGRAL_OR_ENUMERATION_TYPE_P (type)
-              || cxx_dialect >= cxx1z)
+              || cxx_dialect >= cxx17)
        {
          /* C++17: A template-argument for a non-type template-parameter shall
             be a converted constant expression (8.20) of the type of the
@@ -6663,7 +6663,7 @@ convert_nontype_argument (tree type, tree expr, tsubst_flags_t complain)
                       orig_expr, type, decl);
              return NULL_TREE;
            }
-         else if ((cxx_dialect >= cxx11 && cxx_dialect < cxx1z)
+         else if ((cxx_dialect >= cxx11 && cxx_dialect < cxx17)
                   && decl_linkage (decl) == lk_none)
            {
              if (complain & tf_error)
@@ -10817,7 +10817,7 @@ instantiate_class_template_1 (tree type)
       tree decl = lambda_function (type);
       if (decl)
        {
-         if (cxx_dialect >= cxx1z)
+         if (cxx_dialect >= cxx17)
            CLASSTYPE_LITERAL_P (type) = true;
 
          if (!DECL_TEMPLATE_INFO (decl)
@@ -19543,7 +19543,7 @@ type_unification_real (tree tparms,
       tsubst_flags_t complain = (explain_p
                                 ? tf_warning_or_error
                                 : tf_none);
-      bool tried_array_deduction = (cxx_dialect < cxx1z);
+      bool tried_array_deduction = (cxx_dialect < cxx17);
 
       for (i = 0; i < ntparms; i++)
        {
@@ -20918,7 +20918,7 @@ unify (tree tparms, tree targs, tree parm, tree arg, int strict,
       else if (uses_template_parms (tparm))
        {
          /* We haven't deduced the type of this parameter yet.  */
-         if (cxx_dialect >= cxx1z
+         if (cxx_dialect >= cxx17
              /* We deduce from array bounds in try_array_deduction.  */
              && !(strict & UNIFY_ALLOW_INTEGER))
            {
@@ -21890,7 +21890,7 @@ get_partial_spec_bindings (tree tmpl, tree spec_tmpl, tree args)
   else
     deduced_args = innermost_deduced_args;
 
-  bool tried_array_deduction = (cxx_dialect < cxx1z);
+  bool tried_array_deduction = (cxx_dialect < cxx17);
  again:
   if (unify (tparms, deduced_args,
             INNERMOST_TEMPLATE_ARGS (spec_args),
@@ -23707,7 +23707,7 @@ dependent_type_p_r (tree type)
           arg_type = TREE_CHAIN (arg_type))
        if (dependent_type_p (TREE_VALUE (arg_type)))
          return true;
-      if (cxx_dialect >= cxx1z)
+      if (cxx_dialect >= cxx17)
        {
          /* A value-dependent noexcept-specifier makes the type dependent.  */
          tree spec = TYPE_RAISES_EXCEPTIONS (type);
index 0a09998aa21b94828739e758cb078a03cac69d30..aa5d1288a5a0fb3693c11948b0a307beb5cfbc14 100644 (file)
@@ -6177,11 +6177,11 @@ cp_build_unary_op (enum tree_code code, tree xarg, bool noconvert,
              }
            else
              {
-               if (cxx_dialect >= cxx1z)
+               if (cxx_dialect >= cxx17)
                  {
                    if (complain & tf_error)
                      error ("use of an operand of type %qT in "
-                            "%<operator++%> is forbidden in C++1z",
+                            "%<operator++%> is forbidden in C++17",
                             boolean_type_node);
                    return error_mark_node;
                  }
index e9aca395911dc1145b17a0ce71dd3af2d33bfb82..82e18ecb17893c0137306c1a4dff2f4f2eb8d408 100644 (file)
@@ -1364,7 +1364,7 @@ process_init_constructor_record (tree type, tree init,
   gcc_assert (TREE_CODE (type) == RECORD_TYPE);
   gcc_assert (!CLASSTYPE_VBASECLASSES (type));
   gcc_assert (!TYPE_BINFO (type)
-             || cxx_dialect >= cxx1z
+             || cxx_dialect >= cxx17
              || !BINFO_N_BASE_BINFOS (TYPE_BINFO (type)));
   gcc_assert (!TYPE_POLYMORPHIC_P (type));
 
@@ -1384,7 +1384,7 @@ process_init_constructor_record (tree type, tree init,
 
       if (TREE_CODE (field) != FIELD_DECL
          || (DECL_ARTIFICIAL (field)
-             && !(cxx_dialect >= cxx1z && DECL_FIELD_IS_BASE (field))))
+             && !(cxx_dialect >= cxx17 && DECL_FIELD_IS_BASE (field))))
        continue;
 
       /* If this is a bitfield, first convert to the declared type.  */
index 6e16ffb0e6536053f1fafd1c12483c2388f4fef7..8e9cba378c3017e1b6807070fcfd4d04f5ed901d 100644 (file)
@@ -1877,9 +1877,7 @@ selected, the value of the macro is
 @code{199711L} for the 1998 C++ standard,
 @code{201103L} for the 2011 C++ standard,
 @code{201402L} for the 2014 C++ standard,
-or an unspecified value strictly larger than @code{201402L} for the
-experimental languages enabled by @option{-std=c++1z} and
-@option{-std=gnu++1z}.
+@code{201703L} for the 2017 C++ standard.
 
 @item __OBJC__
 This macro is defined, with value 1, when the Objective-C compiler is in
index e4cacf26bdb53b4d94ba6ba03a41b1470aa965a4..a727d952fd2d3ce97b01a6cbc088b0d035edec3a 100644 (file)
@@ -1870,15 +1870,15 @@ GNU dialect of @option{-std=c++14}.
 This is the default for C++ code.
 The name @samp{gnu++1y} is deprecated.
 
-@item c++1z
-The next revision of the ISO C++ standard, tentatively planned for
-2017.  Support is highly experimental, and will almost certainly
-change in incompatible ways in future releases.
-
-@item gnu++1z
-GNU dialect of @option{-std=c++1z}.  Support is highly experimental,
-and will almost certainly change in incompatible ways in future
-releases.
+@item c++17
+@itemx c++1z
+The 2017 ISO C++ standard plus amendments.
+The name @samp{c++1z} is deprecated.
+
+@item gnu++17
+@itemx gnu++1z
+GNU dialect of @option{-std=c++17}.
+The name @samp{gnu++1z} is deprecated.
 @end table
 
 @item -fgnu89-inline
@@ -2304,7 +2304,7 @@ specify how much alignment (in bytes) is provided by that function,
 but few users will need to override the default of
 @code{alignof(std::max_align_t)}.
 
-This flag is enabled by default for @option{-std=c++1z}.
+This flag is enabled by default for @option{-std=c++17}.
 
 @item -fcheck-new
 @opindex fcheck-new
@@ -2479,7 +2479,7 @@ Enable the P0522 resolution to Core issue 150, template template
 parameters and default arguments: this allows a template with default
 template arguments as an argument for a template template parameter
 with fewer template parameters.  This flag is enabled by default for
-@option{-std=c++1z}.
+@option{-std=c++17}.
 
 @item -fno-nonansi-builtins
 @opindex fno-nonansi-builtins
@@ -2573,10 +2573,10 @@ cast to convert an arbitrary integer value to the enumerated type.
 @opindex fstrong-eval-order
 Evaluate member access, array subscripting, and shift expressions in
 left-to-right order, and evaluate assignment in right-to-left order,
-as adopted for C++17.  Enabled by default with @option{-std=c++1z}.
+as adopted for C++17.  Enabled by default with @option{-std=c++17}.
 @option{-fstrong-eval-order=some} enables just the ordering of member
 access and shift expressions, and is the default without
-@option{-std=c++1z}.
+@option{-std=c++17}.
 
 @item -ftemplate-backtrace-limit=@var{n}
 @opindex ftemplate-backtrace-limit
@@ -2913,14 +2913,14 @@ the compiler to never throw an exception.
 @item -Wnoexcept-type @r{(C++ and Objective-C++ only)}
 @opindex Wnoexcept-type
 @opindex Wno-noexcept-type
-Warn if the C++1z feature making @code{noexcept} part of a function
+Warn if the C++17 feature making @code{noexcept} part of a function
 type changes the mangled name of a symbol relative to C++14.  Enabled
-by @option{-Wabi} and @option{-Wc++1z-compat}.
+by @option{-Wabi} and @option{-Wc++17-compat}.
 
 @smallexample
 template <class T> void f(T t) @{ t(); @};
 void g() noexcept;
-void h() @{ f(g); @} // in C++14 calls f<void(*)()>, in C++1z calls f<void(*)()noexcept>
+void h() @{ f(g); @} // in C++14 calls f<void(*)()>, in C++17 calls f<void(*)()noexcept>
 @end smallexample
 
 @item -Wclass-memaccess @r{(C++ and Objective-C++ only)}
@@ -2957,7 +2957,7 @@ Warn on uses of the @code{register} storage class specifier, except
 when it is part of the GNU @ref{Explicit Register Variables} extension.
 The use of the @code{register} keyword as storage class specifier has
 been deprecated in C++11 and removed in C++17.
-Enabled by default with @option{-std=c++1z}.
+Enabled by default with @option{-std=c++17}.
 
 @item -Wreorder @r{(C++ and Objective-C++ only)}
 @opindex Wreorder
@@ -5391,7 +5391,7 @@ Warn about suspicious operations on expressions of a boolean type.  For
 instance, bitwise negation of a boolean is very likely a bug in the program.
 For C, this warning also warns about incrementing or decrementing a boolean,
 which rarely makes sense.  (In C++, decrementing a boolean is always invalid.
-Incrementing a boolean is invalid in C++1z, and deprecated otherwise.)
+Incrementing a boolean is invalid in C++17, and deprecated otherwise.)
 
 This warning is enabled by @option{-Wall}.
 
@@ -5898,10 +5898,10 @@ enabled by @option{-Wall}.
 Warn about C++ constructs whose meaning differs between ISO C++ 2011
 and ISO C++ 2014.  This warning is enabled by @option{-Wall}.
 
-@item -Wc++1z-compat @r{(C++ and Objective-C++ only)}
-@opindex Wc++1z-compat
+@item -Wc++17-compat @r{(C++ and Objective-C++ only)}
+@opindex Wc++17-compat
 Warn about C++ constructs whose meaning differs between ISO C++ 2014
-and the forthoming ISO C++ 2017(?).  This warning is enabled by @option{-Wall}.
+and ISO C++ 2017.  This warning is enabled by @option{-Wall}.
 
 @item -Wcast-qual
 @opindex Wcast-qual
index 6a4cd6027954f29b33a437ee6f90659f8f2c7b3a..1a4f1a2b12be24427befa32dccb4c8fd103171b4 100644 (file)
@@ -23395,6 +23395,8 @@ gen_producer_string (void)
 static const char *
 highest_c_language (const char *lang1, const char *lang2)
 {
+  if (strcmp ("GNU C++17", lang1) == 0 || strcmp ("GNU C++17", lang2) == 0)
+    return "GNU C++17";
   if (strcmp ("GNU C++14", lang1) == 0 || strcmp ("GNU C++14", lang2) == 0)
     return "GNU C++14";
   if (strcmp ("GNU C++11", lang1) == 0 || strcmp ("GNU C++11", lang2) == 0)
@@ -23491,6 +23493,9 @@ gen_compile_unit_die (const char *filename)
            language = DW_LANG_C_plus_plus_11;
          else if (strcmp (language_string, "GNU C++14") == 0)
            language = DW_LANG_C_plus_plus_14;
+         else if (strcmp (language_string, "GNU C++17") == 0)
+           /* For now.  */
+           language = DW_LANG_C_plus_plus_14;
        }
     }
   else if (strcmp (language_string, "GNU F77") == 0)
index eadffc168614dd90ff9e606dbacbfb7be56c9791..e53e7be5d64882fab2d9b120aabd6978c43490d5 100644 (file)
@@ -1,5 +1,420 @@
 2017-09-15  Jakub Jelinek  <jakub@redhat.com>
 
+       * lib/g++-dg.exp (g++-dg-runtest): Use 17 instead of 1z.
+       * lib/target-supports.exp (check_effective_target_c++14): Use
+       check_effective_target_c++17 instead of check_effective_target_c++1z.
+       (check_effective_target_c++14_down): Likewise.
+       (check_effective_target_c++1z_only): Rename to ...
+       (check_effective_target_c++17_only): ... this.
+       (check_effective_target_c++1z): Rename to ...
+       (check_effective_target_c++17): ... this.
+       * g++.dg/debug/dwarf2/inline-var-1.C: Use -std=c++17 or -std=gnu++17
+       instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead of c++1z
+       and c++17_only instead of c++1z_only.  Adjust expected diagnostics
+       and comments refering to 1z to 17.
+       * g++.dg/debug/dwarf2/inline-var-2.C: Likewise.
+       * g++.dg/template/partial5.C: Likewise.
+       * g++.dg/template/nontype8.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type5.C: Likewise.
+       * g++.dg/cpp1z/nontype3a.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda4.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type16.C: Likewise.
+       * g++.dg/cpp1z/class-deduction32.C: Likewise.
+       * g++.dg/cpp1z/pr78771.C: Likewise.
+       * g++.dg/cpp1z/elide1.C: Likewise.
+       * g++.dg/cpp1z/fold3.C: Likewise.
+       * g++.dg/cpp1z/class-deduction2.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type12.C: Likewise.
+       * g++.dg/cpp1z/inline-var2.C: Likewise.
+       * g++.dg/cpp1z/eval-order2.C: Likewise.
+       * g++.dg/cpp1z/decomp21.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda11.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda9.C: Likewise.
+       * g++.dg/cpp1z/utf8-neg.C: Likewise.
+       * g++.dg/cpp1z/class-deduction41.C: Likewise.
+       * g++.dg/cpp1z/class-deduction23.C: Likewise.
+       * g++.dg/cpp1z/nodiscard3.C: Likewise.
+       * g++.dg/cpp1z/static_assert-nomsg.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type9.C: Likewise.
+       * g++.dg/cpp1z/class-deduction21.C: Likewise.
+       * g++.dg/cpp1z/range-for1.C: Likewise.
+       * g++.dg/cpp1z/init-statement4.C: Likewise.
+       * g++.dg/cpp1z/udlit-utf8char.C: Likewise.
+       * g++.dg/cpp1z/decomp30.C: Likewise.
+       * g++.dg/cpp1z/class-deduction39.C: Likewise.
+       * g++.dg/cpp1z/register2.C: Likewise.
+       * g++.dg/cpp1z/decomp9.C: Likewise.
+       * g++.dg/cpp1z/regress1.C: Likewise.
+       * g++.dg/cpp1z/direct-enum-init1.C: Likewise.
+       * g++.dg/cpp1z/class-deduction30.C: Likewise.
+       * g++.dg/cpp1z/abbrev2.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto6.C: Likewise.
+       * g++.dg/cpp1z/regress2.C: Likewise.
+       * g++.dg/cpp1z/decomp16.C: Likewise.
+       * g++.dg/cpp1z/bool-increment1.C: Likewise.
+       * g++.dg/cpp1z/aligned-new1.C: Likewise.
+       * g++.dg/cpp1z/decomp3.C: Likewise.
+       * g++.dg/cpp1z/register1.C: Likewise.
+       * g++.dg/cpp1z/namespace-attribs.C: Likewise.
+       * g++.dg/cpp1z/class-deduction1.C: Likewise.
+       * g++.dg/cpp1z/decomp10.C: Likewise.
+       * g++.dg/cpp1z/constexpr-if11.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda10.C: Likewise.
+       * g++.dg/cpp1z/decomp27.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type2.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda6.C: Likewise.
+       * g++.dg/cpp1z/class-deduction9.C: Likewise.
+       * g++.dg/cpp1z/attributes-enum-1.C: Likewise.
+       * g++.dg/cpp1z/decomp11.C: Likewise.
+       * g++.dg/cpp1z/aligned-new3.C: Likewise.
+       * g++.dg/cpp1z/utf8-2.C: Likewise.
+       * g++.dg/cpp1z/lambda-this3.C: Likewise.
+       * g++.dg/cpp1z/decomp-constexpr1.C: Likewise.
+       * g++.dg/cpp1z/byte1.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto9.C: Likewise.
+       * g++.dg/cpp1z/aggr-base4.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda1.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto3.C: Likewise.
+       * g++.dg/cpp1z/utf8-2a.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda7.C: Likewise.
+       * g++.dg/cpp1z/aggr-base6.C: Likewise.
+       * g++.dg/cpp1z/cplusplus.C: Likewise.
+       * g++.dg/cpp1z/class-deduction20.C: Likewise.
+       * g++.dg/cpp1z/aggr-base2.C: Likewise.
+       * g++.dg/cpp1z/class-deduction6.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type3.C: Likewise.
+       * g++.dg/cpp1z/class-deduction31.C: Likewise.
+       * g++.dg/cpp1z/class-deduction25.C: Likewise.
+       * g++.dg/cpp1z/class-deduction18.C: Likewise.
+       * g++.dg/cpp1z/fold9.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type8.C: Likewise.
+       * g++.dg/cpp1z/abbrev1.C: Likewise.
+       * g++.dg/cpp1z/constexpr-if10.C: Likewise.
+       * g++.dg/cpp1z/utf8.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type7.C: Likewise.
+       * g++.dg/cpp1z/aggr-base3.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda8.C: Likewise.
+       * g++.dg/cpp1z/init-statement2.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto4.C: Likewise.
+       * g++.dg/cpp1z/constexpr-if12.C: Likewise.
+       * g++.dg/cpp1z/class-deduction40.C: Likewise.
+       * g++.dg/cpp1z/nontype3.C: Likewise.
+       * g++.dg/cpp1z/class-deduction14.C: Likewise.
+       * g++.dg/cpp1z/fold7.C: Likewise.
+       * g++.dg/cpp1z/nontype2.C: Likewise.
+       * g++.dg/cpp1z/class-deduction15.C: Likewise.
+       * g++.dg/cpp1z/nested-namespace-def1.C: Likewise.
+       * g++.dg/cpp1z/class-deduction13.C: Likewise.
+       * g++.dg/cpp1z/aligned-new7.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type1.C: Likewise.
+       * g++.dg/cpp1z/nontype1.C: Likewise.
+       * g++.dg/cpp1z/init-statement5.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto2.C: Likewise.
+       * g++.dg/cpp1z/decomp17.C: Likewise.
+       * g++.dg/cpp1z/fold4.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda2.C: Likewise.
+       * g++.dg/cpp1z/fold7a.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto5.C: Likewise.
+       * g++.dg/cpp1z/init-statement7.C: Likewise.
+       * g++.dg/cpp1z/aggr-base5.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda5.C: Likewise.
+       * g++.dg/cpp1z/pr79143.C: Likewise.
+       * g++.dg/cpp1z/class-deduction38.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto8.C: Likewise.
+       * g++.dg/cpp1z/class-deduction12.C: Likewise.
+       * g++.dg/cpp1z/decomp20.C: Likewise.
+       * g++.dg/cpp1z/class-deduction22.C: Likewise.
+       * g++.dg/cpp1z/class-deduction29.C: Likewise.
+       * g++.dg/cpp1z/class-deduction8.C: Likewise.
+       * g++.dg/cpp1z/class-deduction43.C: Likewise.
+       * g++.dg/cpp1z/feat-cxx1z.C: Likewise.
+       * g++.dg/cpp1z/fold8.C: Likewise.
+       * g++.dg/cpp1z/init-statement3.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto10.C: Likewise.
+       * g++.dg/cpp1z/class-deduction36.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type17.C: Likewise.
+       * g++.dg/cpp1z/fallthrough1.C: Likewise.
+       * g++.dg/cpp1z/fold1.C: Likewise.
+       * g++.dg/cpp1z/class-deduction26.C: Likewise.
+       * g++.dg/cpp1z/fold-ice1.C: Likewise.
+       * g++.dg/cpp1z/fold5.C: Likewise.
+       * g++.dg/cpp1z/class-deduction34.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type6.C: Likewise.
+       * g++.dg/cpp1z/class-deduction7.C: Likewise.
+       * g++.dg/cpp1z/class-deduction16.C: Likewise.
+       * g++.dg/cpp1z/class-deduction10.C: Likewise.
+       * g++.dg/cpp1z/eval-order3.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda13.C: Likewise.
+       * g++.dg/cpp1z/aggr-base2a.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto1.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda3.C: Likewise.
+       * g++.dg/cpp1z/nontype-auto7.C: Likewise.
+       * g++.dg/cpp1z/decomp15.C: Likewise.
+       * g++.dg/cpp1z/noexcept-type4.C: Likewise.
+       * g++.dg/cpp1z/fold-mangle.C: Likewise.
+       * g++.dg/cpp1z/class-deduction35.C: Likewise.
+       * g++.dg/cpp1z/decomp4.C: Likewise.
+       * g++.dg/cpp1z/class-deduction42.C: Likewise.
+       * g++.dg/cpp1z/init-statement8.C: Likewise.
+       * g++.dg/cpp1z/inline-var1a.C: Likewise.
+       * g++.dg/cpp1z/init-statement6.C: Likewise.
+       * g++.dg/cpp1z/class-deduction17.C: Likewise.
+       * g++.dg/cpp1z/class-deduction28.C: Likewise.
+       * g++.dg/cpp1z/class-deduction27.C: Likewise.
+       * g++.dg/cpp1z/decomp-bitfield1.C: Likewise.
+       * g++.dg/cpp1z/attributes-enum-1a.C: Likewise.
+       * g++.dg/cpp1z/class-deduction11.C: Likewise.
+       * g++.dg/cpp1z/constexpr-lambda12.C: Likewise.
+       * g++.dg/cpp1z/init-statement9.C: Likewise.
+       * g++.dg/cpp1z/class-deduction19.C: Likewise.
+       * g++.dg/cpp1z/class-deduction5.C: Likewise.
+       * g++.dg/cpp1z/fold2.C: Likewise.
+       * g++.dg/cpp1z/class-deduction33.C: Likewise.
+       * g++.dg/cpp1z/class-deduction24.C: Likewise.
+       * g++.dg/cpp1z/aggr-base1.C: Likewise.
+       * g++.dg/cpp1z/fold6.C: Likewise.
+       * g++.dg/cpp1z/decomp12.C: Likewise.
+       * g++.dg/cpp1z/class-deduction4.C: Likewise.
+       * g++.dg/cpp1z/inline-var1.C: Likewise.
+       * g++.dg/cpp1z/aligned-new2.C: Likewise.
+       * g++.dg/cpp1z/class-deduction3.C: Likewise.
+       * g++.dg/other/error3.C: Likewise.
+       * g++.dg/init/new25.C: Likewise.
+       * g++.dg/init/new13.C: Likewise.
+       * g++.dg/tls/diag-2.C: Likewise.
+       * g++.dg/tls/diag-4.C: Likewise.
+       * g++.dg/opt/noreturn-1.C: Likewise.
+       * g++.dg/eh/async-unwind2.C: Likewise.
+       * g++.dg/eh/spec9.C: Likewise.
+       * g++.dg/eh/spec7.C: Likewise.
+       * g++.dg/eh/template1.C: Likewise.
+       * g++.dg/eh/cond4.C: Likewise.
+       * g++.dg/eh/pr41819.C: Likewise.
+       * g++.dg/eh/delete1.C: Likewise.
+       * g++.dg/eh/spec3.C: Likewise.
+       * g++.dg/eh/forced4.C: Likewise.
+       * g++.dg/eh/spec2.C: Likewise.
+       * g++.dg/eh/shadow1.C: Likewise.
+       * g++.dg/eh/pr38662.C: Likewise.
+       * g++.dg/eh/ehopt1.C: Likewise.
+       * g++.dg/eh/spec8.C: Likewise.
+       * g++.dg/eh/init-temp2.C: Likewise.
+       * g++.dg/rtti/crash3.C: Likewise.
+       * g++.dg/warn/Wreturn-type-3.C: Likewise.
+       * g++.dg/warn/register-parm-1.C: Likewise.
+       * g++.dg/warn/register-var-2.C: Likewise.
+       * g++.dg/gcov/gcov-7.C: Likewise.
+       * g++.dg/tree-ssa/pr45605.C: Likewise.
+       * g++.dg/cpp/pr23827_cxx98_neg.C: Likewise.
+       * g++.dg/lookup/exception1.C: Likewise.
+       * g++.dg/ubsan/pr79589.C: Likewise.
+       * g++.dg/tm/pr47340.C: Likewise.
+       * g++.dg/tm/pr46567.C: Likewise.
+       * g++.dg/expr/bitfield5.C: Likewise.
+       * g++.dg/expr/bool1.C: Likewise.
+       * g++.dg/expr/lval3.C: Likewise.
+       * g++.dg/expr/lval4.C: Likewise.
+       * g++.dg/expr/bitfield4.C: Likewise.
+       * g++.dg/expr/bitfield6.C: Likewise.
+       * g++.dg/expr/bool3.C: Likewise.
+       * g++.dg/ext/has_nothrow_constructor.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-7.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-1.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-2.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-4.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-5.C: Likewise.
+       * g++.dg/ext/has_nothrow_copy-6.C: Likewise.
+       * g++.dg/ext/has_nothrow_assign.C: Likewise.
+       * g++.dg/parse/register1.C: Likewise.
+       * g++.dg/parse/error15.C: Likewise.
+       * g++.dg/parse/linkage2.C: Likewise.
+       * g++.dg/concepts/intro2.C: Likewise.
+       * g++.dg/concepts/class.C: Likewise.
+       * g++.dg/concepts/traits1.C: Likewise.
+       * g++.dg/concepts/req5.C: Likewise.
+       * g++.dg/concepts/var-concept5.C: Likewise.
+       * g++.dg/concepts/fn-concept2.C: Likewise.
+       * g++.dg/concepts/traits2.C: Likewise.
+       * g++.dg/concepts/placeholder2.C: Likewise.
+       * g++.dg/concepts/class6.C: Likewise.
+       * g++.dg/concepts/memtmpl1.C: Likewise.
+       * g++.dg/concepts/friend2.C: Likewise.
+       * g++.dg/concepts/template-parm3.C: Likewise.
+       * g++.dg/concepts/template-parm10.C: Likewise.
+       * g++.dg/concepts/explicit-spec1.C: Likewise.
+       * g++.dg/concepts/explicit-spec3.C: Likewise.
+       * g++.dg/concepts/var-templ2.C: Likewise.
+       * g++.dg/concepts/intro5.C: Likewise.
+       * g++.dg/concepts/deduction-constraint1.C: Likewise.
+       * g++.dg/concepts/iconv1.C: Likewise.
+       * g++.dg/concepts/constrained-parm.C: Likewise.
+       * g++.dg/concepts/template-template-parm1.C: Likewise.
+       * g++.dg/concepts/var-concept3.C: Likewise.
+       * g++.dg/concepts/class3.C: Likewise.
+       * g++.dg/concepts/memfun2.C: Likewise.
+       * g++.dg/concepts/req1.C: Likewise.
+       * g++.dg/concepts/disjunction1.C: Likewise.
+       * g++.dg/concepts/req17.C: Likewise.
+       * g++.dg/concepts/pr65848.C: Likewise.
+       * g++.dg/concepts/placeholder4.C: Likewise.
+       * g++.dg/concepts/decl-diagnose.C: Likewise.
+       * g++.dg/concepts/intro7.C: Likewise.
+       * g++.dg/concepts/pr68683.C: Likewise.
+       * g++.dg/concepts/partial-spec4.C: Likewise.
+       * g++.dg/concepts/template-parm5.C: Likewise.
+       * g++.dg/concepts/explicit-inst1.C: Likewise.
+       * g++.dg/concepts/class-deduction1.C: Likewise.
+       * g++.dg/concepts/class1.C: Likewise.
+       * g++.dg/concepts/req15.C: Likewise.
+       * g++.dg/concepts/memfun.C: Likewise.
+       * g++.dg/concepts/pr68434.C: Likewise.
+       * g++.dg/concepts/inherit-ctor4.C: Likewise.
+       * g++.dg/concepts/partial-spec6.C: Likewise.
+       * g++.dg/concepts/var-templ1.C: Likewise.
+       * g++.dg/concepts/template-parm8.C: Likewise.
+       * g++.dg/concepts/explicit-inst3.C: Likewise.
+       * g++.dg/concepts/class4.C: Likewise.
+       * g++.dg/concepts/req6.C: Likewise.
+       * g++.dg/concepts/fn8.C: Likewise.
+       * g++.dg/concepts/class5.C: Likewise.
+       * g++.dg/concepts/placeholder5.C: Likewise.
+       * g++.dg/concepts/req16.C: Likewise.
+       * g++.dg/concepts/req10.C: Likewise.
+       * g++.dg/concepts/var-concept2.C: Likewise.
+       * g++.dg/concepts/auto3.C: Likewise.
+       * g++.dg/concepts/generic-fn-err.C: Likewise.
+       * g++.dg/concepts/pr65552.C: Likewise.
+       * g++.dg/concepts/partial-concept-id2.C: Likewise.
+       * g++.dg/concepts/fn1.C: Likewise.
+       * g++.dg/concepts/partial-spec.C: Likewise.
+       * g++.dg/concepts/template-parm12.C: Likewise.
+       * g++.dg/concepts/diagnostic1.C: Likewise.
+       * g++.dg/concepts/intro1.C: Likewise.
+       * g++.dg/concepts/explicit-inst4.C: Likewise.
+       * g++.dg/concepts/req18.C: Likewise.
+       * g++.dg/concepts/explicit-spec5.C: Likewise.
+       * g++.dg/concepts/var-concept6.C: Likewise.
+       * g++.dg/concepts/fn9.C: Likewise.
+       * g++.dg/concepts/req2.C: Likewise.
+       * g++.dg/concepts/template-parm7.C: Likewise.
+       * g++.dg/concepts/req14.C: Likewise.
+       * g++.dg/concepts/template-parm6.C: Likewise.
+       * g++.dg/concepts/variadic4.C: Likewise.
+       * g++.dg/concepts/fn6.C: Likewise.
+       * g++.dg/concepts/req-neg1.C: Likewise.
+       * g++.dg/concepts/alias3.C: Likewise.
+       * g++.dg/concepts/expression2.C: Likewise.
+       * g++.dg/concepts/partial-spec3.C: Likewise.
+       * g++.dg/concepts/expression3.C: Likewise.
+       * g++.dg/concepts/memfun-err.C: Likewise.
+       * g++.dg/concepts/pr66091.C: Likewise.
+       * g++.dg/concepts/explicit-spec2.C: Likewise.
+       * g++.dg/concepts/equiv.C: Likewise.
+       * g++.dg/concepts/friend1.C: Likewise.
+       * g++.dg/concepts/fn4.C: Likewise.
+       * g++.dg/concepts/var-templ3.C: Likewise.
+       * g++.dg/concepts/explicit-inst2.C: Likewise.
+       * g++.dg/concepts/alias2.C: Likewise.
+       * g++.dg/concepts/regress/alias-decl-42.C: Likewise.
+       * g++.dg/concepts/placeholder6.C: Likewise.
+       * g++.dg/concepts/fn10.C: Likewise.
+       * g++.dg/concepts/req3.C: Likewise.
+       * g++.dg/concepts/variadic2.C: Likewise.
+       * g++.dg/concepts/pr65636.C: Likewise.
+       * g++.dg/concepts/intro6.C: Likewise.
+       * g++.dg/concepts/class2.C: Likewise.
+       * g++.dg/concepts/fn2.C: Likewise.
+       * g++.dg/concepts/req20.C: Likewise.
+       * g++.dg/concepts/req8.C: Likewise.
+       * g++.dg/concepts/placeholder1.C: Likewise.
+       * g++.dg/concepts/pr65854.C: Likewise.
+       * g++.dg/concepts/member-concept.C: Likewise.
+       * g++.dg/concepts/template-parm2.C: Likewise.
+       * g++.dg/concepts/variadic1.C: Likewise.
+       * g++.dg/concepts/fn7.C: Likewise.
+       * g++.dg/concepts/intro4.C: Likewise.
+       * g++.dg/concepts/req13.C: Likewise.
+       * g++.dg/concepts/inherit-ctor3.C: Likewise.
+       * g++.dg/concepts/explicit-spec6.C: Likewise.
+       * g++.dg/concepts/auto1.C: Likewise.
+       * g++.dg/concepts/alias1.C: Likewise.
+       * g++.dg/concepts/fn-concept1.C: Likewise.
+       * g++.dg/concepts/template-parm11.C: Likewise.
+       * g++.dg/concepts/explicit-spec4.C: Likewise.
+       * g++.dg/concepts/partial-concept-id1.C: Likewise.
+       * g++.dg/concepts/req9.C: Likewise.
+       * g++.dg/concepts/req4.C: Likewise.
+       * g++.dg/concepts/pr65681.C: Likewise.
+       * g++.dg/concepts/req7.C: Likewise.
+       * g++.dg/concepts/req12.C: Likewise.
+       * g++.dg/concepts/fn5.C: Likewise.
+       * g++.dg/concepts/alias4.C: Likewise.
+       * g++.dg/concepts/generic-fn.C: Likewise.
+       * g++.dg/concepts/feature-macro.C: Likewise.
+       * g++.dg/concepts/req19.C: Likewise.
+       * g++.dg/concepts/placeholder3.C: Likewise.
+       * g++.dg/concepts/intro3.C: Likewise.
+       * g++.dg/concepts/partial-spec5.C: Likewise.
+       * g++.dg/concepts/template-parm4.C: Likewise.
+       * g++.dg/concepts/dr1430.C: Likewise.
+       * g++.dg/concepts/pr65634.C: Likewise.
+       * g++.dg/concepts/var-concept4.C: Likewise.
+       * g++.dg/concepts/pr67249.C: Likewise.
+       * g++.dg/concepts/expression.C: Likewise.
+       * g++.dg/concepts/pr65575.C: Likewise.
+       * g++.dg/concepts/partial-spec2.C: Likewise.
+       * g++.dg/concepts/template-parm9.C: Likewise.
+       * g++.dg/concepts/inherit-ctor1.C: Likewise.
+       * g++.dg/concepts/equiv2.C: Likewise.
+       * g++.dg/concepts/req11.C: Likewise.
+       * g++.dg/concepts/template-parm1.C: Likewise.
+       * g++.dg/concepts/inherit-ctor2.C: Likewise.
+       * g++.dg/concepts/var-concept1.C: Likewise.
+       * g++.dg/concepts/fn3.C: Likewise.
+       * g++.dg/torture/pr46364.C: Likewise.
+       * g++.dg/torture/stackalign/eh-alloca-1.C: Likewise.
+       * g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
+       * g++.dg/torture/stackalign/eh-vararg-1.C: Likewise.
+       * g++.dg/torture/stackalign/eh-vararg-2.C: Likewise.
+       * g++.dg/torture/stackalign/eh-global-1.C: Likewise.
+       * g++.dg/torture/stackalign/eh-thiscall-1.C: Likewise.
+       * g++.dg/torture/stackalign/eh-inline-2.C: Likewise.
+       * g++.dg/torture/stackalign/eh-inline-1.C: Likewise.
+       * g++.dg/torture/pr52918-1.C: Likewise.
+       * g++.dg/torture/pr49394.C: Likewise.
+       * g++.dg/torture/pr57190.C: Likewise.
+       * g++.dg/cpp0x/static_assert8.C: Likewise.
+       * g++.dg/cpp0x/noexcept19.C: Likewise.
+       * g++.dg/cpp0x/variadic-throw.C: Likewise.
+       * g++.dg/cpp0x/variadic73.C: Likewise.
+       * g++.dg/cpp0x/noexcept02.C: Likewise.
+       * g++.dg/cpp0x/defaulted23.C: Likewise.
+       * g++.dg/cpp0x/noexcept08.C: Likewise.
+       * g++.dg/cpp0x/auto9.C: Likewise.
+       * g++.dg/cpp0x/lambda/lambda-eh2.C: Likewise.
+       * g++.dg/cpp0x/error5.C: Likewise.
+       * c-c++-common/gomp/atomic-12.c: Likewise.
+       * c-c++-common/gomp/atomic-13.c: Likewise.
+       * c-c++-common/gomp/atomic-14.c: Likewise.
+       * c-c++-common/Wvarargs-2.c: Likewise.
+       * c-c++-common/Wvarargs.c: Likewise.
+       * c-c++-common/vector-subscript-2.c: Likewise.
+       * g++.old-deja/g++.robertl/eb123.C: Likewise.
+       * g++.old-deja/g++.eh/tmpl3.C: Likewise.
+       * g++.old-deja/g++.eh/cleanup2.C: Likewise.
+       * g++.old-deja/g++.eh/badalloc1.C: Likewise.
+       * g++.old-deja/g++.eh/throw2.C: Likewise.
+       * g++.old-deja/g++.eh/throw1.C: Likewise.
+       * g++.old-deja/g++.eh/tmpl1.C: Likewise.
+       * g++.old-deja/g++.other/new7.C: Likewise.
+       * g++.old-deja/g++.other/crash30.C: Likewise.
+       * g++.old-deja/g++.other/regstack.C: Likewise.
+       * g++.old-deja/g++.other/crash28.C: Likewise.
+       * g++.old-deja/g++.jason/bool5.C: Likewise.
+       * g++.old-deja/g++.mike/p10416.C: Likewise.
+       * g++.old-deja/g++.mike/eh25.C: Likewise.
+       * g++.old-deja/g++.mike/eh55.C: Likewise.
+
        PR rtl-optimization/82192
        * gcc.c-torture/execute/pr82192.c: New test.
 
index 1eacde1cbf26745b0d5a6e6be967b340cffc2185..a6b51f19e603b7027196a2c77f09c4967a11c595 100644 (file)
@@ -23,7 +23,7 @@ foo0 (int a, int b, ...)
 }
 
 void
-foo1 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+foo1 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
     va_list vp;
     /* 'b' is declared with register storage, but don't warn
index 20d8ec77c03e4480e9d3e58929109795cb4c2825..71d8c5dff93894f9ebfcf062b67e263c90a3dc12 100644 (file)
@@ -23,7 +23,7 @@ foo0 (int a, int b, ...)
 }
 
 void
-foo1 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+foo1 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
     va_list vp;
     /* 'b' is declared with register storage, but don't warn
@@ -45,7 +45,7 @@ foo2 (int a, int b, ...)
 }
 
 void
-foo3 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+foo3 (int a, register int b, ...)      // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
     va_list vp;
     /* 'b' is declared with register storage, so warn.  */
index 07790d9c4516f168b5ebb5315b8e93d6f1930508..a750a7f71a421ab017a11ccaf04c9f8ed9690aa7 100644 (file)
@@ -4,7 +4,7 @@
 /* atomicvar should never be referenced in between the barrier and
    following #pragma omp atomic_load.  */
 /* { dg-final { scan-tree-dump-not "barrier\[^#\]*atomicvar" "gimple" } } */
-/* { dg-skip-if "invalid in C++1z" { c++1z } } */
+/* { dg-skip-if "invalid in C++17" { c++17 } } */
 
 #ifdef __cplusplus
 bool atomicvar, c;
index 83c6560761ae6af3fd94732ce3becf86ff56b7d0..5fd9c1016604a047ba122d8ba597a3141454d838 100644 (file)
@@ -4,6 +4,6 @@
 /* atomicvar should never be referenced in between the barrier and
    following #pragma omp atomic_load.  */
 /* { dg-final { scan-tree-dump-not "barrier\[^#\]*atomicvar" "gimple" } } */
-/* { dg-skip-if "invalid in C++1z" { c++1z } } */
+/* { dg-skip-if "invalid in C++17" { c++17 } } */
 
 #include "atomic-12.c"
index f2dd9fcf89d6e9827f60d68626ebb9fb1d652089..06b76692ec780ad824a413715f45c71f80bacd81 100644 (file)
@@ -1,7 +1,7 @@
 /* PR middle-end/45423 */
 /* { dg-do compile } */
 /* { dg-options "-fopenmp -Wno-deprecated" } */
-/* { dg-skip-if "invalid in C++1z" { c++1z } } */
+/* { dg-skip-if "invalid in C++17" { c++17 } } */
 
 #ifdef __cplusplus
 bool *baz ();
index bfe01fc2740725d7bdd3f4f9379aadef4e774f2f..b81195fdedfd1ae18af9a87e407a616b203f41c9 100644 (file)
@@ -7,6 +7,6 @@
 
 float vf(int i)
 {
-  register vector float a;     // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register vector float a;     // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
   return a[0];
 }
index fdd54bd2af150731559fbc609ca2762d26f91b68..1b643cdd1c9e1fc0ac2d8cd7ca9c0b4296c98261 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 7879d441961750785ab2379ec4eec823193d3b28..2de2aa4da940a5665ea96aa9cf7c41a331f9f9b2 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index a8f0f67e04f91cb1058746dc3e8a34439389b3b5..6e1c39ce1746a3ff55deae20e5fa562d16a7561b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 8ffa0a10e3f0b1492c27854ed6acb9153dae0f09..e7d93d5875f6b43619f3466f5c9e013afd9ad6ed 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index be9237d69fa5cb3e90f2f56c4295e7447644d2c8..0c6fa465fa67a13aa6b05bb3f87caaa7cc5b6d61 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T1, class T2> class A { };
 
index e1a4d7342aa4157d1a907e5e2d365bf8ec30eaf9..7b80fe314b8abaa1a13c3dbc200d40b29f6ca3da 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class...> class tuple {};
 
index ad48cf838ffd2b0ccf1f8b5f33b2edf49a824a1e..476830d9252828b6113f922084e71d82d97fb000 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 concept bool Isint = __is_same_as(T,int);
index 061105756cb0446e9a5286c41d6125d289629c1c..1c5242f8089897e8c2c73ff6ee6bc5bd891fb24c 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class() { return __is_class(T); }
index a2c4f5d1aed887501456e1907ea361604712c807..94a5d23a873aa9284272781b9529d2942368306a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 4b8706d8001bc8687af983cf0d1902aa210a4350..63891282085983feec15f03404038c6c22966601 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index c25c801f1f63d7755c01896d254f513d3cd9fd01..b2757567d4f6bb3d42a711aae8ab675476209fc9 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index af6db2509dbfd310b06ff1d633c209e63f9b36fc..86eecbc457294e6ab2829179a92d02b6cada6705 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class() { return __is_class(T); }
index 218ec9f5a9f094f466900fb7f5316eaff4280835..76398609709c9e7da17358b64ce265119b96b4cf 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool One() { return sizeof(T) >= 4; }
index 4a3a3d70a85c0418a0083c7436c0989da9e86e66..29dcb8ff97e6f07ec39dfc8407b4e82185e42693 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool One() { return sizeof(T) >= 4; }
index 2650caeb9c422b1b66482a25dac69f750771fc3e..feaf3bb64297dba9e1d0160aab6540d3ed59aaaa 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 65785b25fe9b2856476974ea82fdbdf7c4e19ea5..fcbfc8f659587887e737c2aa56cf09d5e25a407a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 typedef concept int CINT; // { dg-error "'concept' cannot appear in a typedef declaration" }
 
index dfb0c6e9436776b2f867d146c99441612905885a..5eec87b3c0bb501587052bca28dba2120aec1de0 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67007
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class U>
 concept bool A =
index 0552c4b06238489131b6c9bdd0aa8e05873fb389..c977eaa8fcda93ae0881ce6754750528f75391e2 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67159
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U>
 concept bool SameAs = __is_same_as(T, U);
index 24472cc296de73a27468f5dd433236db2796de6a..9bd50974f57801df385b010072d92af9b104d55f 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66962
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <typename> struct remove_cv;
 template <typename> struct is_reference;
index 178467a16911c1ee50bbd295bbcf11f33ec91a52..9fd4f4301fcd86d44dd1380c25bc0724a91a22d2 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66092
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <type_traits>
 
index 11e232fe2d5e5a015ec4e645963e05f4e91a5d62..d666d9a7567006c5bcd729d5092434da98b0fc3e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check equivalence of short- and longhand declarations.
 
index 24d419b2ed3e948cd2a1edc2ab170ed8a679b608..694d87a2c5632d17e7aac9a6956ba7feabef6f40 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 
 // template<typename T>
index 89eeb156b5748229faebd51cb07dd39f47a60887..58d8dec0db6ad532153e19451481a99cb1aa1693 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 0319756bfc5c48c31c318ab1879eedeccedce59c..f47b7585e62d56d3242abb0f892e6fca5b9243e6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 177fc6c1368cd8b99b900f0343e3aa4579e4fbd8..00dee2fb2b9b87649bc3ee56f3242a89d1a2c7b0 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index cf0d8988bd301cca594d996bec8b0ea7d1714d65..c0f585c957a8403302a7a01c3969174edee7fb9a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index c6f559cd1af7d71df37aa1e90babf7646a266a73..38730680e14d9360718fe0c33c786c718045522f 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index 8fa7e8aef16625dcc8c0f21a6e916c2676e00f3c..17d48e7c220d1205b66d4bfc7922d835452ad187 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 6294cef5845ed37d9666fe64ce0b0fceb77db0e6..1edc83e95a88cef29889e35721e77bbf9c903faa 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 16698cbb366a19a323daf7d5848806b05479e2fc..963c030d464302cf5f295d2f0dfa9a7d9b877e7b 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index e889c2192bfd90e3bbe17922818943773dbfb926..e0d89bce2d6ad86da38aa8e730f7138c8b5bfca4 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index 0bf7640df27c0e4ab5e96dc2528efeea6bb91d84..0af1df46d60ac1f7289c5938962046d062da63b7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 struct A {
index de68ef89ee6f48d8c1ed392a11849b44429d18f4..6430f89e309c4c386a0697af6fa538206df99ec8 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 #include <iostream>
index 32b79c8f32bb598a9a05aaca610e55684dfca994..3583452d47efaaac781bc0e2abee69b4e669fb7a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C1()
index 77b414e5cfc38c591d4380af6bafa397f4da0cb0..4148aa6511e3f125f5ba3ce031c12e75c27c2066 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C()
index d8ea369814747628b5cf84c395444dcee7ec541f..ad2bfb080a0643bd2dd30e8d20711fb11043cd7c 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #ifndef __cpp_concepts
 #error __cpp_concepts not defined
index 4a8437f010b34a4d1b62a28ee9327fe78dfa1dbb..b858c1ac93f38a1868c52a8c25f07539bfed5d79 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Tuple() { // { dg-error "multiple statements" }
index 86ba936d842b476a9793941278b317f92eaed839..9acc24177ce58f3c5b33e0e593f94fb5e2d25d7b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept auto C1() { return 0; } // { dg-error "deduced return type" }
index c4f9f555e0a9bc2fb1a98d87ccd2bbe914953485..800a0d36f0b948b3a30a25cf9c6420f7f8791ef9 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 859c1d5eb21880a40cfb7885276a496845fdcc89..71bd82c5f6044c3c63457e556d72450cfb30bafb 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Test that constraint satisfaction checks work even when
 // processing template declarations.
index 51a3fb5fd8e0c9d214c40d719ee21b878bf4985f..67e35acc362639d7adc4dc785275477607af9cf9 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index ef704f7e135dcaad7fabcaf581d477654d8b6638..6695f2f98a6d5d5ff21a0dab3aebe9898da86de9 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index 9fa5790fd5e95efc6d28deacefae6f8b060094ff..ecc3d7b1beebee8a12a418c93a9c866045496ea5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index dd9a19e9f195350503e3a24127eac0cf02c90ec5..d4a2e003b9c089bf8e604adfdf95da0bbf782136 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check shorthand notation.
 
index f6f165e099952478698f20f9d20fcd531d032830..12936076449556add0ad827aff452a9abb0b3f4b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Redefinition errors.
 
index dd16a9ae65b58002bf68625d19365e3d13b8b19e..1df21fe9024d55de95deeaac506bffa9acf9f07c 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do link }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // FIXME: What is this actually testing?
 
index e7481be2f05ca1a8d84327770fde574212cf78f2..5c796c7e3b2ad4356a1bde8009d8707a4006ccb6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class() { return __is_class(T); }
index c135bd7010a6ca13a4153dc5d17ea1fd140b5a09..1efde5f744a7ab529ec668d98754b305dceed2c9 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index c78940ce813704c8c7714d5a38e780d99de6f29b..c437c79d01fbb0d75ed5c5e8805f0779e2c6ffed 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Eq() { return requires(T t) { t == t; }; }
index 6268801a260c6f5a4e16eeb59062b578e8c14d5a..5f14905a738624bcad9bf99686755e62f32e0e87 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Eq() { return requires(T t) { t == t; }; }
index 03a47d5c959783a4fa48e3cb93054b1eced1d235..c34f832816ef809747fb1222b263c4f1950eae87 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index d74ea21b6eff82f763db58c0428cf7c273ec6347..7a48e7640d00ba49f77f6f56e8ec6a09c521dc5f 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 #include <type_traits>
index 28f3566d4178809a46d20f61380df1fa48aa8735..38a0b17b1f82d76e7ff9988163bad1973a1c57e2 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67240
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 int foo(int x)
 {
index 6f5115c6c85fdf8eed5ad83c9fec056dc64a20bd..952c8f61ef4941992ec28e06ddc07c5cb0dd0ae7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 435745a1fa9e0db7448d6bfa6887056648d66975..b36b993098ab198cd3cccb0feb8516bf10317bd9 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 07499bb40f9dc301b370de44946a060e867b38ae..c7ad84aa6e7b5963afb0baf691a47c4588354cd7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 4c53205466ddf8a428de0282ce054e86039b82e5..26940ba44be8278a4bb547c7d83de3476b6097b6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 5f036c4b6454b0f3a8f32c3ae41f1050684098b2..ac8a708b107924eaa4092684ee2bd955c7e13de7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C = __is_class(T);
index 1db1d7a493fbfdb4df4cd0099a8cba3a9d1c412c..928cc2e54878fdb67a337f4373c96db71201ddf8 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index 3cb3ecbb8b4b011556bfd60bb29f87ce72f04483..78d091d3a883c0181ecad5cb256f2e366c55b3d5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename ... T>
   concept bool C1 = true;
index 182129165556bc5ab007f0df2ff8385011c156c6..2a3e2ba17e424aa32187f373096dc7d8984645a1 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename ... T>
   concept bool C1 = true;
index 31924f930a7029ab198f8ad8c8fc1d723eb16f0e..c5fac8000c35d3382560833e2fc053b79850902a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T, typename U = int>
   concept bool C()
index f8ed6669f14f0fb091854b56ba93a4352678bd97..6624c8888a9ae145ac8afeded827f0fde1474fe8 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67003
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 namespace X {
   template<class>
index 914c5fd611006d5ab68f9f14db5d58ffa5a98d14..9cb4a76740b5918f497b2876a2038b767224fc44 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66985
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <template <class> class T>
 concept bool _Valid = requires { typename T<int>; };
index 2b0604648313b98911e8b8381291d26ab92c1ace..4eae9f5b30134aaf61e77445e8b31443c2a82d77 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct Base {
   template<typename T>
index f44610a6aa0df4fde9f57ddaa05ddd6392bfa590..a42554ad31a0602f69d8703074739cdc6538edb0 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run}
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 
 template<typename T>
index 523410cab984c8e8950f610c5acac859b2798277..d387234312a9aedd5e93801d93defe252d3b993d 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run}
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <cassert>
 
index c186a1837625d85df3eb1bb1610edaea9d14420a..a5965fc869cde77b76bf76f8b5be7428b6a48cec 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/72415
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<int... Indices>
 struct indices {};
index 6f3d5a3ebf65f5a56d52ff5baaa0419afb9cd8dc..fe0f1d5df690bf87fa724ebcff693ba9bca62307 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 struct A {
index 117400cf1b21486925a1e93cb92146bdb6345668..90a8ec72b2180110a467360b157975b928d169a1 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Type() { return true; }
index 2e6866ecb9f1f58366aa675799d42af80194f8c5..4c1373a0edad437cca799f1cb4a82c2967ac7716 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Make sure that we check partial concept ids
 // with variable concepts.
index 5db9a585090dc066fd7c1f9dc25206c8dc6eeddb..c3836d445ccca438fb08030dacc863e8a0e0ee83 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check that constraints don't break unconstrained partial
 // specializations.
index bc7621bec4d42676ddb44c23978c9c1a5c533993..26d0ff42f557b1d7279d163aa89208cf8be7b25c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67084
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 constexpr bool p = false;
index 9387ce00a1b7ee3a9c6df4002e3d143fa1cb18f6..2ac5b9818e5fc4db7297aacae6c24154f12b2cb6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T> struct A { };
 template <class T> requires false struct A<T*> { };
index 80e41ab8399013370e218b4e4255fe31b9997118..5669bd4ec857aa678eb3d42b794133a01aded8ee 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T> concept bool is_int = __is_same_as(T,int);
 
index 32a5eae693c1534045730e361a40011d25fd61c1..18ef242c27144169538aa8d820a8f07f982f160a 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67138
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 concept bool _Auto = true;
index 50ef28991030f5fb32ea871e28d097fa6eaafd60..af4411baae582792492f674555864faa502fe358 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67152
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 concept bool HasType = requires { typename T::type; };
index 757bcef9b1ce9fe66f5f7887176b705da2111099..bf7f959e2279b18b487bf212fe82a0db791df145 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T, typename U>
 struct is_same
index cf2013e63a6b29c3145e40d530755bb2db4d7113..c8981b617de52ef842666291fef55606a9e0be36 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check argument deduction constraints.
 // TODO: We shoul have more of these...
index 208fc29a0d3f9bf4aae46d23f0af98b759a9567a..44dba8b98a2cd20d553313eb449787970b11e877 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66218
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U>
 concept bool Same = __is_same_as(T, U);
index 2fb47580cdba857c6465eb0d138ff8259d2ab125..b35238c1ce23f1e0615bbc9d05605dbef5e8a209 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66218
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U>
 concept bool Same = __is_same_as(T, U);
index e1d3092a77db31ec5fada751f735d7ecc7f4a709..c0b67b9e78cb1ae9a5ac4d41bcd5603ac3f6e70f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U>
 concept bool Same = __is_same_as(T, U);
index ee218fdf9042b9003ae21e0282f0e50a5a7aad67..ab56c637d3edb4d51a91ae2c85d8db6f5e3f1cde 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <int I> struct B { static const int i = I; };
 template <int I> concept bool Few = I < 10;
index c1cc0b165b0d769c2b955fdb6b1d6f865c69abb6..57375d748025fcc121a0109a6d865caf7366da05 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool Concept() {
index 18e805959de5b02cd7d1749d26aca53a4b15526c..e027dccf7d83ab0d80bc5dd7589bdc18d7e0797b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C = false;
index df64a3f386a504c30054bcd0b00febf38ee9b0f6..db36a6be29f6c5c203c992a010a16cd4bc335449 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C1() {
index ddeef8203146361d36b149909302054df420f27f..01c72a7fac4e898ffd7c295463298fb4b6e21931 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 using TD = int;
 
index fcbbab376ac6f1520d9633fd6b7c35e2923fbf10..1df9a5949d88f2ee51ff0a674278b8376626ae1d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C()
index 4affa2366d2f0e029c643d59a3a6e6ddedaacdc5..5af6e7dc622fc7211e8f32c7561152218390cd2e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Performance test... This should be fast.
 
index c615ed7b4da4364276152ac22d4683d6427f2a02..395fac4f5016d7c8fb729388ef373b4a6b43925a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Handle alias templates in type requirements.
 
index b53f64c7bd3a4299532596348f49998e2311093f..e5b3c287c84c0363760cb53f29f2ccb4aa6f9491 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C1()
index 9cfada59b3eecb461a57b9ae4d50bf85ae019d60..87e9bb582481138ce3b41545bcb4418007956e63 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<class T> concept bool C1 = true;
 template<class A, class B> struct Pair {};
index ece5bb7c0019b3f60b7e56807662fdd40f5236ed..19ce383246a00a26ecae888ff48c837636385491 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class>
 concept bool C1 () {
index eef1b33c96a6b771a259c453889a7dc70ece1120..31a98f3cf88f8fc13f30fe7c53f3713807d60af8 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <typename, typename>
 struct is_same {
index 611a89608bc9abe75ddda7e7fb2058ac10362c48..6d5a4d5fdea8587f53f27ac2c4709efdc5116854 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/59200
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct A
 {
index 6c80d81a3026f422f8ec60de8087e90aa0282748..97b45cd15f071d4685f7aafb09001244ea0d4434 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 void f1(int a) requires true;         // OK
 auto f2(int a) -> bool requires true; // OK
index 0636f1dfdb8263eb4e06d662707ba483f450ea2d..688cb19ad433bf1fd81de91e9e820a261c4e53aa 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class () { return __is_class(T); }
index 0352a08113b1288566fef46b5d3b08738fbae49c..8cbd89f294b7eec45a2afac78a19a0a0e633eadf 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Test that standard conversions are checked with
 // implicit conversion constraints.
index 1a259e82990eba2083f9244b403a088e36d8d559..2d0c5c005d91582db8cdf393a035f3e074b7b344 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check that we can evaluate constant requires-expressions
 // as constant expressions, for the curious case when they
index f28551443c36603e072badd6a8883f10e807e62a..38c2c3e1ada83bf064c75494925095bdee2c3a82 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66218
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <type_traits>
 
index 559c12874093be1b2c10f8a254f8b674e06dda9b..2f58742c532e65e54bf553128abd540d52060fb6 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66758
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class...Args>
 concept bool Constructible =
index de7efcd2c738d926af8d91cd1e801600fd0d99cb..de00a1eb49cab3fae9aea71fda8adab70aa93204 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66758
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U>
 concept bool C = requires (T t, U u) { t + u; };
index 537669bbcb43badbb6f58838e85b05e6b87d4b06..53d796c1a8405170e7f00eed6c04d86e830072d0 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66832
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class U, unsigned N>
   requires requires (T& t, U &u) { t.foo(); u.foo(); }
index 2704c38bacb47fda6e4f480f9d61e842de4ab8a6..ee80da078cd9d410a3ed1144486b05a8e3061f4a 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66988
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <type_traits>
 
index af622e2fb6d4ab3baa5117727927f940daf499cb..e1e3eac416cab2c8cc6d585d195cd0deabbd1d13 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67018
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <typename T>
 constexpr bool Val = true;
index 0b6848b42f25eb03d044af8206253bfe2570b0a4..5ddb9e7dda9f62dd979b731ad428a7865c998fe2 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class> struct all_same {
   static constexpr bool value = 1;
index 0564b0ce8b0641a687db7188ffd47774d9b20f31..d52ac23ddda22585f036aa23a4d1e3d54c524669 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct B
 {
index b1258c4508b550b28c4a677e5ceef12200976727..3f35ee8f0f5f6f637ce11c2961fccb099228fe9e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class () { return __is_class(T); }
index e89e905a88f4b63ef3c1b9249f13cc1a8f20e778..38ade5607531670cd14a93ab535a015f1639150d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T> concept bool C = true;
 
index 5bc7ac790a34d406289e1845897399e1964a8fe0..8322e71623bac9f23a0818dbb3cb8b48b84268df 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Class () { return __is_class(T); }
index 2bd5f1552f91200a50ecb095e723725ed1e6757c..b8c420939119dd3d851bdb0c0dc5146ece0d1f0b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct fool {
   constexpr fool operator&&(fool) const { return {}; }
index 7953869360f98ef9e6001112b46ce47cce0ecafe..a3a315c600b7bebd4314f6fb8fcc0803bfbd8853 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct fool { };
 
index 6e111b260ac94426ab6baa94632876228daad142..670fd542f6f0cc01e619e0d9d845358af5cc527a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct X { };
 int operator==(X, X) { return 0; }
index ef25987a4f8a31d96e01dd09ceee9f90e4f75390..38933e4cf091c6cb437b52d74081efacc837eabb 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <vector>
 
index 4adbc78978c0980ca15ccc50c5bee1c0c21cfeee..5a34358bbd5528872b19b41796929c179bb92d60 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 // Check that type requirements are normalized correctly.
 
index 5f66376fd0b31f0c7611ca40f158ea77abb8da95..c4d6b57ab659437dceb4b33837c8571c314b6015 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 struct S1 {};
index 101432feefbadd12f043fabe1b6823a269b825f8..88731d6e24950fab005ca8540748ce7d09fdc052 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_same_as(T, int);
index b61912c84bcd0fbe35b318ed5b19136c7888d530..cbce4f3be6d57f00044ab103548a6c02328c6dd7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<int N, class T>
   concept bool P() { return true; }
index 1f0d91ad778b381ee6cd57810f0692f4223af4b1..73f38815fb7182d1971315e2780ec6934550aeff 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool NameProvider()
index edeeb909fcb27a680a07a12ade8fcb79e0dccdce..aee63dc9d2cdf47dacda3cfaa3a45aa6d6fe09f5 100644 (file)
@@ -1,5 +1,5 @@
 // Conceptized version of template/ttp23.C
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T> concept bool Foo = true;
 
index 146d1c6def15752c48e4fee3bd6a8a089ec1d8f7..6a32cfee88530fea46af45d5128cee98c454a84c 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_same_as(T, int);
index 5fcd5a29a342ac5d08aade1f9c53aa7622e46130..61fa86dc435aecebca2cd7116c892bb21eace24d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_same_as(T, int);
index ac9d2af7cb8bf7f8863bb7ffc948b9eece22f312..c38404239f5ddcdce7ab7296bd80b0165c0babb5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_same_as(T, int);
index 25bd916ca017a916fe0858692afcfe0d0cadc067..5e537b048ba243c2495dbfd176d52d466963cba6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_same_as(T, int);
index e70cdc0b2b0a080b55255d9312a3faba2c55800f..eb4bb1670b153fb24d804fae14c16790a272a603 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename... Ts> struct are_same;
 
index 3e2a2f23377c24f9f1b514deca878f3e45f8e598..27d19e97719a2a30017ec9be887a802d0f13128d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename... Ts> struct are_same;
 
index 69a31bcb8e6a1170af6443806cae05bc81a4b2bd..63a12c47f69634fed55f23ea77f611bf28e7a6aa 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index 06b0f96e094eb6674b8aee610a2d2e3480fc6b4a..e34c606e3d6adcd1248ee2c41dd984f1c4df486d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C() { return __is_class(T); }
index c2dcc3a8c1b49189e21be6690747327552b9e578..e828db96a8153836e150e3c7e29218bceeee6f20 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66937
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 #include <tuple>
 
index 7ccf087aaed89355259d828455212cad9eb3ae7a..b5a718565457e3e34e6cd3dd3206faa6c55190ee 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Nothrow_assignable() { return __has_nothrow_assign(T); }
index 971a67bf64f93b0ac864ea1203c20acf308a4d50..3383d26469d076a35b8c3dbf163e6b43a259bd3e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool Nothrow_assignable() { return __has_nothrow_assign(T); }
index b99016f9a8bf0ab7c6a45370d18076094765e7e1..1456c077b4a84a9a8f4ecdd5ebe02ad7432ab5b6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
 concept bool C1 = __is_class(T);
index 21c69dd4a430db958e47008d2c08cabf798f1e6b..c71e8a40a3658c66384ef1e432510c1a3b066391 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_class(T);
index d27e4fa24b7248e5df0afb98f4ad34eec5000b42..d4f4f5732051a3b35484b88fab72e8733b462537 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T>
   concept bool C1 = __is_class(T);
index 1870a42dcb0e3becca2745273467f078c84c977a..677deda08d819336cc2a48cd3dfe4576ff61e3dc 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T, typename U>
 concept bool Same = __is_same_as(T, U);
index b91eb945eb1f709224a0c2af1bc7c57266e83c09..68c4a6f99d9e7f1006967f3a4265e04ce89abd61 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename T1, typename T2>
 concept bool C1 = true;
index 40be4f9d02f669b6181dd4f257022091f88caa5a..645e8cac966c45f29b58efe7f5e6ac824dfccb8e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 concept int C = true;          // { dg-error "bool" }
index 99ffdc0a4834eb32a52241f49d252b7a322a5991..f24d76db2a922b762727e9aa9218dca132fdb639 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67117
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
   requires false
index dc0be75cae73782843a660f31ca76139fcedec65..2e04ed64833c265dc94f2d632e5d7934aebc47a7 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67139
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T>
 constexpr typename T::type::value_type _v = T::type::value;
index b882b08d181e12eebbabb16f19baae15fe8b4bd5..07468637900942a74669a90c4221f118bbe0710b 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/68666
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 struct A {
   template <class>
index 8129463ae785b739a19dff51e1cb49529042e521..b1b5ba5bc4437d780000f74120dbde7b908e3fe5 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/66712
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T, class...Args>
 concept bool _Constructible_ =
index e60e9ff40134f0e823b2961be4b4f0b3baab4271..2b64a62edef39331979c01dffe0045aca46520c3 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template <class T> concept bool Copyable = requires (T t) { T(t); };
 template <class T> concept bool Constructable = requires { T(); };
index d20fa7da4e555f59adc73b05b85905a7aebd9e17..48bdfeed5486daf3642a194f353093e9770ce99b 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/73456
-// { dg-options "-std=c++1z -fconcepts" }
+// { dg-options "-std=c++17 -fconcepts" }
 
 template<typename...> struct list {};
 
index a0e468c5e62735166582e797a88ac6619099acb9..48f5dd1e082ceb3e6a3afe6c35dfb441a71cd722 100644 (file)
@@ -1,4 +1,4 @@
 // { dg-do compile { target c++98_only } }
 /* { dg-options "-ansi -pedantic-errors" }  */
 
-double x = 0x3.1415babep0; // { dg-error "use of C..1z hexadecimal floating constant" }
+double x = 0x3.1415babep0; // { dg-error "use of C..17 hexadecimal floating constant" }
index d71e55f8c50b9eb2eef0d213592f81cc06de38ef..40b4ef2233e3dd0e51123b646182b62322753173 100644 (file)
@@ -103,15 +103,15 @@ auto fnlate2 () -> auto *;                        // { dg-error "invalid use of|expected" "" { target
 
 void
 badthrow () throw (auto)                       // { dg-error "invalid use of" }
-{                                              // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-}                                              // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
+{                                              // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+}                                              // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
 
 void
 badthrow2 () throw (auto &)                    // { dg-error "invalid use of|expected" }
-{                                              // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-}                                              // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
+{                                              // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+}                                              // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
 
-template <auto V = 4> struct G {};             // { dg-error "auto" "" { target { ! c++1z } } }
+template <auto V = 4> struct G {};             // { dg-error "auto" "" { target { ! c++17 } } }
 
 template <typename T> struct H { H (); ~H (); };
 H<auto> h;                                     // { dg-error "invalid|initializer" }
index 4d418873f316c77b7df639d6901125799ea1f822..dfbdd2f2ed1bca53af5e1fabb737fa3f0a5a51f0 100644 (file)
@@ -10,22 +10,22 @@ A a;
 
 struct B
 {
-  B() throw (int) = default; // { dg-message "exception-specification" "" { target { ! c++1z } } }
-};                             // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
-B b;                           // { dg-error "deleted" "" { target { ! c++1z } } }
+  B() throw (int) = default; // { dg-message "exception-specification" "" { target { ! c++17 } } }
+};                             // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
+B b;                           // { dg-error "deleted" "" { target { ! c++17 } } }
 
 struct C
 {
-  C() throw (int) { }          // { dg-error "dynamic exception specification" "" { target c++1z } }
-};                             // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+  C() throw (int) { }          // { dg-error "dynamic exception specification" "" { target c++17 } }
+};                             // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
 
 C c;
 
 struct D: C
 {
-  D() throw (int) = default;   // { dg-error "dynamic exception specification" "" { target c++1z } }
-};                             // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+  D() throw (int) = default;   // { dg-error "dynamic exception specification" "" { target c++17 } }
+};                             // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
 
 D d;
 
index 99fb8e0b709d0ab32ef3d8ca3d700864d96603e4..fe1d4c0e29bf84c34035edf5fd8526c221e60270 100644 (file)
@@ -41,7 +41,7 @@ struct bad_alloc { };
 
 void* operator new(std::size_t)
 #if __cplusplus <= 201402L
-throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { ! c++1z } } }
+throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { ! c++17 } } }
 #endif
 ;
 
index 330cf95c2d0a6f753c62959d2b436154ac69efad..3fb50df3f01e638966128a8280e524acf3ea9b01 100644 (file)
@@ -1,7 +1,7 @@
 // PR c++/47263
 // PR c++/49260
 // { dg-options "-fno-asynchronous-unwind-tables -fno-dwarf2-cfi-asm" }
-// { dg-do run { target { c++11 && { ! c++1z } } } }
+// { dg-do run { target { c++11 && { ! c++17 } } } }
 
 #include <exception>
 
index 77195415fba6546565397c2d91d50aafd074410d..a94fa03ad2b402a865a4a0a5b7b7d60757b92dae 100644 (file)
@@ -10,10 +10,10 @@ void f();
 
 SA(!noexcept(f()));
 
-void g() throw (int);          // { dg-message "previous declaration" "" { target { ! c++1z } } }
-                               // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
-void g() noexcept(false);      // { dg-error "different exception" "" { target { ! c++1z } } }
+void g() throw (int);          // { dg-message "previous declaration" "" { target { ! c++17 } } }
+                               // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
+void g() noexcept(false);      // { dg-error "different exception" "" { target { ! c++17 } } }
 void g();
 
 void h() throw();
index 5a554b7379aae515406ec03eba27622e063a0d77..a9791ec1608885594cdbbee070c32789526796b5 100644 (file)
@@ -7,8 +7,8 @@ struct A
   virtual void g() throw();
   virtual void h() noexcept;
   virtual void i() noexcept(false);
-  virtual void j() throw(int); // { dg-error "dynamic exception specification" "" { target c++1z } }
-};                             // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+  virtual void j() throw(int); // { dg-error "dynamic exception specification" "" { target c++17 } }
+};                             // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
 
 struct B: A
 {
@@ -34,23 +34,23 @@ struct D: A
   void g() noexcept(false);    // { dg-error "looser" }
   void h() noexcept(false);    // { dg-error "looser" }
   void i() noexcept(false);
-  void j() noexcept(false);    // { dg-error "looser" "" { target { ! c++1z } } }
+  void j() noexcept(false);    // { dg-error "looser" "" { target { ! c++17 } } }
 };
 
 struct E: A
 {
-  void f() throw(int);         // { dg-error "dynamic exception specification" "" { target c++1z } }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+  void f() throw(int);         // { dg-error "dynamic exception specification" "" { target c++17 } }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
   void g() throw(int);         // { dg-error "looser" }
-                               // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
+                               // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
   void h() throw(int);         // { dg-error "looser" }
-                               // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
-  void i() throw(int);         // { dg-error "dynamic exception specification" "" { target c++1z } }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
-  void j() throw(int);         // { dg-error "dynamic exception specification" "" { target c++1z } }
-                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+                               // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
+  void i() throw(int);         // { dg-error "dynamic exception specification" "" { target c++17 } }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
+  void j() throw(int);         // { dg-error "dynamic exception specification" "" { target c++17 } }
+                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
 };
 
 struct F: A
@@ -59,5 +59,5 @@ struct F: A
   void g();                    // { dg-error "looser" }
   void h();                    // { dg-error "looser" }
   void i();
-  void j();                    // { dg-error "looser" "" { target { ! c++1z } } }
+  void j();                    // { dg-error "looser" "" { target { ! c++17 } } }
 };
index 8ec4d7df4422eb734eee22c19a7c1e2b42fa4f16..94af8fcf0d035d2005f766b569f31ad1b4a85069 100644 (file)
@@ -24,7 +24,7 @@ struct D
 {
   D ()
 #if __cplusplus <= 201402L
-  throw (int)                  // { dg-warning "deprecated" "" { target { ! c++1z } } }
+  throw (int)                  // { dg-warning "deprecated" "" { target { ! c++17 } } }
 #endif
   ;
 };
index 6602e70b0b8ee34160aac785a064ebe9362601ef..239fe17e273e22c65eec5d2566d85581bedb23ee 100644 (file)
@@ -6,4 +6,4 @@ static_assert (1 == 0,); // { dg-error "expected string-literal before '\\)'" }
 
 static_assert (1 == 0, "oops"); // { dg-error "static assertion failed" }
 
-// { dg-error "static_assert without a message only available with " "" { target { ! c++1z } } 3 }
+// { dg-error "static_assert without a message only available with " "" { target { ! c++17 } } 3 }
index 368a67b57769ec17120361e3283854e6b1403bfe..27afc5a6500bd8da31abc43b383d6fec79d6cf2a 100644 (file)
@@ -9,9 +9,9 @@ template<int M, int N> struct pair
 
 template<int... M> struct S
 {
-  template<int... N> static int foo() throw (pair <M, N>...) // { dg-error "mismatched" "" { target { ! c++1z } } }
-  {                                                         // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-    return 1;                                               // { dg-warning "deprecated" "" { target { ! c++1z } } .-2 }
+  template<int... N> static int foo() throw (pair <M, N>...) // { dg-error "mismatched" "" { target { ! c++17 } } }
+  {                                                         // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+    return 1;                                               // { dg-warning "deprecated" "" { target { ! c++17 } } .-2 }
   }
 };
 
@@ -22,5 +22,5 @@ int bar ()
 
 int wibble()
 {
-  return S<0, 1, 2>::foo<0, 1> (); // { dg-error "no matching" "" { target { ! c++1z } } }
+  return S<0, 1, 2>::foo<0, 1> (); // { dg-error "no matching" "" { target { ! c++17 } } }
 }
index be998d2420ca7d707bebfd41a88bf43fa462c8e2..396df09dbe2a75ef98fb1958943f4695ab477b2c 100644 (file)
@@ -5,7 +5,7 @@ struct C {};
 
 template<typename... Exceptions> void f(int idx)
 #if __cplusplus <= 201402L
-throw(Exceptions...)           // { dg-warning "deprecated" "" { target { ! c++1z } } }
+throw(Exceptions...)           // { dg-warning "deprecated" "" { target { ! c++17 } } }
 #endif
 {
   if (idx == 0) throw A();
index 68a0bf3acad953fcab750cb10f556f17a9084238..3caa814c58dc675899e002ea1d7ed3878afc8a48 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/64969
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 auto f1(auto x) { return *x; }
 decltype(auto) f2(auto x) { return *x; }
index 41d4bb14a2f660d24d1f4285f179925cc51988f0..1dc6af3a57d6de86ee5b2f899045239f4b1e513a 100644 (file)
@@ -1,6 +1,6 @@
 // PR c++/66197
 // { dg-do run }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 extern "C" void abort();
 
index 37bb472bbe1bd6e3154cfe6b6e1e326e5fb7735f..2c6bdcafb0cd392201921e9fb7b983cf61521056 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 struct base1 { int b1, b2 = 42; };
index 9da5ebfa94e1c00a4d290e06c297761a26827cb0..5d73bbf67392b7a00dcbb14aced222e9d1f0f73f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct derived;
 struct base {
@@ -8,5 +8,5 @@ private:
 };
 struct derived : base {};
 
-derived d1{};                  // { dg-error "" "" { target c++1z } }
+derived d1{};                  // { dg-error "" "" { target c++17 } }
 derived d2;                    // still OK
index 821dce1d7e75361886246aed2f65f4322a22582b..ceeb6d8f120cf838bc8aa545ed0065110a707b92 100644 (file)
@@ -8,5 +8,5 @@ private:
 };
 struct derived : base {};
 
-derived d1{};                  // { dg-error "" "" { target c++1z } }
+derived d1{};                  // { dg-error "" "" { target c++17 } }
 derived d2;                    // still OK
index 4acbc0b83a1c49f5c52928bf075278a2c19dbf2a..f526a6e8812ea5199980ef8da16b04dd03b232a6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct derived;
 struct base { };
index fd93f4ae8d6e447f339005ff53ff7956927c929c..8f9126bc23fb6d4ab15e859b50e732891006ddf5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 struct derived;
index 85dd36582934aa49e36bef823a41f45f5e61f9e0..5f6d9ad8beb1b89036b4c51db3920ee7ac12c4d7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -w" }
+// { dg-options "-std=c++17 -w" }
 // { dg-do run }
 
 struct A { };
index 31219ce742382a4db07813623441de1ef567f88d..08578ed0b0ba6573f317c6d2e655fdd1f2b92fa8 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -w" }
+// { dg-options "-std=c++17 -w" }
 // { dg-do run }
 
 struct A { };
index 735296fd8fa74ebcdc8cc8c239ea43ac6d4a7980..09f823e1cefb05ef812b9dcdbc855a4dd43c66d2 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 #ifndef __STDCPP_DEFAULT_NEW_ALIGNMENT__
index fe159692b3bee142aa381a80d40a518b4ec0e72f..7bf63091614fa7b4a6f3dee24b1ef8c2d311d844 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 #include <new>
index e50e62c92e13e006652eafe0c4f8f2c37552282e..2bfb6b8d51933480fcedefaf4fce83ac9c3e6947 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 #include <new>
index 695b77f80b13a0cc66bc81f3d6830c27f9054341..52011f254ff7ece77b75d5fb62a496290df9059c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/77742
-// { dg-options "-Wall -std=c++1z" }
+// { dg-options "-Wall -std=c++17" }
 
 #include <new>
 
index 1f8f8486de856803bee5b2a174cba3a285029335..ad7d2374897d3a6108646f9eda978f9ba01de513 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #ifndef __cpp_enumerator_attributes
 #error __cpp_enumerator_attributes not defined
index f321ba1cd97ffc5d7ef3ab4a2ff75fcbfa4d9e56..aacfac875b1f024379beab7eb77013d8c436eaf3 100644 (file)
@@ -1,4 +1,4 @@
-// This macro should not be defined without -std=c++1z.
+// This macro should not be defined without -std=c++17.
 
 #ifdef __cpp_enumerator_attributes
 #error __cpp_enumerator_attributes defined
index ae2dcf9f3917234e2eb49d650a1f8e7e6da69e91..236fba33fedd2fc236ecd0a622c68aa124295e3d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int
 fn (bool b)
index 51c1a334e04e90410e1ed95efd767bb97f93e256..d3b9b8818fcf4c9c172182f619a8b232d0d9012c 100644 (file)
@@ -1,5 +1,5 @@
 // Test for std::byte aliasing properties.
-// { dg-options "-std=c++1z -O3" }
+// { dg-options "-std=c++17 -O3" }
 
 #include <cstddef>
 
index 87fced9ac38a6422a7cde41cf7d957606f247806..7e1588e747574c5bf1a8eaa75836c1b6e08b1433 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 8bc4288aa7674baceab01f6dc1d93b90ab043f76..a3879fcde97efeb10367341214c4284a8f763f3e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 4e902923b7d7db654d4899b4806e4bd5e1435704..301ba9acffafacc3f2f7114fe0aa09c639f4628b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 9eb541da8f9f616890b5c0ca677d05b9e91fee92..e858dcf8da1db0c563796dbfd75dec24086c9bb6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 0e2d2354288fde4018e66af9ae6cc4cd53e3c99b..0bacf9b304e4d70060ec279ac4e4d480bc719aca 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 1c7e34e17c6cbe5316bb590ca2201959a08e6f37..41d58db18bab41efe954cde2d046058d38eee650 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <vector>
 
index 72ed478a1c221196e038df81bc99291fcf43d270..3f0e2290441d7a4f1c2a4f393a2d78f9082174db 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <utility>
 
index 9acf5d62efa9bb4d31028b33029403a72b2d4fb5..2a636e2f70e630020c97363dbb11cf2d0b360d54 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <tuple>
 
index 7f2be00af233efab6bf59e729e49e76f428244a7..646b5aac882236160e457b20009f364ce6671bb0 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <initializer_list>
 template <class T>
index ab2126e70a1e7ac4c2b0542e2e1ba4a843448ccf..42f936aa5cc337660247490b2ef21c1823564c27 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<class T> struct S{S(T){}};
 
index 38327d1c6c3047a3a033f0d07cc6a76732a63e45..5c21b74ca387260df50b9f61824ee8376427b4ba 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/77912
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<class T> struct S{S(T){}}; 
 
index 736b263bcd9526f0400fd16d6c75200f0f795684..2e1d115c58d7abd6650e894d249ef4f827a5467d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 58e8f7dca76787c3271351ad0f94b61375ad70c8..988f11bcc62de99b359bf648a6b645fabecfad88 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/77890
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<class F> struct S{S(F&&f){}}; 
 void f()
index 5eebef7cbafefbd05a89c3f5c6003b263f60c7af..2c2ce467efa9f98f36803529651e7a47e93965f8 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<class T, class D = int>
 struct S { T t; };
index b15b0c4ad95494e684cd38d8f4d3b2b493ee6bb5..a1f0c203750439e2721fccee4af67eb365042869 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <template <class> class T>
 void f()
index 26795b17bf0e7ba75ea47b32934cd4c64a5b0b24..a2fa40616212c8b1a830e4370260e282bc1a33d3 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index ba2015aafff2de75ca01d6ec15827a6a4d04ec1c..c4d890c1a833fe5ece0dbfcb1fedd541b4a6681e 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78894
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct A
 {
index 0e496e62d85a5e10f5febd481f32604b1be479c4..d3259d88f14dbef5ce367fd77e0893c653f5c925 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0512R0 for C++17 NB comment US 19
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<typename> struct remove_ref;
 template<typename _Tp> struct remove_ref { typedef _Tp type; };
index ea58af75de8bacaff3e9f444180b2de7b9117bc0..74de70ce21f2a1252306ed068f50fd548772045e 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0512R0 for C++17 NB comment US 20
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class,class> struct same;
 template <class T> struct same<T,T> {};
index ce5c5d73e9f481a6192dedc7ed87e6a026218afd..ce58058b1785bb0aa99e6263a61bc59127cd7d7e 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79316
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
   template<typename T> struct S { S(T t) {} };
   template<typename T> S(T, int = 7) -> S<T>;
index c91ec0dccaf09e928e5ff5310c80f5119b8fe35c..8238e5bc25e52b92f1b25568ac83024dca62afbd 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79350
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index efffe3d10f6fc591ebe8fa8e3376af9ba0190bcd..8c2d67ef4b489f427510f15292e9bdb2c78b1349 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79500
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<typename T> struct A {};
 A(...) -> A<int>;
index ed869655485b4dcf47fec6f04fd12874611b231a..13e001afd6b111439b0561c405bef3c895d35d00 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <int I>
 struct A { };
index f50e87819ea8ef85f33dae1e91ef09ce48fb7e46..d0ef5f9e060f750c3eb121c9a21c7193c9d5d275 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T = void> struct A { };
 
index 4423157490a1e23bf4b03cec9838fcead06001a4..2fd2f28fad878699f22b1684a90d970603f6850d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A {
   A(T); // #1
index 4c3824fdee8f23b5cf618f6300285627b4057f32..0f4c85ad35f5607e38d7bd9dcd7f082a665e0902 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <initializer_list>
 
index d135031c277de084657875bf2eaee556ebeeadc2..ee9d780aaeaafd59c4a982f3539d9a77a6e734de 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class,class> struct same;
 template <class T> struct same<T,T> {};
index b03587969cfa8358e0d34e1224a6cbd37edf1375..380c35fdb031bf8fddcec0d0d2b3bac520e34ff0 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index b0e53d1c75e82afdf9a030a905114d77737493c6..63d099dc1fd7c2a4c360ab20367aa675933d2fa7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A;
 
index 129e29ec131de96ad11e14b13fef1943798fdc56..3670ceea03a627cfec2da2aa6bbdfc620901dac6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A {
   A(T&);
index fe6c20012aabf088ceb28c4753407ca5653f4b48..883961e04c7825505821aee253413af25a62283f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A {
   using value_type = T;
index 98a3664f5b274166d66a95fc52a4cd7fdd69e919..f141e9bedfb88393a18c58d37a91d437dadecff7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A { };
 
index 16c41f43c7eec314c333b38600dd1a6276e1a869..a86589cf228868eee4e135f6763a21b0a69afb46 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <int I, int J>
 struct A { };
index eeffa69adf5d9121306480e50eed5064a06e9e18..3888b3992e22018f56622151a8cb0f6eb7a6685d 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/81180
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template < int I > struct int_{};
 
index 5e7fa3a2c51162ac70c31b8197f271c482dfb94c..f287ce925c948252f2da4ad3270c9b9caed10c51 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <initializer_list>
 
index 8217fd4d79afab0d02d1790e22d45c77fba8d237..4623e742fb8212e7a1d19788943563e712186e02 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <initializer_list>
 
index a906a0f36264241eef25d6d2802dc6ea4ab0fc57..120145516b1fd94031594bda6e35f7730bf0f5f7 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79790
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <int N>
 struct array
index b94a3008435165836d8700c40e849a99efdcb995..a7d56fbf93dd3e61d96e297bb536af08e43d86d4 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 569217d754c58cece918ccef7a04a6465e31d6a4..3f751cee3e270295c5726803cd91ac8260b82f4d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 8e982b9cff2f81cba521373497f89254c3d8218f..d635a642bfb9c822148ee843dbcbcb463d8ac90f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 365831598409c26d674ea650eda0536e7a6c9054..9836e26d8bbd952ed3521c05ca1df75869954def 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T>
 struct A
index 149ef43e5ca33076dace8e09b8982671dac0ed41..23c58fd20268d1a00489f2f6cd35b42e01d6ea2e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 namespace N {
   template <class T>
index 1c83b592ad044cb97e0df44d039084c05c1bf333..f10d83008883d027455a78db7fda0c15b4c90adb 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78948
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <int T>
 void sizeof_mismatch()
index 1c6247e0e35ecd6fe8b9965983d6154cdeb32126..aaef952400be246666745e5e67e7c3b921bcfd66 100644 (file)
@@ -1,6 +1,6 @@
 // Test that discarded statements differ from unevaluated operands in some
 // ways.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct A { int i; };
 
index 1ed2c30c5c4286c690d0e4a7ad1f5887f054ff9a..4e887f3b9394f6332ed68d21256d153b43a84a93 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80562
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct T {
   constexpr auto foo() { return false; }
index a768cfb22cafd59f0d345a431be128c7182bf690..501e7d32cd7f8e9a9a294b4fad841ebcd68378da 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 constexpr auto Add5 = [](int i) { return i+5; };
 
index ff65d6c7d47c3d584d9eade6674cab2940eb2c73..2af652d0a060a5652f80194647f813d7c6b69689 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void g() {
   const int n = 0;
index f9e662d31c5ceb25e432a4c58a9dfae7d5981cfb..f5d58ce9429f1d6a2d4384c166132abca7803f82 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 // 'v' & 'm' are odr-used but do not occur in a constant-expression within the nested
 // lambda, so are well-formed.
index f5f3f385d3fd9604173f276f4d7fdfe8c2073c78..1ad2f6859f87e135ca27ad519bd0e290d4e65bed 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void f(int i)
 {
index 077f8235d5f995160f7f7e74102e98c8a328dc39..35baff35dedaeaea17a0c8e49f5aa225821b17a6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto l1 = []() constexpr constexpr { }; // { dg-error "duplicate" }
 auto l2 = []() mutable mutable { }; // { dg-error "duplicate" }
index 1d3ff826fa4430873ebf418519e189d73825a52a..a6b3e532649a2dab6ef9b8a41cc48b0b98b7630b 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 constexpr int AddEleven(int n){
   return[n]{return n+11;}();
index 46ee84686b1679806b8b9ab60066a79b3d805130..b2772b3fd67c363616d33ab214552e13181a0e5d 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 constexpr auto add = [] (int n, int m) {
   auto L = [=] { return n; };
index b3fd3d0030edcb6ea61d8f3399377a1fb91aae1e..106b50441e9b21dc34d5f965983b250b82f26beb 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto ID = [] (int n) constexpr { return n; };
 constexpr int I = ID(3);
index 71f1852a4bde0736bcb2967c8e65c5835107e37c..8c9db952f24d191546ce2ee898cdcdc683cacb46 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto addOne = [] (int n) {
   return n + 1;
index 953901ad426ef92e153baac68e9b5d484e5bceb9..3fe4bb949bdde8b02315ece8675eaae532246fcd 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto monoid = [](auto v) { return [=] { return v; }; };
 auto add = [](auto m1) constexpr {
index 26f136b6c799460d4e3a99e187e6a57fe6cf5f2e..4dc5ae2382bb139d5c8d0a16a729efd7c9e507dc 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto ID = [](auto a) { return a; };
 static_assert( ID (3) == 3); // OK
index 89c020813eb3a73f7cc1ee4b8a481e09d8cd7260..0bac4c1ea3515db0e3187a7cf441f730593f5b52 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 auto Fwd = [](int (*fp)(int), auto a) { return fp(a); };
 auto C = [](auto a) { return a; };
index a5bc524f0ec02ce8493eece03a96cd2d31a58b36..23fdc9390aaf60619f62787ed4e0b6950da2ac4c 100644 (file)
@@ -1,4 +1,4 @@
 // Testcase from P0170R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 static_assert([](int n) { return [&n] { return ++n; }(); }(3) == 4);
index e4b84fd64698b45813c38d4f73a2efcfbc1460a5..0d0ac141c77e2eb91bc369f21d2bdc5303491c31 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #if __cplusplus <= 201402L
 #error "__cplusplus <= 201402L"
index 73edc871320a4d58adc54953bbf33b5600f929b5..1833bc3cda83eb40f05745fb51b07480646c2df2 100644 (file)
@@ -1,5 +1,5 @@
 // Test of bit-fields.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct A { long i: 2; } a;
 
index 722ff76de192a00cadb327f47609d24a1f63970d..04ca9a128a4a76f0c37710b10b65b5e61d96b977 100644 (file)
@@ -1,5 +1,5 @@
 // Test for reference address comparison in constant expression.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int i[2];
 struct A { int i, j; } a;
index c2bcb93c1d71eb418226d85d85d9fa2f91767c46..a841d3572ea87441bf408756badfb20788773cdb 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 namespace std {
   template<typename T> struct tuple_size;
index 9c8aaa48b4aae9084eaca36f9e598b422c5ffe3d..edb6709116c0a6e976dc499c76741d3646029b5e 100644 (file)
@@ -1,5 +1,5 @@
 // Test for decltype of direct decomposition.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class,class> struct same_type;
 template <class T> struct same_type<T,T> {};
index a5b686abdf92ce84f828690ee6a7b74af08c6bda..09ed6461d3cf81a22d42678d292551147071c00b 100644 (file)
@@ -1,6 +1,6 @@
 // PR c++/78358
 // { dg-do run }
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <tuple>
 
index 48d2433a642fd19b093801570247c28e643437f2..e5dc443598e6989dc10ba158caf0d5c4b3d4b80d 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 struct A { bool a, b; };
 struct B { int a, b; };
index d67992bb53962f2f9f607242cd2cc5081ff25cc3..7589c8015a518743288ede0d304f0e9a1b69c63a 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 struct A { bool a, b; };
 struct B { int a, b; };
index 484094b6c583722ffeba74e8f83a3afccc0791e3..ace1f06a5a7bbf9cb9e308b3bb82cba3efde5ab6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <tuple>
 
index 8831b7186c0907d3b777c7cb215bab5841da9d9e..8475e5d9707df6bf44e9864832500727b856edc5 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct A { int i,j; };
 
index 7d3a465d3a3428671133ab0b60b11226eb4dbc83..6f21c9c9ec22c051733c390780a49e862437ebce 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int a[3];
 struct S { int b, c, d; } s;
index f26722a1d0ad319119ae70270bffcb5dbf90efd9..fd5f30e05a58aaa3cfe473c160e954674e14fc82 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80084
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 struct A
index 58ce71bf6acdf42f7de9036a69cd9dd78148c8af..71dc938daefd9859aadf19e53a644e050e01d8b3 100644 (file)
@@ -10,35 +10,35 @@ void
 test (A &b, B c)
 {
   int && [ d ] = c;                    // { dg-error "structured binding declaration cannot have type 'int'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   char & [ e, f, ff ] { b };           // { dg-error "structured binding declaration cannot have type 'char'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
-  auto&[g,h,i]=b;                      // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
+  auto&[g,h,i]=b;                      // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } }
   decltype (auto) [ j ] = c;           // { dg-error "structured binding declaration cannot have type 'decltype.auto.'" "" { target c++14 } }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
                                        // { dg-error "expected primary-expression before 'decltype'" "" { target c++11_down } .-2 }
   auto & & && & [ m, n, o ] = b;       // { dg-error "multiple ref-qualifiers" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   constexpr auto [ p ] = c;            // { dg-error "structured binding declaration cannot be 'constexpr'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   friend auto [ q ] = c;               // { dg-error "'friend' used outside of class" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   typedef auto [ r ] = c;              // { dg-error "structured binding declaration cannot be 'typedef'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   inline auto [ s ] = c;               // { dg-error "structured binding declaration cannot be 'inline'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   __restrict auto [ t ] = c;           // { dg-error "invalid use of 'restrict'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   long long auto [ u ] = c;            // { dg-error "'long long' invalid for 'structured binding'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   virtual auto [ v ] = c;              // { dg-error "'virtual' outside class declaration" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   explicit auto [ w ] = c;             // { dg-error "'explicit' outside class declaration" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   static auto [ x ] = c;               // { dg-error "structured binding declaration cannot be 'static'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   extern auto [ y ] { c };             // { dg-error "structured binding declaration cannot be 'extern'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
 }
 
 void
@@ -52,15 +52,15 @@ void
 test3 (A &b, B c)
 {
   auto [ d, e, f ] = arr;              // { dg-error "only 3 names provided while 'int .4.' decomposes into 4 elements" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto & [ g, h, i, j, k ] = arr;      // { dg-error "5 names provided while 'int .4.' decomposes into 4 elements" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto [ l, m ] = b;                   // { dg-error "only 2 names provided while 'A' decomposes into 3 elements" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto & [ n, o, p, q ] = b;           // { dg-error "4 names provided while 'A' decomposes into 3 elements" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto [] { c };                       // { dg-error "empty structured binding declaration" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto [ r, s ] = c;                   // { dg-error "2 names provided while 'B' decomposes into 1 elements" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
 }
index 23115ad10822fc2d0c3aef6238d46d63a5e8541f..73068712d5f55f8a244ac73cdc599cd6e93e489e 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/81258
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int a[2];
 auto [b, c] (a);
index 55460833bd9231873d95039518fb28e16aaf3bcc..e50b882f189f529ecc2aff4a1a180ab75886c082 100644 (file)
@@ -15,18 +15,18 @@ void
 test (A &a, B &b, C &c, D &d, E &e, F &f, G &g, H &h, I &i)
 {
   auto [ j ] = a;                      // { dg-error "cannot decompose class type 'A' because it has an anonymous struct member" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto [ k ] { b };                    // { dg-error "cannot decompose class type 'B' because it has an anonymous union member" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
   auto [ l, l2 ] = c;                  // { dg-error "cannot decompose non-public member 'C::b' of 'C'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
-  auto [ m ] = d;                      // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
+  auto [ m ] = d;                      // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } }
   auto [ n ] { e };                    // { dg-error "cannot decompose non-public member 'E::a' of 'E'" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
-  auto [ o ] { f };                    // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
+  auto [ o ] { f };                    // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } }
   auto & [ p ] { g };                  // { dg-error "cannot decompose class type 'G': both it and its base class 'F' have non-static data members" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
-  auto [ q ] { h };                    // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
+  auto [ q ] { h };                    // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } }
   auto [ r ] { i };                    // { dg-error "cannot decompose class type 'I': its base classes 'F' and 'H' have non-static data members" }
-                                       // { dg-warning "structured bindings only available with -std=c..1z or -std=gnu..1z" "" { target c++14_down } .-1 }
+                                       // { dg-warning "structured bindings only available with -std=c..17 or -std=gnu..17" "" { target c++14_down } .-1 }
 }
index f7c6f56b8d51166681b744f14a1909c615e5a684..0a19876471d5bc832b2d69341d9634bc0f826130 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #define assert(X) do { if (!(X)) __builtin_abort(); } while (0)
 
index ee39ab4b1698a702326e426b8d05613f7094c1fd..d8cffb4135a55928c0817d006957bbae09819003 100644 (file)
@@ -22,41 +22,41 @@ foo ()
   C c1 { s };
   D d1 { D(t) };       // { dg-error "invalid cast from type 'T' to type 'D'" }
   D d2 { t };          // { dg-error "cannot convert 'T' to 'D' in initialization" "" { target c++14_down } }
-                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++1z } .-1 }
+                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++17 } .-1 }
   D d3 { 9 };          // { dg-error "cannot convert 'int' to 'D' in initialization" "" { target c++14_down } }
   D d4 { l };          // { dg-error "cannot convert 'long int' to 'D' in initialization" "" { target c++14_down } }
   D d5 { D(l) };
   D d6 { G };          // { dg-error "cannot convert 'A' to 'D' in initialization" "" { target c++14_down } }
   E e1 { 5 };          // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   E e2 { -1 };         // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   E e3 { 5.0 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   E e4 { 5.2 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   B b2 = { 7 };                // { dg-error "invalid conversion from 'int' to 'B'" }
   C c2 = { C { 8 } };  // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
 
   D *d7 = new D { 9 }; // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" "" { target c++14_down } }
   E *e5 = new E { -4 };        // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   bar ({ 10 });                // { dg-error "cannot convert \[^\n\r]* to 'E' for argument" }
   bar (E { 9 });       // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   V v1 = { { 11 } };   // { dg-error "braces around scalar initializer for type 'E'" }
   V v2 = { E { 12 } }; // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   V v3 = { E { 5.0 } };        // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   V v4 = { 13 };       // { dg-error "cannot convert 'int' to 'E' in initialization" }
   if (B b3 { 5 })      // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
     ;
   if (B b4 { 4.0 })    // { dg-error "cannot convert 'double' to 'B' in initialization" "" { target c++14_down } }
-    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++1z } .-1 }
+    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++17 } .-1 }
   C c3 { 8L };         // { dg-error "cannot convert 'long int' to 'C' in initialization" "" { target c++14_down } }
   B b4 {short (c + 5)};        // { dg-error "invalid conversion from 'short int' to 'B'" "" { target c++14_down } }
   B b5 {c + 5};                // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++17 } .-1 }
   C c4 { ll };         // { dg-error "cannot convert 'long long int' to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++17 } .-1 }
   C c5 {short (c + 5)};        // { dg-error "cannot convert 'short int' to 'C' in initialization" "" { target c++14_down } }
   C c6 {c + 5};                // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
 }
@@ -65,7 +65,7 @@ struct U
 {
   U () : e { 5 } {}    // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
   U (int) : e { 5.0 } {}// { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   U (float) : e({ 6 }) {}// { dg-error "list-initializer for non-class type must not be parenthesized" }
                        // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target *-*-* } .-1 }
   E e;
@@ -76,7 +76,7 @@ struct W
   A a { 5 };           // { dg-error "invalid conversion from 'int' to 'A'" }
   B b { 6 };           // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
   C c { 3.0f };                // { dg-error "cannot convert \[^\n\r]* to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++17 } .-1 }
   D d = { 7 };         // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" }
 };
 
@@ -89,40 +89,40 @@ foo2 ()
   C c1 { s };
   D d1 { D(t) };       // { dg-error "invalid cast from type 'T' to type 'D'" }
   D d2 { t };          // { dg-error "cannot convert 'T' to 'D' in initialization" "" { target c++14_down } }
-                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++1z } .-1 }
+                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++17 } .-1 }
   D d3 { 9 };          // { dg-error "cannot convert 'int' to 'D' in initialization" "" { target c++14_down } }
   D d4 { l };          // { dg-error "cannot convert 'long int' to 'D' in initialization" "" { target c++14_down } }
   D d5 { D(l) };
   D d6 { G };          // { dg-error "cannot convert 'A' to 'D' in initialization" "" { target c++14_down } }
   E e1 { 5 };          // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   E e2 { -1 };         // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   E e3 { 5.0 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   E e4 { 5.2 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   B b2 = { 7 };                // { dg-error "invalid conversion from 'int' to 'B'" }
   C c2 = { C { 8 } };  // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
   D *d7 = new D { 9 }; // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" "" { target c++14_down } }
   E *e5 = new E { -4 };        // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   bar ({ 10 });                // { dg-error "cannot convert \[^\n\r]* to 'E' for argument" }
   bar (E { 9 });       // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   V v1 = { { 11 } };   // { dg-error "braces around scalar initializer for type 'E'" }
   V v2 = { E { 12 } }; // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   V v3 = { E { 5.0 } };        // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   V v4 = { 13 };       // { dg-error "cannot convert 'int' to 'E' in initialization" }
   if (B b3 { 5 })      // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
     ;
   if (B b4 { 4.0 })    // { dg-error "cannot convert 'double' to 'B' in initialization" "" { target c++14_down } }
-    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++1z } .-1 }
+    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++17 } .-1 }
   C c3 { 8L };         // { dg-error "cannot convert 'long int' to 'C' in initialization" "" { target c++14_down } }
   B b4 {short (c + 5)};        // { dg-error "invalid conversion from 'short int' to 'B'" "" { target c++14_down } }
   B b5 {c + 5};                // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++17 } .-1 }
   C c4 { ll };         // { dg-error "cannot convert 'long long int' to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++17 } .-1 }
   C c5 {short (c + 5)};        // { dg-error "cannot convert 'short int' to 'C' in initialization" "" { target c++14_down } }
   C c6 {c + 5};                // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
 }
@@ -132,7 +132,7 @@ struct U2
 {
   U2 () : e { 5 } {}   // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
   U2 (int) : e { 5.0 } {}// { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   U2 (float) : e({ 6 }) {}
   E e;
 };
@@ -143,7 +143,7 @@ struct W2
   A a { 5 };           // { dg-error "invalid conversion from 'int' to 'A'" "" { target *-*-* } }
   B b { 6 };           // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
   C c { 3.0f };                // { dg-error "cannot convert \[^\n\r]* to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++17 } .-1 }
   D d = { 7 };         // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" "" { target *-*-* } }
 };
 
@@ -157,40 +157,40 @@ foo3 ()
   J c1 { s };
   K d1 { K(t) };       // { dg-error "invalid cast from type 'T' to type 'D'" }
   K d2 { t };          // { dg-error "cannot convert 'T' to 'D' in initialization" "" { target c++14_down } }
-                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++1z } .-1 }
+                       // { dg-error "invalid cast from type 'T' to type 'D'" "" { target c++17 } .-1 }
   K d3 { 9 };          // { dg-error "cannot convert 'int' to 'D' in initialization" "" { target c++14_down } }
   K d4 { l };          // { dg-error "cannot convert 'long int' to 'D' in initialization" "" { target c++14_down } }
   K d5 { K(l) };
   K d6 { G };          // { dg-error "cannot convert 'A' to 'D' in initialization" "" { target c++14_down } }
   L e1 { 5 };          // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   L e2 { -1 };         // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-1' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   L e3 { 5.0 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   L e4 { 5.2 };                // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.\[0-9]*e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   I b2 = { 7 };                // { dg-error "invalid conversion from 'int' to 'B'" }
   J c2 = { J { 8 } };  // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
   K *d7 = new K { 9 }; // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" "" { target c++14_down } }
   L *e5 = new L { -4 };        // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '-4' from 'int' to 'unsigned char' inside" "" { target c++17 } .-1 }
   bar3 ({ 10 });       // { dg-error "cannot convert \[^\n\r]* to 'E' for argument" }
   bar3 (E { 9 });      // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   M v1 = { { 11 } };   // { dg-error "braces around scalar initializer for type 'E'" }
   M v2 = { L { 12 } }; // { dg-error "cannot convert 'int' to 'E' in initialization" "" { target c++14_down } }
   M v3 = { L { 5.0 } };        // { dg-error "cannot convert 'double' to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   M v4 = { 13 };       // { dg-error "cannot convert 'int' to 'E' in initialization" }
   if (I b3 { 5 })      // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
     ;
   if (I b4 { 4.0 })    // { dg-error "cannot convert 'double' to 'B' in initialization" "" { target c++14_down } }
-    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++1z } .-1 }
+    ;                  // { dg-error "narrowing conversion of '4.0e.0' from 'double' to 'short int' inside" "" { target c++17 } .-1 }
   J c3 { 8L };         // { dg-error "cannot convert 'long int' to 'C' in initialization" "" { target c++14_down } }
   I b4 {short (c + 5)};        // { dg-error "invalid conversion from 'short int' to 'B'" "" { target c++14_down } }
   I b5 {c + 5};                // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of \[^\n\r]* from 'int' to 'short int' inside" "" { target c++17 } .-1 }
   J c4 { ll };         // { dg-error "cannot convert 'long long int' to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of 'll' from 'long long int' to 'int' inside" "" { target c++17 } .-1 }
   J c5 {short (c + 5)};        // { dg-error "cannot convert 'short int' to 'C' in initialization" "" { target c++14_down } }
   J c6 {c + 5};                // { dg-error "cannot convert 'int' to 'C' in initialization" "" { target c++14_down } }
 }
@@ -200,7 +200,7 @@ struct U3
 {
   U3 () : e { 5 } {}   // { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
   U3 (int) : e { 5.0 } {}// { dg-error "cannot convert \[^\n\r]* to 'E' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '5.0e.0' from 'double' to 'unsigned char' inside" "" { target c++17 } .-1 }
   U3 (float) : e({ 6 }) {}
   L e;
 };
@@ -211,7 +211,7 @@ struct W3
   H a { 5 };           // { dg-error "invalid conversion from 'int' to 'A'" "" { target *-*-* } }
   I b { 6 };           // { dg-error "invalid conversion from 'int' to 'B'" "" { target c++14_down } }
   J c { 3.0f };                // { dg-error "cannot convert \[^\n\r]* to 'C' in initialization" "" { target c++14_down } }
-                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++1z } .-1 }
+                       // { dg-error "narrowing conversion of '3.0e.0f' from 'float' to 'int' inside" "" { target c++17 } .-1 }
   K d = { 7 };         // { dg-error "cannot convert \[^\n\r]* to 'D' in initialization" "" { target *-*-* } }
 };
 
index 48b89b10b294e74d8574525e37d4daf8523932ea..6875c82561b4b34107e0374b7c87a25abe2d2be6 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct A
 {
index 2a741d687b5f041859cb76eea6a69b802c69bfe4..95dd10648f624bc31d92707a106847b69483042a 100644 (file)
@@ -1,6 +1,6 @@
 // P0145R2: Refining Expression Order for C++
 // { dg-do run }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #include <string>
 #define assert(X) if (!(X)) __builtin_abort();
index e87dce4006c2a2b9a5393de9257baafd3e8867aa..966ac0a65236792ffa5dec1cbcb75e658f862696 100644 (file)
@@ -1,6 +1,6 @@
 // P0145R2: Refining Expression Order for C++
 // { dg-do run }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 extern "C" int printf (const char *, ...);
 void sink(...) { }
index d15b1eac88a145d327a6c716594f5d4077fc209d..54a8323dfac8f34dbbe5a5ee3c31da6ed12416b8 100644 (file)
@@ -1,6 +1,6 @@
 // PR c/7652
 // { dg-do compile }
-// { dg-options "-std=c++1z -Wextra -Wall -Wpedantic" }
+// { dg-options "-std=c++17 -Wextra -Wall -Wpedantic" }
 
 // Check that we accept attribute [[fallthrough]].
 
index a7c6cfe516945bdd10d42471d58f805fd25f570b..b2f046b5c91fb8f1e35d770cf681c1ba659932a1 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
+// { dg-options "-std=c++17 -I${srcdir}/g++.dg/cpp1y -I${srcdir}/g++.dg/cpp1y/testinc" }
 
 //  C++98 features:
 
index 558f5893b05589a46d169299d0eeda63c35b0465..7e71cc9dd21d9d690d05e8764eb2f1ad0156eda3 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67926
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <bool ... T> bool FUR = (T && ...);
 template <bool ... T> bool FUL = (... && T);
index 1a8f16c8b7736a9733c67a4e7bf6c5549c624077..95df8ca494d255f8ecd37d747a332c5c7e7b277b 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/71711
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template < int > struct A {};
 template < int ... N > void unary_left (A < (... + N) >);
index 510d61a35c8721d6be4dacd045afc8f8a35692c3..fdaa9559699824a2ad5cafb5dbaafcfd99adb45b 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #include <cassert>
 
index 598e55732a612a83fd2b88b8619cb024dcde7949..093a98bb33458657083a4bce526180366f455bf5 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 // Check that we can fold over all of the operators required
 // by the standard in every possible way.
index 58d41e6f6eeeeda29428c9f5017191376fc34093..7caa8483b6a050f1880aed93b895690a1b1fd1ac 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 // Check that empty expansions and required failures.
 
index fbe672079b434ebcf923d32382b34cd22fde6747..2365d50c3c482955be6e5747ea340a060ace18b7 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class...T>
 constexpr auto f(T... t)
index da6544bddba1659bd709f8a2537a39ed307799e7..2f8d4cafe8e955620d673658e4b9a188e477b08f 100644 (file)
@@ -1,5 +1,5 @@
 // Test that we complain about fold-expressions in C++11 and C++14.
-// { dg-do compile { target { c++11 && { ! c++1z } } } }
+// { dg-do compile { target { c++11 && { ! c++17 } } } }
 
 template <class...T>
 constexpr int f(T... t)
index cc073f90aea886c002717f0779ddb7e7035503ac..48394366692a4bf4b4ca887b3e68452fad442845 100644 (file)
@@ -1,7 +1,7 @@
 // Test that we reject a fold-expression with an LHS that is not a
 // cast-expression.
 
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int i;
 
index 0451774b62c37917bc0d1081f5369f202245990a..74ef4abfaf7d7dbc9c92061e778bb0f4293b637b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #ifndef __cpp_fold_expressions
 #error __cpp_fold_expressions not defined
index d56cefb1ec4ba930fb7cdfd21e58d3935a7f21e2..5c782ff0969e1f623d52f9e5d62ff50a11b0f748 100644 (file)
@@ -1,4 +1,4 @@
-// This macro should not be defined without -std=c++1z.
+// This macro should not be defined without -std=c++17.
 
 #ifdef __cpp_fold_expressions
 #error __cpp_fold_expressions defined
index e27db7a5dcf36262042df1f357174d901a67200c..68827e6f68067fdc869503385dc577f1b8cf1475 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/68377
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct Sink { } s;
 template <class T> Sink& operator<<(Sink&, const T&);
index 578b8d03ca647fd31fad579223b37d1460e7b3fe..142c8b2c818e5dee38b829ee1bee8b920164f045 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/71285
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<typename... Args>
 void spurious(Args... args)
index 8cfe1ab1d28e28345ce0da80be1975905d1575d2..d1dc9188b1c575c9c30a4d61ecf79250b3615901 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // Test C++17 selection statements with initializer, basic use.
 
 extern int foo (void);
index c178eafe1fb7801460363ada4a400505bf28d23b..b0cd14885ff39a559a267e8480cdc149cebe1b77 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // Test C++17 selection statements with initializer, side-effects.
 
 int
index a5f7d8b0c9e20e9d84d873595967366255c1595f..32a3f2d8b665cc39726beae21d5541115cc9f38c 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 extern int foo (void);
 extern void bar (int), die (void);
index 6efa0ed30b22599d7d46fc9f5907a679f36d2f6a..cf2b16a27bb3faac3b95792338e91c8a352efdbe 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0305R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 enum class status_code { SUCCESS };
 extern int get_value ();
index e8e24b53734b084d9d9cb432ece74cb3a74f4fb8..6f00d9de4160ff1533ced7d2a4fad993242246a2 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0305R1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <string>
 #include <map>
index a67617ef0e2f3f8411ecbe1c22a0209422638fe7..e4a598e145d4a2e8029f899cec94e9a2ca9ffe13 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int
 main ()
index fb40df0e5b46e5ed6f02692a252de7092ea1ac8b..574cc213787f38fc293ef62d85b12214bfee1858 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int
 f ()
index 5425f973be85f944ce0623fda32d5582cb6c9263..f695a73fb3d468b692b475182a3e2d8d1057a8fd 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void
 f ()
index 8e5baa3f3c736430975bf7f80c4f66e5b174cfdd..7c014b52c24f1d9c920c8d68c42d9847ef818e26 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do run }
-// { dg-options "-std=c++1z -Wno-deprecated" }
+// { dg-options "-std=c++17 -Wno-deprecated" }
 // { dg-require-weak "" }
 // { dg-additional-sources "inline-var1a.C" }
 
index 9b3da299837e9b031deee183a64976c4835f0955..62d3708232d02ebd109e2e736ac6164484669b6b 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z -Wno-deprecated -g" }
+// { dg-options "-std=c++17 -Wno-deprecated -g" }
 
 #include "inline-var1.h"
 
index bfbbe1d6223273e0a57094c75bfecbc426eaf566..1696cb0f2405479bf18d2ed323e60a4909adc581 100644 (file)
@@ -18,9 +18,9 @@ struct S
   static inline double var9 = 3.0;             // { dg-warning "inline variables are only available with" "" { target c++14_down } }
   static constexpr inline int var11 = 11;      // { dg-warning "inline variables are only available with" "" { target c++14_down } }
 };
-const int S::var3;                             // { dg-warning "redundant redeclaration of" "" { target c++1z } }
+const int S::var3;                             // { dg-warning "redundant redeclaration of" "" { target c++17 } }
 const int S::var3;                             // { dg-error "redefinition of" "" { target c++14_down } }
-extern int foo (int);                          // { dg-warning "redundant redeclaration of" "" { target c++1z } .-1 }
+extern int foo (int);                          // { dg-warning "redundant redeclaration of" "" { target c++17 } .-1 }
 extern int bar (int);
 struct T { T () { t = foo (3); } T (int x) { t = foo (x); } int t; };
 inline int var12 = foo (0);                    // { dg-warning "inline variables are only available with" "" { target c++14_down } }
@@ -111,7 +111,7 @@ double Z<N>::var41;                         // { dg-error "redefinition of" }
 template <int N>
 double const Z<N>::var42;                      // { dg-error "redefinition of" }
 template <int N>
-const int Z<N>::var43;                         // { dg-warning "redundant redeclaration of" "" { target c++1z } }
-template <int N>                               // { dg-warning "redundant redeclaration of" "" { target c++1z } .+1 }
+const int Z<N>::var43;                         // { dg-warning "redundant redeclaration of" "" { target c++17 } }
+template <int N>                               // { dg-warning "redundant redeclaration of" "" { target c++17 } .+1 }
 const int Z<N>::var43;                         // { dg-error "redefinition of" "" { target c++14_down } }
 Z<0> z;
index b5a1fc63a533bda84c5ca9e0922a3fe0b0c61662..c505ce3e1f93b6472e04288b5b0bfb24aec899ce 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct S {
   int i;
index 7dc2173937e61225232f594af9994004c958608b..b4dc5c4e01741ac671183ae083c455599faecf2e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 namespace A __attribute ((visibility ("default"))) {}
 
index 680b907c72dcbb34d4d41fd9a7f750520381a477..8a6f0074fe8c32470607214529d83e8870203c8a 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 namespace A::B::C
 {
index bc2a032ecb9dca5665c729b24c7b89fb8a7c0a4b..4d4e60e42c9d4ae4637707289c5648ecced8bd9f 100644 (file)
@@ -1,6 +1,6 @@
 /* nodiscard attribute tests, adapted from gcc.dg/attr-warn-unused-result.c.  */
 /* { dg-do compile } */
-/* { dg-options "-std=c++1z -O -ftrack-macro-expansion=0" } */
+/* { dg-options "-std=c++17 -O -ftrack-macro-expansion=0" } */
 
 #define WUR [[nodiscard]]
 #define WURAI [[nodiscard, gnu::always_inline]] inline
index dfe64e550e0dcf764d961169f536e9f0ccdd516c..59c02552d60bf9811a435be0b7535ae4f6c02178 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0012r1
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void (*p)() throw(int);               // { dg-error "dynamic exception specification" }
 void (**pp)() noexcept = &p;   // { dg-error "" } cannot convert to pointer to noexcept function
index 39820af136ec4fc9629b950c59791e19b8599c26..74404ad7ad16aba25f31c70814af59919e227e39 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class R, class... A, bool B>
 void f(R (*)(A...) noexcept(B)) { }
index 8c763a536a220876ad9fa3d3fe02b8d8de060208..2b6a108eb8ee28f3199cdf1a8b10b5f22e43dffe 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80614
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <typename T> void fn() {}
 
index 46aefddedf89888bb47ae4621d801ba01bd8ff1e..c8c731b5bbdb85c47f08f2fe9714a6a23d048e5c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80465
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 int foo(...);
 int main() {
index 747bb194c302ead114bfde1833a75ea0c6fa20b4..467bd46725c026f9ff41cfb9f4ed8efb93a5b378 100644 (file)
@@ -1,5 +1,5 @@
 // Test for function pointer conversion on template arguments.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <void (*P)()> struct A { };
 
index 9303da87b8cf5b5618e424c1069b278e35e93334..b23c1c779f9ee3de97496d22860596e247414848 100644 (file)
@@ -1,5 +1,5 @@
 // Test for overload resolution.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void f(void (*)() noexcept) = delete;
 void f(void (*)()) { }
index 621da9341ea38c1fd7796ed1ad3f95ba8b8e02d7..4777eef54d8b3667200d6cbdc8bd50c23773a77d 100644 (file)
@@ -1,5 +1,5 @@
 // Test for deduction.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class R, class... A>
 void f(R (*)(A...));
index 9e5d20224e2c6539bf22b2966a4a8c671c624fe8..6c1ebd1f13e6f24c1084d7071ed56e09a5dc975d 100644 (file)
@@ -1,5 +1,5 @@
 // Test for composite pointer type.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 typedef void (*P)();
 typedef void (*NP)() noexcept;
index 50684571b621022b944ddd52659df64b8c7532f2..8734c8d9c08cf1d27178970d54102c2c3ed3b5f0 100644 (file)
@@ -1,5 +1,5 @@
 // Test for lambda conversion.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void f()
 {
index 1f78114dc74b9b89fa157b6f1f84c0b6f270a500..7c77a8d63df632784b4455bbe53883e852e609c9 100644 (file)
@@ -1,5 +1,5 @@
 // Test for static_cast.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 void f()
 {
index 0182e3a31117d70c0959e37640466675b3cd0be0..db70a680a78600ad11497b14511a87cf55c55401 100644 (file)
@@ -1,5 +1,5 @@
 // Test for exception handling.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do run }
 
 void f() {}
index a29618a3001266b003ab966daa80ca5e8d5020da..45b64997072b61653e25f2e545b2d26eb8260cd1 100644 (file)
@@ -1,5 +1,5 @@
 // Test for PMF template args.
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 // { dg-do compile }
 
 struct A
index 9d0507483be47b950ee4c0392eab2361f02761ae..def697c1a47b73179bfb4c395d4f7e29319a39cd 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0127R2
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <long n> struct A { };
 
index 381ed51a28fccf9ee4ec7a1b172e48835d98d3a5..38d070ccaae852044525ade366edaad6a5407af9 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/80096
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<auto> struct A
 {
index 23dac8a9151010d3402eb2c8997b570991aab478..7152768fd92cce39b3bc44bad857a8ba14eba49f 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0127R2
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <typename T> struct S;
 template <typename T, T n> struct S<int[n]> {
index 00b56b1fe77ca8bda0f8a08143ecb38900716db3..9b96c1fd18b57b574701fa2e2c61674eb14b53a7 100644 (file)
@@ -1,5 +1,5 @@
 // Testcase from P0127R2
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template<auto n> struct B { decltype(n) f = n; };
 B<5> b1;   // OK: template parameter type is int
index 80bbbed9565732c9add8c78d639160cc7b72d555..5833c08531bcc6be16c791f11db0e0f145028382 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T, T n> void f(T, int (&)[n]);
 template <class T, T n> void g(int (&)[n], T);
index aa5ca7f0d2cdf53893e220280834e6eafd1d127d..323a89632a9e1ae208f98e8ec7461761941ac985 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <class T> struct A
 {
index cbf1b46a73ac21bb2f454be59046b7a1f9374b2e..b40438ce197a4fc20cc1adc10766f0d82c1b2f0a 100644 (file)
@@ -4,5 +4,5 @@ template <int N> struct A;
 template <typename T, T N> int foo(A<N> *) = delete;
 void foo(void *);
 void bar(A<0> *p) {
-  foo(p);                      // { dg-error "" "" { target c++1z } }
+  foo(p);                      // { dg-error "" "" { target c++17 } }
 }
index 15656cfd24d568576fecddb6a9c87bc1e5754aec..bca6576d590a82e5083f995958568b67bb54155c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78334
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <auto> auto constexpr_string([](auto) {});
 void foo() { constexpr_string<0>(0); };
index da4c88b81c038f9762b89e708d4dd902395fd5f2..146ad440d98996824781203217d61e5d12080154 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79549
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <auto...>
 struct meow;
index 2daa346be06c38f47da5d6b5343f690343223219..65f5cfe7ce41a1638936c8a57f95e1cf8e7c2c6a 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/79556
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 template <auto> struct A;
 template <auto...> struct B;
index bb46a997e2e2e18d2df62205df144bc8550d758a..342a0a6aa1d4b80665628152a911b12386657cae 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 struct S { int m; static int s; } s;
 
index e489476f463d9d4ed998fb9acaa168a16e6c38c8..feb4b4aaf6eef72344304b4ba0a18bbf64e1e44e 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 #include <typeinfo>
 
index 886d7a5788ba4b1a32bbf9ef40d83091ae4b9faa..29805b5617fecb6d594819a402de41d13619ae3f 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #ifndef __cpp_nontype_template_args
 #error __cpp_nontype_template_args not defined
index a253d6bdbc0105ac62823d8b20cd428101574746..a704e5045b68d68ed996e61ee799b14de2396c23 100644 (file)
@@ -1,4 +1,4 @@
-// This macro should not be defined without -std=c++1z.
+// This macro should not be defined without -std=c++17.
 
 #ifdef __cpp_nontype_template_args
 #error __cpp_nontype_template_args defined
index 91784948d161fc8ecc4908927e0123e49d182e3d..80e3a92ed913220e5671bab711333f751488b07b 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/78771
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 // ICE instantiating a deleted inherited ctor
 
index baeaa4899f64365f91110959acfa482361b8e18c..ef8c1f6bddefdea14f6a7179c79583294b0dbce0 100644 (file)
@@ -1,6 +1,6 @@
 // PR c++/79143
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 struct base {
   base (int, int) {}
index 36e2d029553eded30e8516f010e22072988ef879..fc134b80fbc0c6657995425e0d1ceeee669d0687 100644 (file)
@@ -1,5 +1,5 @@
 // P0184R0: Generalizing the Range-Based For Loop
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 struct A {
   int ar[4];
index a55a717d58d42aedb591da9a7f90f1e333032f92..44071bd75394d81e3bbe8151537264cffadf0645 100644 (file)
@@ -7,22 +7,22 @@
 #endif
 
 #ifdef REG1
-register int a __asm (REG1);   // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+register int a __asm (REG1);   // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 #endif
-register int b;                        // { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+register int b;                        // { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 register int c ();             // { dg-error "storage class 'register' invalid for function" }
-int foo (register int d)       // { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+int foo (register int d)       // { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
   return d;
 }
 int bar ()
 {
 #ifdef REG2
-  register int e __asm (REG2); // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register int e __asm (REG2); // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 #else
   int e;
 #endif
-  register int f;              // { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register int f;              // { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
   e = 6;
   f = 7;
   return e + f;
index 1c1be5e43bffa1d14580195298a72fd35d9f9d79..5d7c9f63c3087723c3e02699ed4407c56be5f506 100644 (file)
@@ -8,22 +8,22 @@
 #endif
 
 #ifdef REG1
-register int a __asm (REG1);   // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+register int a __asm (REG1);   // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 #endif
-register int b;                        // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+register int b;                        // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 register int c ();             // { dg-error "storage class 'register' invalid for function" }
-int foo (register int d)       // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+int foo (register int d)       // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
   return d;
 }
 int bar ()
 {
 #ifdef REG2
-  register int e __asm (REG2); // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register int e __asm (REG2); // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 #else
   int e;
 #endif
-  register int f;              // { dg-bogus "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register int f;              // { dg-bogus "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
   e = 6;
   f = 7;
   return e + f;
index bbcca083ede5d7474a2545cf3fcd415af8b3687f..2bebed02b1a9922c274916d26a7c6d6ec5d1927c 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67114
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 typedef unsigned uint32_t;
 class A {
index d9bf0daa7dd3d1029e62dc080908111f5a97b9cc..3950dbf3a26fbf100de1b47dda0c85a1d1522637 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/67142
-// { dg-options -std=c++1z }
+// { dg-options -std=c++17 }
 
 namespace detail {
 template <int> int split_at;
index 8a2054e2d6b4f816a912151ae47c7ed423377ff2..4b265b6716ebff8e8ff0fb646785d4e85812fa11 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 template<typename T>
   struct is_float
index fb9cdf18fd21d05000702665a73f6e646d6209b4..6ab57463203b6a0a399a1da38b8e2eabbd366c57 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 constexpr int
 operator""_foo(char c)
index 152762f6d5a56c1774e1f529c9f25c0cbf90c89c..da2e83f5f0b1884a45e93df65bf07b227d277309 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #ifndef __cpp_unicode_characters
 #error __cpp_unicode_characters not defined
index 9985cd04140de2559d39e2461bcac62e65472528..0e243d68a753d8e51d9c6d84ee125a8eeb48a8ea 100644 (file)
@@ -1,4 +1,4 @@
-// This macro should not be 201411 without -std=c++1z.
+// This macro should not be 201411 without -std=c++17.
 
 #if __cpp_unicode_characters == 201411
 #error Wrong value for __cpp_unicode_characters
index 339f0e3c0294a7d8939c592196c50fd62c0e4cf9..cb9f7b55084d3c67fdd4d5a8e26922a0d2707528 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-std=c++1z" } */
+/* { dg-options "-std=c++17" } */
 
 const static char c0 = u8'';           // { dg-error "empty character" }
 const static char c1 = u8'ab';         // { dg-warning "multi-character character constant" }
index 52816f8591835b5ac0bca5792d6f1d09872e4c99..ff98b58835c95ab4522fd2df752b8a7c5793cf37 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=c++1z" }
+// { dg-options "-std=c++17" }
 
 #include <cassert>
 #include <experimental/type_traits>
index f4f4b6d77d15761d47021c20dfaa11345f8e0497..6a12d6c0ee7f1cd3f3430039866a808336d8cc55 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-O -std=c++1z -g -dA -gno-strict-dwarf" }
+// { dg-options "-O -std=c++17 -g -dA -gno-strict-dwarf" }
 // { dg-require-weak "" }
 // { dg-final { scan-assembler-times "0x3\[^\n\r]* DW_AT_inline" 6 { xfail *-*-aix* } } }
 // { dg-final { scan-assembler-times "0x1\[^\n\r]* DW_AT_inline" 2 { xfail *-*-aix* } } }
index d04bbd6a9c18b14eda4f35d334560432fa7149e7..ed00fb5d2c922da1f3ee7fae80c57fd54fa34a06 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-O -std=c++1z -gdwarf-5 -dA -gno-strict-dwarf" }
+// { dg-options "-O -std=c++17 -gdwarf-5 -dA -gno-strict-dwarf" }
 // { dg-require-weak "" }
 // { dg-final { scan-assembler-not "DW_TAG_member" { xfail *-*-aix* } } }
 
index 0f84901fb6e0528d92ff8ed8e7683f7ed31afe4d..70d38712a032fb802620e8e36d25eb26bf8daf56 100644 (file)
@@ -89,12 +89,12 @@ struct Z;
 
 X <V> baz1 (const S &)
 #if __cplusplus <= 201402L
-throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 X <Z> baz2 (const X <Z> &)
 #if __cplusplus <= 201402L
-throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 
@@ -122,7 +122,7 @@ template <typename T> T *X<T>::operator -> () const
 
 X <V> baz1 (const S &)
 #if __cplusplus <= 201402L
-throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   return X<V> ();
@@ -138,7 +138,7 @@ E::~E ()
 
 X <Z> baz2 (const X <Z> &)
 #if __cplusplus <= 201402L
-throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (E)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   throw E ();
index 17e9149b97555a228bfc22f17c48f4f64160109f..68fb65c7c2a840b57630d226607a5336b9cedc57 100644 (file)
@@ -14,7 +14,7 @@ struct A {
   A(int) { }
   ~A()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
index 46b5307e0b46c5b0eeedc49d09271bc410bb3ab4..1727a74ff36955f92b2bbd30aab89e5c32203517 100644 (file)
@@ -14,7 +14,7 @@ void operator delete (void *) throw ()
 struct Foo {
   ~Foo()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
@@ -28,7 +28,7 @@ struct Baz {
   }
   virtual ~Baz()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
index 852d324cd9fd69c9db97ac6ef6f705f27a533ae4..9e713ac9781292ba4d6b9dacc22d93fbb47e448b 100644 (file)
@@ -17,7 +17,7 @@ public:
   A(const A&) { ++count; if (b) throw 1; }
   ~A()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
@@ -34,7 +34,7 @@ public:
   A(const B&) { if (b) throw 1; }
   ~A()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
index 96408d2592ffb17fde02772873e889b55fc7ceb9..519d8ca32bf9ea9fe152b953d09b1303c9c07d24 100644 (file)
@@ -40,7 +40,7 @@ force_unwind ()
 static void
 doit ()
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   force_unwind ();
index 127883ae197bb0533e75d30c39480192085bc26f..8db0ace13a3eff9643fd70cc5e5bff38484691c8 100644 (file)
@@ -10,7 +10,7 @@ public:
 
   ~AutoPtr()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
@@ -22,7 +22,7 @@ struct A
   A() { }
   ~A()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
@@ -33,7 +33,7 @@ struct B
 {
   virtual ~B()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
index be3adbbd97dd8162e304349fdf4f893f4b661f3c..4a554aa716b9c08a61b41f8ba4d31fa529feb624 100644 (file)
@@ -4,7 +4,7 @@ class E { };
 class T {
   int foo(bool a)
 #if __cplusplus <= 201402L
-  throw (E)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw (E)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   __attribute__((regparm(1)));
   int bar(bool b) __attribute__((regparm(1)));
index 61c65729c9d2dbd823c39b97a92090821034146b..adafb324c7f10a67324757e316ca794243481b44 100644 (file)
@@ -17,7 +17,7 @@ void f1()
 
 void f2()
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   bar();
index b96f65a92bb909fb13133b0e09a17daa6ca5203d..f0de449564e83e4a5737462e90922ea9141af369 100644 (file)
@@ -13,14 +13,14 @@ struct D : private B
   friend class E;
   
   static B *baz (D *);
-  virtual void V () throw (B);  // { dg-error "overriding" "" { target { ! c++1z } } }
-};                             // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                               // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+  virtual void V () throw (B);  // { dg-error "overriding" "" { target { ! c++17 } } }
+};                             // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                               // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
 struct E : public D
 {
-  virtual void V () throw (D); // { dg-error "looser throw" "" { target { ! c++1z } } }
-};                            // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+  virtual void V () throw (D); // { dg-error "looser throw" "" { target { ! c++17 } } }
+};                            // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
 B* foo (D *);
 
 B *D::baz (D *p)
index 0f512640fd3e31287b29cad830f05ab833da1c6f..2cca82a227fee8597536f090cf0803a0a065c88a 100644 (file)
@@ -3,15 +3,15 @@
 struct S { void f (void); };
 
 typedef void f1 (void) throw (int); // { dg-error "exception" "" { target c++14_down } }
-                                   // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+                                   // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
 typedef void (*f2) (void) throw (int); // { dg-error "exception" "" { target c++14_down } }
-                                      // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+                                      // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
 typedef void (S::*f3) (void) throw (int); // { dg-error "exception" "" { target c++14_down } }
-                                         // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                         // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
-void (*f4) (void) throw (int); // { dg-error "dynamic exception specification" "" { target c++1z } }
-                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-1 }
-void (S::*f5) (void) throw (int); // { dg-error "dynamic exception specification" "" { target c++1z } }
-                                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-1 }
+                                         // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                         // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
+void (*f4) (void) throw (int); // { dg-error "dynamic exception specification" "" { target c++17 } }
+                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-1 }
+void (S::*f5) (void) throw (int); // { dg-error "dynamic exception specification" "" { target c++17 } }
+                                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-1 }
index 49bbdc394276f9a6b4b82259a9dae5dc411ae274..5d178b816c8d11bf767beb310b593a47bbe4770b 100644 (file)
@@ -14,7 +14,7 @@ struct B {};
 
 void func()
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   throw A();
index 37efedcc34cfe2c2403fb89a33b50c9018a35258..8a1683dbc9d21cc225403df1e4cc9da558a14c65 100644 (file)
@@ -21,7 +21,7 @@ struct D : public B {
         struct Raiser { 
             Raiser()
 #if __cplusplus <= 201402L
-           throw( int )                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+           throw( int )                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
            {throw 1;}; 
         } raiser; 
index 8967e8c4edd95aa3f4c61134145f7bfde1654e10..da8ed93c174856b2279d4788d92649334b38d5e2 100644 (file)
@@ -4,7 +4,7 @@
 struct exception {};
 
 template <typename T> void foo() throw(exception); // { dg-message "declaration" }
-                                                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-1 }
+                                                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-1 }
 template <typename T> void foo(); // { dg-error "exception" }
 
 struct bar
index cceb98f5585009fd41df3235176d34e29c99dbb2..84d95fcc036b45035d4fe7b4439514c8f3bf2a1e 100644 (file)
@@ -6,7 +6,7 @@ IntArray i;
 
 void test_array()
 #if __cplusplus <= 201402L
-throw (IntArray)       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (IntArray)       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   throw i;
index fb471b2ac8375ff3dd5664ab87f3ead5048b6955..b4de8d6809e2a9b8f2d4373a0d93c69434fa52b8 100644 (file)
@@ -19,7 +19,7 @@ struct C
   typedef typename D::E E;
   void f()
 #if __cplusplus <= 201402L
-  throw(E)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(E)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   { throw E(); }
 };
index 3bb9d2b6a9dd1b6226b216e5c6246e7c11bf6c76..2b1d1fee945b59578fd21a67eea13fd8986c348a 100644 (file)
@@ -14,8 +14,8 @@ template <>
 void f(bool) {} 
 
 int main() {
-  f(s.x++); // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
-  f(++s.x); // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  f(s.x++); // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
+  f(++s.x); // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
 }
index 6effd0a77381074a9bcde07ea1805d43191c688c..9565828f69870ad277e69dbf256af3bff510afb2 100644 (file)
@@ -8,12 +8,12 @@ struct S {
 S s;
 
 int main() {
-  s.x++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  s.x++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   if (s.x != 1)
     return 1;
-  ++s.x; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  ++s.x; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   if (s.x != 1)
     return 2;
 }
index 263164fe7a25d58784e7f2fee5175e2cb9200f3a..b417310e2cf8aad5aaafbbbc5211aba55769f1f6 100644 (file)
@@ -7,6 +7,6 @@ struct S {
 S s;
 
 void f() {
-  ++s.x = false; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  ++s.x = false; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
 }
index ba2df1d5642142a1dabe5d319abc930c7facd671..98984d631c571e396980c886c7409901cf561337 100644 (file)
@@ -10,10 +10,10 @@ int main()
   my_bool b = false;
   int i;
 
-  b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
-  b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
+  b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   i = b;
   if (i != 1)
     abort ();
index d7bb77357140a4b2401220fff335dd83a5f6d53c..bff4b7bb86fd164e42f4c1371d89de5e427080d8 100644 (file)
@@ -10,10 +10,10 @@ int main()
   my_bool b = false;
   int i;
 
-  b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
-  b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
+  b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   i = b;
   if (i != 1)
     abort ();
index ffbbe3121ab553b23a5b45fbf80985aa9446d994..fd79c8c8a39a38219e0fc13136f47811f27a10e9 100644 (file)
@@ -4,5 +4,5 @@ f()
 {
   bool i = 0;
   i++ = 3; // { dg-error "" }
-  // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
+  // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
 }
index e731c2039f3e45544a98fc3b60f6c3a0a3078e09..2f24687536d8a55c05b88142082783f951604734 100644 (file)
@@ -4,6 +4,6 @@ f()
 {
   bool i = 0;
   ++i = 3;
-  // { dg-warning "deprecated" "" { target { ! c++1z } } .-1 }
-  // { dg-error "forbidden" "" { target c++1z } .-2 }
+  // { dg-warning "deprecated" "" { target { ! c++17 } } .-1 }
+  // { dg-error "forbidden" "" { target c++17 } .-2 }
 }
index d84a81ca4382a270486607887026df2c75e5c6d4..36b93d81183486b81981d78e2c1b191925775750 100644 (file)
@@ -18,7 +18,7 @@ struct C
 #if __cplusplus > 201402L
 #define THROW_INT
 #else
-#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 
 struct D
index d69b312a3a814512f7fb34c21ecf0706d7424bbc..03304452f8c2d5904965fe6f1d472c3f09eb0bc3 100644 (file)
@@ -15,7 +15,7 @@ struct B
 #if __cplusplus > 201402L
 #define THROW_INT
 #else
-#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 
 struct C 
index 0e5a9de46f9cbb6b235a61b64ddc68e80fc804c6..04f681f602a1f73b86ec3072e572b9a1d23d3990 100644 (file)
@@ -18,7 +18,7 @@ struct C
 #if __cplusplus > 201402L
 #define THROW_INT
 #else
-#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+#define THROW_INT throw(int)   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 
 struct D
index f15c417c2f9bf5829db8e22ea8cb8cc5a00f8a49..901d2110748f74863cdfffec8fdc9d41f8e40ef2 100644 (file)
@@ -5,7 +5,7 @@
 struct A {
   template <class T> A (T)
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   ;
 };
@@ -13,7 +13,7 @@ struct B {
   B (B&) throw ();
   template <class T> B (T)
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   ;
 };
index 4c63b963f7c1bc9ddc4e1e8ace48ee07f81b89d3..63e67331ec808b1bb20520df044f5401fb6429cd 100644 (file)
@@ -6,7 +6,7 @@ struct S {
     S (const S&) throw ();
     S (...)
 #if __cplusplus <= 201402L
-    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
index 768c9af84c05d87862a3f4f6cd1960162d30ccb7..e92801d61bfd1c1eedb4bbbfdba27b26c0a039f4 100644 (file)
@@ -6,7 +6,7 @@ struct S {
     S (const S&) throw ();
     S (int)
 #if __cplusplus <= 201402L
-    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
index 27f4c0ad63b41679c59600409041e816b4747744..c4e0a5ce7ba5f53cce24cd91ab52558f70511d1f 100644 (file)
@@ -5,7 +5,7 @@ struct S {
     S (S&) throw ();
     S (const S&, int)
 #if __cplusplus <= 201402L
-    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
index ac2dd8c13afc8cc4c52d147718a180f615acd495..076f8a31ff645c66e2fbb238b558f011f5389d99 100644 (file)
@@ -5,7 +5,7 @@ struct S {
     S (const S&) throw ();
     S (S&&)
 #if __cplusplus <= 201402L
-    throw (int)                        // { dg-warning "deprecated" "" { target { ! c++1z } } }
+    throw (int)                        // { dg-warning "deprecated" "" { target { ! c++17 } } }
 #endif
     ;
 };
index bbc0f1046b5971a17c32fd2f1889edeb078acb7c..334db1837c85266e00ce2e555b861fb668be4b18 100644 (file)
@@ -9,7 +9,7 @@ struct foo
 {
   foo ()
 #if __cplusplus <= 201402L
-    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (int)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     {                  /* count (-) */
       throw (1);
index 832942e74af029a89c688198f750bec576adc495..5a87b7ce7d2118ae196538d93cc0fa863521bbbf 100644 (file)
@@ -6,6 +6,6 @@
 struct A
 {
   void* operator new(__SIZE_TYPE__) throw(X);  // { dg-error "expected|type" }
-};                                            // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+};                                            // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
 A* p = new A;
index 754ac92ff4a816359d1bd41345b6ac6e5f61688d..3abd2f7aba01e8ed0048673ff6b18f86023fb6e3 100644 (file)
@@ -5,11 +5,11 @@ class C
 {
 public:
   void* operator new(std::size_t = 32) throw (std::bad_alloc); // { dg-error "first parameter" }
-                                                              // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+                                                              // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
   void* operator new[](std::size_t = 32) throw (std::bad_alloc); // { dg-error "first parameter" }
-                                                                // { dg-error "dynamic exception specification" "" { target c++1z } .-1 }
-                                                                // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-2 }
+                                                                // { dg-error "dynamic exception specification" "" { target c++17 } .-1 }
+                                                                // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-2 }
   void* operator new(std::size_t = 32, const std::nothrow_t&) throw(); // { dg-error "first parameter" }
   void* operator new[](std::size_t = 32, const std::nothrow_t&) throw(); // { dg-error "first parameter" }
 };
index 00ef817ecc91f561195a66e9aa53c7f0eaa1a643..60c223fd53bfc130cf6ff3e0e0ab71a98f10daa3 100644 (file)
@@ -13,12 +13,12 @@ namespace ns
     public:
       inline Test()
 #if __cplusplus <= 201402L
-      throw( Exception )                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+      throw( Exception )                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
       ;
       inline Test(int n )
 #if __cplusplus <= 201402L
-      throw( Exception )                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+      throw( Exception )                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
       ;
     private:
@@ -30,7 +30,7 @@ namespace ns
 // right scope.
 ns::Test::Test()
 #if __cplusplus <= 201402L
-throw( Exception )                             // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw( Exception )                             // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 : i( 1 )
 {
@@ -38,7 +38,7 @@ throw( Exception )                            // { dg-warning "deprecated" "" { target { c++11 && { ! c+
 
 ns::Test::Test( int n )
 #if __cplusplus <= 201402L
-throw( Exception )                             // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw( Exception )                             // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 : i( n )
 {
index 8fe2db0d3e302bb808bf1c5cfa37d96b6e47adac..476fb27c62f04b0b9b368cd75ba9cda4e67997b5 100644 (file)
@@ -60,17 +60,17 @@ struct Egeneric {
 struct infinint {
     void detruit()
 #if __cplusplus <= 201402L
-    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
     template<class T> void infinint_from(T a)
 #if __cplusplus <= 201402L
-    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
     infinint(long a = 0)
 #if __cplusplus <= 201402L
-    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     {
        try {
@@ -81,7 +81,7 @@ struct infinint {
     }
     ~infinint()
 #if __cplusplus <= 201402L
-    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(Egeneric)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
     noexcept(false)
 #endif
index dfe9734eaffa274d273c21698da42ed0cca13ff1..f781c2ba514dedf0a12a4d3bfc55df945de507b6 100644 (file)
@@ -1,6 +1,6 @@
 // Test for proper error message formatting; the throw() should go inside
 // the parens, as below.
 
-void (*g() throw())();         // { dg-message "g\\(\\) throw" "" { target { ! c++1z } } }
-                               // { dg-message "g\\(\\) noexcept" "" { target c++1z } .-1 }
+void (*g() throw())();         // { dg-message "g\\(\\) throw" "" { target { ! c++17 } } }
+                               // { dg-message "g\\(\\) noexcept" "" { target c++17 } .-1 }
 void (*g())();                 // { dg-error "" }
index c32b5d421ffa004394b709c3446277038f158b41..a6853940d6f50e2788d6dec3518c282732c60d0c 100644 (file)
@@ -11,7 +11,7 @@ namespace N
 }
 
 N::A f2;              // { dg-error "1:invalid use of template-name 'N::A' without an argument list" "" { target c++14_down } }
-                               // { dg-error "deduction|no match" "" { target c++1z } .-1 }
+                               // { dg-error "deduction|no match" "" { target c++17 } .-1 }
 N::INVALID f3;        // { dg-error "4:'INVALID' in namespace 'N' does not name a type" }
 N::C::INVALID f4;     // { dg-error "7:'INVALID' in 'struct N::C' does not name a type" }
 N::K f6;              // { dg-error "4:'K' in namespace 'N' does not name a type" }
index 71402bbca40dd3fb873265ba07febc0d54b3174e..418b8f1a771fe45a8c094ac27d0e0878d7e7d1cb 100644 (file)
@@ -1,3 +1,3 @@
 // PR c++/27884
 
-extern "C" void foo(register int *my_perl);    // { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+extern "C" void foo(register int *my_perl);    // { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
index 4db85d4f0e16e874ff114b592e86d39d8d30872b..9787ac92fd828e2eaec24843297992d8119aeec1 100644 (file)
@@ -8,7 +8,7 @@ public:
   operator int() { return i; }
 };
 
-C f (register C x)     // { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+C f (register C x)     // { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
 {
   return x + 31;
 }
index 111d3b3965fa4a514a95d887be7ab88d38ff7129..804aa326d971b1e10150236eab072dd1ebe80cf4 100644 (file)
@@ -7,7 +7,7 @@ class C : public A, public B {};
 class D : public C {};
 void f ()
 #if __cplusplus <= 201402L
-throw (D)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (D)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
 }
index d31f8923d5ce1e677a8b7a26e96e6d7ae5341c73..86d39f3744dc2514c6e2786c76e6192b6078631f 100644 (file)
@@ -8,6 +8,6 @@ struct S { int m; static int s; } s;
 
 X<&a[2]> x3;                    // { dg-error "" } address of array element
 X<&s.m> x4;                     // { dg-error "" } address of non-static member
-X<&s.s> x5;                     // { dg-error "" "" { target { ! c++1z } } } &S::s must be used
+X<&s.s> x5;                     // { dg-error "" "" { target { ! c++17 } } } &S::s must be used
 X<&S::s> x6;                    // OK: address of static member
 
index ee45a936a0c88e647e41c8d7d9d54af385bed122..464408e4a666d9390c0829eccc7eace330b682e8 100644 (file)
@@ -14,7 +14,7 @@ template<typename T, typename T::foo V>
 struct Y { };
 
 template<typename T, typename U, U v>
-struct Y<T, v> { }; // { dg-error "" "" { target { ! c++1z } } }
+struct Y<T, v> { }; // { dg-error "" "" { target { ! c++17 } } }
 
 
 template<typename T, T V>
index cc46245c1a38e279573a0c3b0f5aac394f1f9b7e..f76763f3431677d4236f2e8bce84c93e415394ba 100644 (file)
@@ -12,7 +12,7 @@ void foo()
   auto __thread int l2;                /* { dg-error "multiple storage classes|data types" } */
   __thread extern int l3;      /* { dg-error "'__thread' before 'extern'" } */
   register __thread int l4;    /* { dg-error "multiple storage classes" } */
-}                              /* { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } .-1 } */
+}                              /* { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } .-1 } */
 
 __thread void f1 ();           /* { dg-error "invalid for function" } */
 extern __thread void f2 ();    /* { dg-error "invalid for function" } */
index 35440b9114f0457fe957e619fa5d77418d8eb0fe..56f185e312c35f9cfd1de676d06d0784cacb9a4a 100644 (file)
@@ -7,4 +7,4 @@ void foo()
 {
   __thread auto int l2;                /* { dg-error "multiple storage classes|data types" } */
   __thread register int l4;    /* { dg-error "multiple storage classes" } */
-}                              /* { dg-error "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } .-1 } */
+}                              /* { dg-error "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } .-1 } */
index 448c92cd0a2d1dedb99e12ff551078adcb2ffb5f..6d791484448cd075505817132f37125a11660e6e 100644 (file)
@@ -1669,12 +1669,12 @@ namespace std
 }
 void* operator new(std::size_t)
 #if __cplusplus <= 201402L
-throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 void* operator new[](std::size_t)
 #if __cplusplus <= 201402L
-throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (std::bad_alloc)                 // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 void operator delete(void*) throw();
index e5075e2c251d07d27b1a797a6c917481a12cdec7..c098138f8b4ecd2c95fe8aa1a68b0189e674358a 100644 (file)
@@ -3,7 +3,7 @@
 
 void* operator new(__SIZE_TYPE__)
 #if __cplusplus <= 201402L
-throw (int)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (int)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 
index 0160e9a24d5079c51884cf0028a454c21f342acd..40fd2f0760f20369c47654987a90897d5abd1529 100644 (file)
@@ -3,7 +3,7 @@
 
 void a()
 #if __cplusplus <= 201402L
-throw (int)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (int)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 ;
 void b(std::string const &);
index cd8cac33c3b3ca1877bde68822b4deddd7bdcb74..7bd8fd4dc72780a9346193f583fbfd2c1881e8b5 100644 (file)
@@ -6,7 +6,7 @@ struct Mutex
   bool locked;
   ~Mutex ()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   {
     if (locked)
index cb95048237b0e7b5e1947471e18c3208fe2dfab7..52bc06e114f4327f88bd79890ac532e150b3d1b3 100644 (file)
@@ -23,13 +23,13 @@ class free_list   {
     __mutex_type&     _M_get_mutex();
     void _M_get(size_t __sz)
 #if __cplusplus <= 201402L
-    throw(bad_alloc)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(bad_alloc)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
 void  free_list::_M_get(size_t __sz)
 #if __cplusplus <= 201402L
-throw(bad_alloc)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(bad_alloc)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   __mutex_type& __bfl_mutex = _M_get_mutex();
index f3b7ecc1d990c8af877c77c4afeacdbc1ef024dc..96c73018b6b413de296084696a282abd5c8b3b14 100644 (file)
@@ -21,7 +21,7 @@ class UIException {
 class PasswordDialog {
     void run()
 #if __cplusplus <= 201402L
-    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
@@ -29,12 +29,12 @@ class MessageBox  {
 public:
     MessageBox (std::string t)
 #if __cplusplus <= 201402L
-    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
     virtual int run()
 #if __cplusplus <= 201402L
-    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw (UIException)                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
@@ -47,7 +47,7 @@ extern "C" {
 sigjmp_buf password_dialog_sig_jmp_buf;
 void PasswordDialog::run()
 #if __cplusplus <= 201402L
-throw (UIException)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (UIException)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   __sigsetjmp (password_dialog_sig_jmp_buf, 1);
index ea181ae751952e90f7fb7a19640acd04fca2479a..02693c04d4b94e6a436d16f8a0f200ef238528d3 100644 (file)
@@ -29,7 +29,7 @@ struct B {};
 void
 foo (int size)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   char *p = (char*) __builtin_alloca (size + 1);
index 165e7cca14d82a7fd69b60f37c97ae66785f661f..c1db101db598b8d305db448a1e3677f0246a7c67 100644 (file)
@@ -23,7 +23,7 @@ __attribute__ ((fastcall))
 void
 foo (int j, int k, int m, int n, int o)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   aligned i;
index 609c0c95394152a79a999ad46b5fcd765ee1c386..72dd57ff5c70434eb8d5d6138fbccb948613a659 100644 (file)
@@ -23,7 +23,7 @@ struct B {};
 void
 foo (void)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   aligned i;
index b56f7c8ff40e74fe41856c51d03cf498e550a83b..1828fc9b7e694569cfbd12a3e92a97e56f7be2ee 100644 (file)
@@ -24,7 +24,7 @@ static void
 inline __attribute__((always_inline))
 foo (void)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   aligned i;
index b535f1c2f0a4040e3f760c8a9bde33f6b20c5e64..e630f338c54eb0f2792e88ace3c3e66d48324be2 100644 (file)
@@ -30,7 +30,7 @@ static void
 inline __attribute__((always_inline))
 foo (int size)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   char *p = (char *) __builtin_alloca (size + 1);
index 44f562aae13f2c5044abc1d54fd6ab82de980fb3..48c80d036b74b9252a3cb3ffb9a005f8d22d672b 100644 (file)
@@ -23,7 +23,7 @@ __attribute__ ((thiscall))
 void
 foo (int j, int k, int m, int n, int o)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   aligned i;
index 61da41035ed7fbade95b4166750931dc8f256e97..efee8bb9e9533bda0889a9ce80f140d737588d31 100644 (file)
@@ -30,7 +30,7 @@ struct B {};
 void
 foo (const char *fmt, ...)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   va_list arg;
index 8a5f02916be8558a73d973fcfebfb28736ceff16..d324383e263aa61caeedabf615764c3c20d390aa 100644 (file)
@@ -31,7 +31,7 @@ struct B {};
 void
 test (va_list arg)
 #if __cplusplus <= 201402L
-throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (B,A)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   char *p;
index 1a34249eb2a193067513008d37004f79b20c6c98..fc4d43b01623709aa225b1341099c164246d988d 100644 (file)
@@ -17,7 +17,7 @@ struct D : public B {
         struct Raiser { 
             Raiser()
 #if __cplusplus <= 201402L
-           throw( int )                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+           throw( int )                        // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
            {throw 1;}; 
         } raiser; 
index 1c6d863586384dbd5817e603585a4575fa6a7fe9..4b72bc8b9bae7adca5d79daf2fd17b67b3c2b5ee 100644 (file)
@@ -1,6 +1,6 @@
 // PR sanitizer/79589
 // { dg-do compile }
-// { dg-options "-fsanitize=undefined -std=c++1z" }
+// { dg-options "-fsanitize=undefined -std=c++17" }
 
 struct A { char a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r; } a[64];
 
index 78a3851550ff993bbaad060253afc8ae7cb07053..590287ae431d532aaaaef1262c590ff4c12c1f92 100644 (file)
@@ -5,7 +5,7 @@ struct E{};
 
 inline int bar()
 #if __cplusplus <= 201402L
-throw(E)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(E)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   return 0;
index 15d1aa53f26055c841457bb62dd1c2532500d39d..8004ab0f8c810653d2449064bab855c066670443 100644 (file)
@@ -1,9 +1,9 @@
 // PR c++/60955
 // { dg-options "-Wextra" }
 
-unsigned int erroneous_warning(register int a) {       // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+unsigned int erroneous_warning(register int a) {       // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
     if ((a) & 0xff) return 1; else return 0;
 }
-unsigned int no_erroneous_warning(register int a) {    // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+unsigned int no_erroneous_warning(register int a) {    // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
     if (a & 0xff) return 1; else return 0;
 }
index d829f8ac7c2c4072e00918cc51bf752f0a0440c0..06345fc834a9200ef2a4546a2d9c0b293ab268da 100644 (file)
@@ -9,6 +9,6 @@ void g(int *);
 
 void f(void) 
 { 
-  register int x;      /* { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } } */
+  register int x;      /* { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } } */
   g(&x); /* { dg-warning "address requested for 'x', which is declared 'register'" } */
 } 
index b660e845d5b399c9b08ae246f024c818807066d6..7fd35308dc6414dc2338b0544d70bf284b67b69c 100644 (file)
@@ -88,7 +88,7 @@ extern "C" void *realloc (void *p, size_t size)
 
 void fn_throw()
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   throw 1;
@@ -96,7 +96,7 @@ throw(int)                    // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } }
 
 void fn_rethrow()
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   try{fn_throw();}
@@ -106,7 +106,7 @@ throw(int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } }
 
 void fn_catchthrow()
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   try{fn_throw();}
index d6445124f88e0175eed110f14d6893b60ea75f9a..ced2394826c05617c93e1d414509e73b2a5b6e1f 100644 (file)
@@ -20,7 +20,7 @@ struct X
 {
   X (int)
 #if __cplusplus <= 201402L
-  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   ;
   ~X () throw ();
@@ -28,7 +28,7 @@ struct X
 
 X::X (int)
 #if __cplusplus <= 201402L
-  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   {printf ("in ctor X %s\n", __PRETTY_FUNCTION__); bad = true;}
 X::~X () throw ()
@@ -39,14 +39,14 @@ struct Y : X
 {
   Y()
 #if __cplusplus <= 201402L
-  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   ;
   ~Y() throw ();
 };
 Y::Y()
 #if __cplusplus <= 201402L
-  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw (int)                  // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   : X(thrower ())   // throws, so X::X is never called
   {printf ("in ctor Y%s\n", __PRETTY_FUNCTION__); bad = true;}
index 3c4813e3f743bca8e8dd3f9a20120d81385c7544..3c37c523a406059b705be82d9f875a0ef6e85167 100644 (file)
@@ -2,7 +2,7 @@
 
 void athrow(const int & e)
 #if __cplusplus <= 201402L
-throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(int)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
    throw e;
index b4296ac45019c8ae7adf4724a3468393b1deb234..957c200f8af7c4ccefd75a446834690778498c03 100644 (file)
@@ -6,7 +6,7 @@
 
 void athrow(const ANY & e)
 #if __cplusplus <= 201402L
-throw(ANY)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(ANY)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
    throw e; // { dg-bogus "" } discarding const
index c64a5222b84394858c8006b9eff0f79e53138c4d..ad3b2e4f0082a4c9a982edb19b8f418a56914065 100644 (file)
@@ -2,7 +2,7 @@
 template <class T>
 void f()
 #if __cplusplus <= 201402L
-throw (T)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw (T)                      // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   throw 7;
index 4fc869d90b8c0e277ff6fc1db5f2fac3999e6656..310ac50fae64142342c52a93bd2f9dd8efe450a3 100644 (file)
@@ -5,7 +5,7 @@
 template<class T> struct A {
     void X()
 #if __cplusplus <= 201402L
-    throw(T)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+    throw(T)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
     ;
 };
@@ -13,6 +13,6 @@ template<class T> struct A {
 template<class T>
 inline void A<T>::X() 
 #if __cplusplus <= 201402L
-throw(T)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(T)                       // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 { } 
index 1ed6d5c3a6810ff229c129bfee75d42bd5706a24..ce57b0c53750d4d65f55eba854c0d26ef59faa71 100644 (file)
@@ -2,12 +2,12 @@
 int main ()
 {
   bool b = false;
-  int i = b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  int i = b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   if (i != false || b != true)
     return 1;
-  i = b++; // { dg-warning "deprecated" "" { target { ! c++1z } } }
-  // { dg-error "forbidden" "" { target c++1z } .-1 }
+  i = b++; // { dg-warning "deprecated" "" { target { ! c++17 } } }
+  // { dg-error "forbidden" "" { target c++17 } .-1 }
   if (i != true || b != true)
     return 1;
 }
index a6ffd3375b5a95b74eec86c524eb26a48a8dc53e..0ac61981b97c0bed6ccf0539a5a4a7b59cdbc7e4 100644 (file)
@@ -12,7 +12,7 @@ struct A {
   A() { }
   ~A()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #else
   noexcept(false)
 #endif
index 8b574f57d7bf615b28839d8791b72c0cc57876f1..af43f66b1ba34d8edcf4473822de90488e04f436 100644 (file)
@@ -9,7 +9,7 @@ void my_terminate_handler() {
 }
 
 void throw_an_unexpected_exception() throw() {
-  throw 1;     // { dg-warning "throw will always call terminate" "" { target c++1z } }
+  throw 1;     // { dg-warning "throw will always call terminate" "" { target c++17 } }
 }
 
 int main() {
index f95056ca6cefc9d18e936735dc58fa7d68c7fc73..1f3439d925ee2d500704212d72427b80b97be245 100644 (file)
@@ -7,7 +7,7 @@ class not_ok {
 public:
   void f()
 #if __cplusplus <= 201402L
-  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(int)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   { }
 };
index 5ff84edafef6ebaf63938c48df69ab28a0cd28a4..847f2d531165759f123e0fcbcf8807d586f599e4 100644 (file)
@@ -29,13 +29,13 @@ public:
   foo();
   void x ()
 #if __cplusplus <= 201402L
-  throw(bar)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw(bar)                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   ;
 };
 void foo::x()
 #if __cplusplus <= 201402L
-throw(bar)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw(bar)                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
   if (!b) throw bar (static_cast<::N::X*>(this));      // { dg-error "lambda expressions|expected|invalid" } parse error
index 50ecfd9d97f2fee22d5f30a93f174f18d7f8a811..61ee8e5ae6cbff1c678748a1df988275d7fe2ed0 100644 (file)
@@ -8,7 +8,7 @@ struct foo
 };
 
 void foo::x() throw(bar)       // { dg-error "" } parse error
-{                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } .-1 }
+{                              // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } .-1 }
 }
 
 void bar()
index 82eabb6d7d8a9d5cfb61369a537227e082f3733b..56ed376d232b678e3a471185e86bb9bbe601ad32 100644 (file)
@@ -15,7 +15,7 @@ struct X {
   }
   void* operator new ( std::size_t n )
 #if __cplusplus <= 201402L
-  throw ( std::bad_alloc )                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+  throw ( std::bad_alloc )                     // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
   {
     new_flag = true;
index 90875cfcf5f4fc67d6430ae09280653f98cc2653..dc0b88d994fb34de494b89f2757a616b5a7f2ab1 100644 (file)
@@ -3,7 +3,7 @@
 
 inline double foo (double x)
 {
-  register double r;   // { dg-warning "ISO C\\+\\+1z does not allow 'register' storage class specifier" "" { target c++1z } }
+  register double r;   // { dg-warning "ISO C\\+\\+17 does not allow 'register' storage class specifier" "" { target c++17 } }
   asm volatile ("fsqrt" : "=t" (r) : "0" (x));
   return r;
 }
index b22f4eb54bb374a1504400b7a020b5d91418bdc1..221b38fe4474b603ea4e02eb288a91ac8a58cde8 100644 (file)
@@ -4,7 +4,7 @@
 
 void writeNote()
 #if __cplusplus <= 201402L
-throw( int )                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++1z } } } }
+throw( int )                   // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } }
 #endif
 {
     printf( "hello world\n" );
index abd27947ccc191407699820ea1849d5bd3d9ea17..7df7fb98fa7b8648b9857bcf483f8cbc555fa814 100644 (file)
@@ -56,8 +56,8 @@ proc g++-dg-runtest { testcases flags default-extra-flags } {
            }
            set option_list { }
            foreach x $std_list {
-               # Handle "concepts" as C++1z plus Concepts TS.
-               if { $x eq "concepts" } then { set x "1z -fconcepts" }
+               # Handle "concepts" as C++17 plus Concepts TS.
+               if { $x eq "concepts" } then { set x "17 -fconcepts" }
                lappend option_list "${std_prefix}$x"
            }
        } else {
index 2733c6281003cc206e262a86e490777414f21414..d22948543e2a133914da4452428354a04e7eb558 100644 (file)
@@ -7827,13 +7827,13 @@ proc check_effective_target_c++14 { } {
     if [check_effective_target_c++14_only] {
        return 1
     }
-    return [check_effective_target_c++1z]
+    return [check_effective_target_c++17]
 }
 proc check_effective_target_c++14_down { } {
     if ![check_effective_target_c++] {
        return 0
     }
-    return [expr ![check_effective_target_c++1z] ]
+    return [expr ![check_effective_target_c++17] ]
 }
 
 proc check_effective_target_c++98_only { } {
@@ -7850,7 +7850,7 @@ proc check_effective_target_c++98_only { } {
     return 0
 }
 
-proc check_effective_target_c++1z_only { } {
+proc check_effective_target_c++17_only { } {
     global cxx_default
     if ![check_effective_target_c++] {
        return 0
@@ -7863,8 +7863,8 @@ proc check_effective_target_c++1z_only { } {
     }
     return 0
 }
-proc check_effective_target_c++1z { } {
-    return [check_effective_target_c++1z_only]
+proc check_effective_target_c++17 { } {
+    return [check_effective_target_c++17_only]
 }
 
 # Check for C++ Concepts TS support, i.e. -fconcepts flag.
index cf6f924ac955894cfc8e596238be77c21405e062..3696c76768b58497819d0620870ffa7d90b46205 100644 (file)
@@ -1,3 +1,11 @@
+2017-09-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * include/cpplib.h (enum c_lang): Rename CLK_GNUCXX1Z
+       to CLK_GNUCXX17 and CLK_CXX1Z to CLK_CXX17.
+       * init.c (lang_defaults, cpp_init_builtins): Likewise.
+       * expr.c (cpp_classify_number): Use C++17 instead of C++1z
+       in diagnostics.
+
 2017-07-07  David Malcolm  <dmalcolm@redhat.com>
 
        PR c++/79300
index 3eac3768bbde6c0fac11966a1878fffb29c09876..04675d8faee2a9d7d1ead03e7cb36f38d7bd2779 100644 (file)
@@ -636,7 +636,7 @@ cpp_classify_number (cpp_reader *pfile, const cpp_token *token,
        {
          if (CPP_OPTION (pfile, cplusplus))
            cpp_error_with_line (pfile, CPP_DL_PEDWARN, virtual_location, 0,
-                                "use of C++1z hexadecimal floating constant");
+                                "use of C++17 hexadecimal floating constant");
          else
            cpp_error_with_line (pfile, CPP_DL_PEDWARN, virtual_location, 0,
                                 "use of C99 hexadecimal floating constant");
index 66ef4d6443376fbac6050c50597c52ebc6739c39..8c81f9d03a00c7863344f353b1122bbe20863005 100644 (file)
@@ -171,7 +171,7 @@ enum cpp_ttype
 enum c_lang {CLK_GNUC89 = 0, CLK_GNUC99, CLK_GNUC11,
             CLK_STDC89, CLK_STDC94, CLK_STDC99, CLK_STDC11,
             CLK_GNUCXX, CLK_CXX98, CLK_GNUCXX11, CLK_CXX11,
-            CLK_GNUCXX14, CLK_CXX14, CLK_GNUCXX1Z, CLK_CXX1Z, CLK_ASM};
+            CLK_GNUCXX14, CLK_CXX14, CLK_GNUCXX17, CLK_CXX17, CLK_ASM};
 
 /* Payload of a NUMBER, STRING, CHAR or COMMENT token.  */
 struct GTY(()) cpp_string {
index 1477673245a113cf1948fc8446e4959774612bec..0148586a5cb7fc35bb01a16e03fa1e9e18247cdb 100644 (file)
@@ -108,8 +108,8 @@ static const struct lang_flags lang_defaults[] =
   /* CXX11    */  { 1,  1,  0,  1,  1,  1,  1,   1,   1,   1,    0,     0,     1,   0 },
   /* GNUCXX14 */  { 1,  1,  1,  1,  1,  0,  1,   1,   1,   1,    1,     1,     0,   0 },
   /* CXX14    */  { 1,  1,  0,  1,  1,  1,  1,   1,   1,   1,    1,     1,     1,   0 },
-  /* GNUCXX1Z */  { 1,  1,  1,  1,  1,  0,  1,   1,   1,   1,    1,     1,     0,   1 },
-  /* CXX1Z    */  { 1,  1,  1,  1,  1,  1,  1,   1,   1,   1,    1,     1,     0,   1 },
+  /* GNUCXX17 */  { 1,  1,  1,  1,  1,  0,  1,   1,   1,   1,    1,     1,     0,   1 },
+  /* CXX17    */  { 1,  1,  1,  1,  1,  1,  1,   1,   1,   1,    1,     1,     0,   1 },
   /* ASM      */  { 0,  0,  1,  0,  0,  0,  0,   0,   0,   0,    0,     0,     0,   0 }
 };
 
@@ -497,8 +497,8 @@ cpp_init_builtins (cpp_reader *pfile, int hosted)
 
   if (CPP_OPTION (pfile, cplusplus))
     {
-      if (CPP_OPTION (pfile, lang) == CLK_CXX1Z
-         || CPP_OPTION (pfile, lang) == CLK_GNUCXX1Z)
+      if (CPP_OPTION (pfile, lang) == CLK_CXX17
+         || CPP_OPTION (pfile, lang) == CLK_GNUCXX17)
        _cpp_define_builtin (pfile, "__cplusplus 201703L");
       else if (CPP_OPTION (pfile, lang) == CLK_CXX14
          || CPP_OPTION (pfile, lang) == CLK_GNUCXX14)
index 36a9744fb4a844959d66456328027e98fb9439d6..2ec2c06ec1785ebfc7131127eac6673ff069e0d2 100644 (file)
@@ -1,3 +1,120 @@
+2017-09-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libstdc++-prettyprinters/cxx17.cc: Use -std=c++17 or
+       -std=gnu++17 instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead
+       of c++1z and c++17_only instead of c++1z_only.  Adjust expected
+       diagnostics and comments refering to 1z to 17.
+       * testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise.
+       * testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise.
+       * testsuite/30_threads/scoped_lock/cons/1.cc: Likewise.
+       * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Likewise.
+       * testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc:
+       Likewise.
+       * testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise.
+       * testsuite/18_support/launder/1.cc (test02): Likewise.
+       * testsuite/18_support/launder/requirements_neg.cc: Likewise.
+       * testsuite/18_support/launder/requirements.cc: Likewise.
+       * testsuite/18_support/byte/requirements.cc: Likewise.
+       * testsuite/18_support/byte/ops.cc: Likewise.
+       * testsuite/18_support/byte/global_neg.cc: Likewise.
+       * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
+       Likewise.
+       * testsuite/27_io/types/4.cc: Likewise.
+       * testsuite/25_algorithms/sample/81221.cc: Likewise.
+       * testsuite/25_algorithms/sample/1.cc: Likewise.
+       * testsuite/25_algorithms/sample/2.cc: Likewise.
+       * testsuite/25_algorithms/search/searcher.cc: Likewise.
+       * testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
+       * testsuite/experimental/filesystem/path/construct/string_view.cc:
+       Likewise.
+       * testsuite/24_iterators/range_access_cpp17.cc: Likewise.
+       * testsuite/24_iterators/container_access.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
+       * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
+       * testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
+       * testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise.
+       * testsuite/20_util/shared_ptr/cons/array.cc: Likewise.
+       * testsuite/20_util/shared_ptr/observers/array.cc (struct A): Likewise.
+       * testsuite/20_util/pair/cons/deduction.cc: Likewise.
+       * testsuite/20_util/variant/deduction.cc: Likewise.
+       * testsuite/20_util/tuple/78939.cc: Likewise.
+       * testsuite/20_util/tuple/cons/deduction.cc: Likewise.
+       * testsuite/20_util/void_t/1.cc: Likewise.
+       * testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: Likewise.
+       * testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise.
+       * testsuite/20_util/addressof/requirements/constexpr.cc: Likewise.
+       * testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise.
+       * testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc:
+       Likewise.
+       * testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc:
+       Likewise.
+       * testsuite/20_util/has_unique_object_representations/value.cc:
+       Likewise.
+       * testsuite/20_util/time_point/arithmetic/constexpr.cc: Likewise.
+       * testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
+       * testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise.
+       * testsuite/20_util/function/cons/deduction.cc: Likewise.
+       * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
+       Likewise.
+       * testsuite/20_util/is_aggregate/requirements/typedefs.cc: Likewise.
+       * testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
+       Likewise.
+       * testsuite/20_util/is_aggregate/value.cc: Likewise.
+       * testsuite/26_numerics/lcm/1.cc: Likewise.
+       * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
+       * testsuite/26_numerics/gcd/1.cc: Likewise.
+       * testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
+       * testsuite/26_numerics/valarray/deduction.cc: Likewise.
+       * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Likewise.
+       * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
+       * testsuite/23_containers/queue/members/emplace_cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/array/cons/deduction.cc: Likewise.
+       * testsuite/23_containers/array/cons/deduction_neg.cc: Likewise.
+       * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/deque/cons/deduction.cc: Likewise.
+       * testsuite/23_containers/stack/members/emplace_cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/list/cons/deduction.cc: Likewise.
+       * testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/forward_list/cons/deduction.cc: Likewise.
+       * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Likewise.
+       * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
+       Likewise.
+       * testsuite/23_containers/vector/cons/deduction.cc: Likewise.
+       * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string/cons/char/9.cc: Likewise.
+       * testsuite/21_strings/basic_string/cons/char/deduction.cc: Likewise.
+       * testsuite/21_strings/basic_string/cons/char/79162.cc: Likewise.
+       * testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise.
+       * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string/cons/wchar_t/79162.cc: Likewise.
+       * testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc:
+       Likewise.
+       * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc:
+       Likewise.
+       * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
+       Likewise.
+
 2017-09-13  Jonathan Wakely  <jwakely@redhat.com>
 
        PR libstdc++/81468
index 722f65860f704ef07b6b30bed6ea6a14ff2263b4..36f679095dc4aa2336f6c2f2791dcfa060a51963 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <stddef.h>
 
index 6573bd9b1e32f6f1ebd013f7f322cdf066dece03..59773cbc8c88be50c218a3d90b60173fe94611e5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <cstddef>
 
index da5fc91a12a654ab2b53ce67a12e7b8c00dde6a0..4cb05df04057ea1c650da37118c04128d266fc37 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <cstddef>
 
index 022e6cf5839710fb68eced7ea4474302138db0fd..29c1b4ab33356a049d4770d848f05ac310488ad1 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <new>
 #include <testsuite_hooks.h>
@@ -36,7 +36,7 @@ test01()
 void
 test02()
 {
-  // C++1z 1.8 [intro.object]
+  // C++17 1.8 [intro.object]
   struct X { const int n; };
   union U { X x; float f; };
 
index 896a00380169e0cb96d8dc9fa0f4e5c97a8dc336..e89deb2009453de35230f69a257fa059217def4b 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // NB: This file is for testing new with NO OTHER INCLUDES.
 #include <new>
index 38759c061a93ce5e9e1665583c74b599e74caef5..90e1eb63b447d62330e586376f07e68cad9d1f0f 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <new>
 
index 7dcce563f7f42f505cf4fd937b3163f427705a5a..f315792dc7f18e207ad26f09f05ec8adaaa2f134 100644 (file)
@@ -15,7 +15,7 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
+// { dg-options "-std=gnu++17" }
 
 #include <cassert>
 #include <exception>
index 51f2fa8473993eaaa5121ee15654dbeec31bf548..0138f5b7cfae9e12543fb6faeb816e0bbade3309 100644 (file)
@@ -15,8 +15,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 #include <utility>
 
index 2721765ea7599f762a7ee4c3207bec39e8321fe3..438d50afddfb2d14f9604e488e46a0847a63d0fc 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2011-2017 Free Software Foundation, Inc.
 //
index a4346e0accd4bfd7b0a98c575e3cc510fbfc0e1d..a3d4ca611347aadbd03ef15e344612e1ad341692 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <functional>
 
index 823e9e0612c953a9621b149a278e1d964cc59b7e..de2a01d61c515f2d13c327348cbbeb71109e941b 100644 (file)
@@ -15,7 +15,7 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
+// { dg-options "-std=gnu++17" }
 // { dg-do compile }
 
 #include <functional>
index f49fcaa3492793cbced524c9938f37aacd54993b..d20334df2b9b9df3139eec1df11f0fcab5fe0124 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <functional>
 
index 28d2512ecff4e567b9e2427afe12dfaa0e8a57e1..278f3d38738649d199691728c247f55b2edf80d3 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2016-2017 Free Software Foundation, Inc.
 //
index 447343e4c8d453b2d051179dfe2dba77c8ca76a6..c9fdbe9ca344b6c1db30eb2834f7a5526f0701ed 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2016-2017 Free Software Foundation, Inc.
 //
index 008d59062abda91486f40c73047ed89a6f974f6b..8587258a64e0d20f1cf3756ea6ea3a43211fb2ac 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2016-2017 Free Software Foundation, Inc.
 //
index 4c189cdc0c33fe768e1cffc4259b3f4bc6063b5d..b10132174daf59235710f1aceac6861404fcb154 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index 4b0358ccc90c5282dd4ec76ccc34e3c75969b9ad..5a8a383b2b9431b700e7e8c4071d8909f5b6bafb 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index 6168d9c39c70b98fb5d843134e4fcfbf644d5f48..1cac59915c697fcb064022a5b2f6093ca24a60ea 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index c8e6fd60591858960b5ea946b953843934b15e6d..3831cf2316f91a5dab2b2c7e904c73e86b9c3b5e 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index c3c79d4b6e6d7af7010feb4628f174c316a3964b..14049dbe0e3558e3a8fc0bd002f741213fb1d9b1 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2016-2017 Free Software Foundation, Inc.
 //
index 88d5a9998059a67ae54055d487b179e1a60dabc4..e529bf85c2985db36cc5f90c8eb993ede392f3c6 100644 (file)
@@ -20,7 +20,7 @@
 #include <memory>
 #include <testsuite_hooks.h>
 
-// C++1z 20.11.2.2.1 shared_ptr constructors [util.smartptr.shared.const]
+// C++17 20.11.2.2.1 shared_ptr constructors [util.smartptr.shared.const]
 
 template<typename To, typename From>
 constexpr bool check()
index ecd0780fbc2aff2461a5b645e4ce797dc9efc831..9621185fd406fd89a253a6ec2850ad1a6642a535 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <memory>
 
index 4216f9510e043df1117f7633c985e833f9e94296..59115432782628ca6fcdac2877fc77cbf87f1f8f 100644 (file)
@@ -25,7 +25,7 @@ struct A
   int i = 0;
 };
 
-// C++1z 20.11.2.2.5 shared_ptr observers [util.smartptr.shared.obs]
+// C++17 20.11.2.2.5 shared_ptr observers [util.smartptr.shared.obs]
 
 // get
 void
index 663b2c0f7a7cef6723379c331a88968eddce79c5..e0ae50b855c4436556633a66080a28bfe147f4e5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <memory>
 
index 2f2acebccf1f54473c33ccc3fb44e94bbdc13804..9bf41e0b57d5f2c4404217725204f686581331f3 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2011-2016 Free Software Foundation, Inc.
 //
index bab143b387f6e1a289d6d8349e7fad77dd74d478..552ceb363ec5f8b5a9673092133d9a381f1e791e 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // PR libstdc++/78939
 
index 47e2488348a87c336ee1d0aac7cd799c52f88d89..0804d5584e3eb3096a717c8008ba23ac05af887d 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index 23aca62caad821780d36408edc3d466b82b978c6..dbf27069f9a1edc2248f9e5e503d196240f02d88 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <memory>
 
index 33bc9d2a40ee4fcc42da7e03e8d687074ac1441c..1059a52a21122f82e7f3d1567a65dd69503bd9bf 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index 78a6daa5e651630e08655ae80c49f85c32fc2c93..54bfaa0c35ad5af4e38bb8ed5069748e0d303993 100644 (file)
@@ -15,7 +15,7 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
+// { dg-options "-std=gnu++17" }
 // { dg-do compile }
 
 #include <type_traits>
index ea384172aca2c6ceb147a1bb51eb909223a82075..dedea6e22f491ac5033240b52d06f3ad59f519f5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <memory>
 
index 0afbe119d4fc355cabc304a7e99c36d7d5dc7c56..76f1db96e9fa2c6a0c6888eebd8e839aec0e8a8c 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string>
 
index 5ff6988ef7cd6544d1aadd75d041ceb1eb96d14c..f864821a77fa3db1d57ee918863977dbc51d89c4 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <string>
 #include <testsuite_hooks.h>
index 205714a7f5f4a6908547cf3d8fa072f365ae5a16..52ab0601a24f3b4ed4695fb3e4b11c515d9f21f5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string>
 #include <testsuite_iterators.h>
index 0afbe119d4fc355cabc304a7e99c36d7d5dc7c56..76f1db96e9fa2c6a0c6888eebd8e839aec0e8a8c 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string>
 
index 2a39d0021105a2a90feebe397cb917d7234e2a03..b56c0b80e02e23f2915fd9a8bea8f56130467d7f 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <string>
 #include <testsuite_hooks.h>
index 23ae07c6634c63d11af532be875470acd75daf03..daf3c4f3bdea10b7cb62d0964ae079cd3479b4bb 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string>
 #include <testsuite_iterators.h>
index 0cb4c79861b59efb3f2745e3960c2363a4f51036..e5737a307935cb35d7f48c1373dbff13c86cc902 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string_view>
 
index d8322a8b2747525e83d6d7cbfda9b495c9378cdc..7d88f56a021969dad325dc5208695176028d5efe 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string_view>
 
index 8118b97468baea129e386946ccfb46ffb485e02b..f2c971e1b02300ea14dd5de4f9a86701ad92895e 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string_view>
 
index 27b6def1b05fcbece14468cd20bf972692c46f76..c00ec83a20f0fd69ab7ec871d2ebc55db5d45691 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string_view>
 
index 0049ae3ca0c4edb0c13dd18982adde021cee893b..f6de2485287234477f0bb57432d3557bc872f5cd 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <string_view>
 
index efd280fea231494c0c97774c3db28e6056190226..d404a1d08ae9a4d2dfa565c6c6260fbe56dc7756 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
 //
index 5ce2909d832c8302f9ff85808d5f626cfd2ea7c9..79a993918141e67bf2ef8605ed078cd4dae6c67b 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <array>
 
index ec11b05a54c83c095c0a1143c4894602e90e9cf0..16d66215085dc4904661dc1983e74dbe96147122 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <array>
 
index c7c0f2e5ae18ef1afaba79fb95451667ce04e8f3..c0e333b2e5543ded4c518c35d7750f87d2238f61 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <deque>
 #include <testsuite_iterators.h>
index 935123e1345203d300a7a498c30467a50eeeb4ae..c0dd778e6fd74b51f6a415043ea4f6c8923abe8d 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <deque>
 #include <testsuite_hooks.h>
index ee30288678f349527f3a172b3569d36d392938cd..ff98d3e35b05a7ea0b471ab9c3c11d25a0086a06 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <forward_list>
 #include <testsuite_iterators.h>
index eb0ffbd8fd8cc5000faf5efea37e5496b81ade06..0f7ea34c972d8646de7d8886b3e8af652c02f367 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <forward_list>
 #include <testsuite_hooks.h>
index c4df79526a80ac27e706ebeefc6c922105ae403f..cded2492d350a7c6b167e578a90c0ca85b11e7d9 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <list>
 #include <testsuite_iterators.h>
index 3472c6d4287065d6f72c8d361fdf350eb4dac292..02a7ee4a403805c573e0a4710f1ec52e202a78af 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <list>
 #include <testsuite_hooks.h>
index 53eb8a0d3d4c341031fc77a853437bb27c2a0163..dce9d4284e75e3b4c3c1db2d79d837ba17754923 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <queue>
 #include <testsuite_hooks.h>
index 8b9c8888a0a5ab6c0c37fb8dae9aa765a505ecc0..a30c6fc33fcb91127adb301818f6d73cb70c2621 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <stack>
 #include <testsuite_hooks.h>
index ef38a727ae5e395be2f5e618959385aa275fadd4..d6a8b25c2099f0a75f4a31cdc08ea49482097c9c 100644 (file)
@@ -30,7 +30,7 @@ struct E : std::equal_to<T> { };
 
 using __gnu_test::CustomPointerAlloc;
 
-// { dg-xfail-if "node reinsertion assumes raw pointers" { c++1z } }
+// { dg-xfail-if "node reinsertion assumes raw pointers" { c++17 } }
 // TODO when removing this xfail change the test back to "dg-do run".
 template class std::unordered_set<T, H, E, CustomPointerAlloc<T>>;
 
index ea1745b91153d52a4d041e59786d738550424269..a653a26799f2377a43a77cf6996cd3bd3228d175 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <vector>
 #include <testsuite_hooks.h>
index 413f02cc0cb94f93f1acca0475f49a0b6a1742fe..3125f824d16e2673dc0c43d8911482e986d6a9a4 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <vector>
 #include <testsuite_iterators.h>
index ee906a9dd329339b313015085890731e444c026e..e8b51df935da60247e363d4c89df13c6d6a244f5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <vector>
 #include <testsuite_hooks.h>
index b8d0e80a2de0ee515f1dade06072876fd95139e8..b90324582e9379576c7c053b615ada23866bb0b0 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 // { dg-options "-std=gnu++17" }
 
 // Copyright (C) 2015-2017 Free Software Foundation, Inc.
index 1d5b0739007806761a0302ad9ca26a42b86b5afd..2402fa8c8ff497cbc5666d83be023f778f1a7513 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 // { dg-options "-std=gnu++17" }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
index 7b8700a339b870fb3ba0bba25aac918da0ba0752..b5ec7a9c71c214c3ab336232b67f97064040c0f4 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <algorithm>
 #include <random>
index 94ded717e624fd163f51eaa2ac3346117cc668eb..1660c154b6c61f842add5f46af5bab2635ae6080 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #ifndef _GLIBCXX_ASSERTIONS
 // Make std::uniform_int_distribution check its parameters
index 28ec0e3152a6b72a01f069ac9162f74f1647a1f9..c3938409adfa9d3ab8e1a145f1c8a07102ba5107 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 // { dg-require-parallel-mode "" }
 
 #include <algorithm>
index 794cdb9a678e1b78aa33d49cc88d6e65fe08664b..1d9173f3b194ae068e0c162ce33b20aba5f75ac5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 
 #include <algorithm>
 #include <testsuite_hooks.h>
index 0f0b7b85b4e0d234c9d27cf02c84e1d80979a545..cc89046e63bdaf859c82dcf1b71f8c3c7209d490 100644 (file)
@@ -15,8 +15,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 #include <numeric>
 
index d88f145d75452ecec938c44c0a9579aff058f8de..30524a1b06cabb20ed950cc895027ad717447aed 100644 (file)
@@ -15,8 +15,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 #include <numeric>
 
index c17ba97a00f5a0b593b77113db0dd3b6df25787c..52009f7905606b8026c9da92aaefff40054f64e7 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 // { dg-xfail-run-if "AIX long double" { powerpc-ibm-aix* } }
 
 #include <cmath>
index 9f7960cc8d74cd0b9e38bd4fe6b792a93dcb1461..ab066dcf5d4a503ea2d987ed1019fa881ceb727b 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-do compile { target { ! c++1z } } }
+// { dg-do compile { target { ! c++17 } } }
 
 // Copyright (C) 2007-2017 Free Software Foundation, Inc.
 //
index 367f0a3e0e3f6de205568877c8f68e27252ca5a9..2c3337e4c0d6dae00d4898c87b6806f6f109dc65 100644 (file)
@@ -15,8 +15,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 #include <numeric>
 
index 7a908a4568ff885bf6729d54b6d33e733a01295b..e16e6ae1ee9fe64a30d3d399a8dcd819c31a80d6 100644 (file)
@@ -15,8 +15,8 @@
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-// { dg-options "-std=gnu++1z" }
-// { dg-do compile { target c++1z } }
+// { dg-options "-std=gnu++17" }
+// { dg-do compile { target c++17 } }
 
 #include <numeric>
 
index 72d4bc0912635c28e899e11c6403797c7fbfafa3..f9e26970756191cdff18e92addc342a998fde3e7 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <valarray>
 
index ee1a77736ceed1b01a9f4ab24bc685fa3ae691ec..f04b2fa6bb45ee86471fcbfd968607cf92078d80 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 // In C++17 these names are not reserved by the library.
 #define io_state 1
index 63b3f67f5c9c8c17ac811a725b6d6af0aa730729..76f63b7d175c16e7aa376a46a15ab4886eec0cc5 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <regex>
 #include <testsuite_iterators.h>
index b72c1a12a405e7458e216bb19f92ebe1e8d32b40..a3e2d4d00f8ffe7e69ac7eaa74fc37410d704d26 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <mutex>
 
index e420ab083789f0955680230da778450a15afd0d0..d9bdc5bf4a67d353c5b72fb47b5c5c945bdea153 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do run { target c++1z } }
+// { dg-do run { target c++17 } }
 // { dg-require-cstdint "" }
 
 // Copyright (C) 2017 Free Software Foundation, Inc.
index 7d4f5bfc3865a38a75fe3008be40f37e4e89bc2d..ddfb3a0fbd737755b96d7c5cb40b66f71590e5a1 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <mutex>
 
index cbf10757f480d8f7bde707851172cce9f820a8c2..3961766369ed46f38c20793863485424b58980c9 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 // { dg-require-cstdint "" }
 // { dg-require-gthreads "" }
 
index b8a09042094a150718cbc84f6e0e1b982c7cf9d5..aa57fcbf431cb78c69c21450e79740879adbf08d 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 // { dg-require-cstdint "" }
 // { dg-require-gthreads "" }
 
index 4f36bab9d6a9a67a72e53b7e5e4933502c463876..277bb43429c4513b0bc69e9aa0cbbd512efe28bc 100644 (file)
@@ -16,7 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-options "-std=gnu++17" }
-// { dg-do compile { target c++1z } }
+// { dg-do compile { target c++17 } }
 
 #include <mutex>
 
index 6d55c027b012106a5c9c2e4874964805817499a4..fbf8bd4d6d3178bf9a1e94141dceeb27ecdc4729 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-lstdc++fs -std=gnu++1z" }
-// { dg-do run { target c++1z } }
+// { dg-options "-lstdc++fs -std=gnu++17" }
+// { dg-do run { target c++17 } }
 // { dg-require-filesystem-ts "" }
 
 // Copyright (C) 2016-2017 Free Software Foundation, Inc.
index c5cdd1d89430b1703605e5e0c1892780b3727810..bff5a8517a9867e98699d777112b11d0bdaddd43 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index fc0d9aa6fc1ad642c3d0fcf4cd3d6c4592e8e846..3b5d5e32a144a96ebdb10f3116fd165d149d9798 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index 9058660cec32a0149d22b812895039003de0d550..cd5d653c3b0ad71c877d4408291461a4aa29d3da 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 
 // -*- C++ -*-
index fdf0effdba8a30765484b84ac26feb8e1f14ec77..29dfb3709ac150a79905d8cd5651488ab25d809e 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 
 // -*- C++ -*-
index f513b4fb4c03ca1e076d071ce9e4686b7827a54d..c2b0c6b91eac59af49cdf541516f631cfe958743 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index f0436a8a675c0ddf006693cc583ea3e1142b0deb..20dcb6d6093897a84e1f201d75db364096063a5b 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index a28c77966b352131c03242b70f78fd9252069864..5eba0ade96241327b72aa567e03d828fffa9dbfc 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index 70293689966496c44501d8330f3e79a48163e4d7..a06438ad5329844fb44a12f8e065d303c3ddca1b 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index d3ee98349f6153df5e21b2d35f079b9974122c4d..e671aa015cf74a8b62e6b35b5ae23ce8ab4db3b3 100644 (file)
@@ -1,5 +1,5 @@
 // __gnu_pbds::test::basic_type has ambiguous string conversions in C++17
-// { dg-do run { target { ! c++1z } } }
+// { dg-do run { target { ! c++17 } } }
 // { dg-require-time "" }
 // This can take long on simulators, timing out the test.
 // { dg-options "-DITERATIONS=5" { target simulator } }
index d31ae7e6eac38e97b2bf5c52c197cf18a826d084..004738052e463af72f6d324ddbccc2e455876487 100644 (file)
@@ -1,5 +1,5 @@
-// { dg-options "-g -O0 -std=gnu++1z" }
-// { dg-do run { target c++1z } }
+// { dg-options "-g -O0 -std=gnu++17" }
+// { dg-do run { target c++17 } }
 // { dg-skip-if "" { *-*-* } { "-D_GLIBCXX_PROFILE" } }
 
 // Copyright (C) 2014-2017 Free Software Foundation, Inc.