diff options
author | Martin Sebor <msebor@redhat.com> | 2019-05-17 17:55:43 +0000 |
---|---|---|
committer | Martin Sebor <msebor@gcc.gnu.org> | 2019-05-17 11:55:43 -0600 |
commit | a9c697b88395a0f2b175ac30c59bd8c0c22d0db1 (patch) | |
tree | 824792abb43c3e017801b6e124f310ffffc36c17 /gcc/testsuite | |
parent | 6df6f67a283c62f0590d88b39d309b2c37cd7de1 (diff) | |
download | gcc-a9c697b88395a0f2b175ac30c59bd8c0c22d0db1.zip gcc-a9c697b88395a0f2b175ac30c59bd8c0c22d0db1.tar.gz gcc-a9c697b88395a0f2b175ac30c59bd8c0c22d0db1.tar.bz2 |
trans.c (check_inlining_for_nested_subprog): Quote reserved names.
gcc/ada/ChangeLog:
* gcc-interface/trans.c (check_inlining_for_nested_subprog): Quote
reserved names.
gcc/brig/ChangeLog:
* brigfrontend/brig-control-handler.cc
(brig_directive_control_handler::operator): Remove trailing newline
from a diagnostic.
* brigfrontend/brig-module-handler.cc
(brig_directive_module_handler::operator): Remove a duplicated space
from a diagnostic.
gcc/c/ChangeLog:
* c-decl.c (start_decl): Quote keywords, operators, and
types in diagnostics.
(finish_decl): Same.
* c-parser.c (c_parser_asm_statement): Same.
(c_parser_conditional_expression): Same.
(c_parser_transaction_cancel): Same.
* c-typeck.c (c_common_type): Same.
(build_conditional_expr): Same.
(digest_init): Same.
(process_init_element): Same.
(build_binary_op): Same.
gcc/c-family/ChangeLog:
* c-attribs.c (handle_no_sanitize_attribute): Quote identifiers,
keywords, operators, and types in diagnostics.
(handle_scalar_storage_order_attribute): Same.
(handle_mode_attribute): Same.
(handle_visibility_attribute): Same.
(handle_assume_aligned_attribute): Same.
(handle_no_split_stack_attribute): Same.
* c-common.c (shorten_compare): Same.
(c_common_truthvalue_conversion): Same.
(cb_get_source_date_epoch): Same.
* c-lex.c (cb_def_pragma): Quote keywords, operators, and types
in diagnostics.
(interpret_float): Same.
* c-omp.c (c_finish_omp_for): Same.
* c-opts.c (c_common_post_options): Same.
* c-pch.c (c_common_pch_pragma): Same.
* c-pragma.c (pop_alignment): Same.
(handle_pragma_pack): Same.
(apply_pragma_weak): Same.
(handle_pragma_weak): Same.
(handle_pragma_scalar_storage_order): Same.
(handle_pragma_redefine_extname): Same.
(add_to_renaming_pragma_list): Same.
(maybe_apply_renaming_pragma): Same.
(push_visibility): Same.
(handle_pragma_visibility): Same.
(handle_pragma_optimize): Same.
(handle_pragma_message): Same.
* c-warn.c (warn_for_omitted_condop): Same.
(lvalue_error): Same.
gcc/cp/ChangeLog:
* call.c (print_z_candidate): Wrap diagnostic text in a gettext
macro. Adjust.
(print_z_candidates): Same.
(build_conditional_expr_1): Quote keywords, operators, and types
in diagnostics.
(build_op_delete_call): Same.
(maybe_print_user_conv_context): Wrap diagnostic text in a gettext
macro.
(convert_like_real): Same.
(convert_arg_to_ellipsis): Quote keywords, operators, and types
in diagnostics.
(build_over_call): Same.
(joust): Break up an overlong line. Wrap diagnostic text in a gettext
macro.
* constexpr.c (cxx_eval_check_shift_p): Spell out >= in English.
(cxx_eval_constant_expression): Quote keywords, operators, and types
in diagnostics.
(potential_constant_expression_1): Same.
* cp-gimplify.c (cp_genericize_r): Same.
* cvt.c (maybe_warn_nodiscard): Quote keywords, operators, and types
in diagnostics.
(type_promotes_to): Same.
* decl.c (check_previous_goto_1): Same.
(check_goto): Same.
(start_decl): Same.
(cp_finish_decl): Avoid parenthesizing a sentence for consistency.
(grok_op_properties): Quote keywords, operators, and types
in diagnostics.
* decl2.c (grokfield): Same.
(coerce_delete_type): Same.
* except.c (is_admissible_throw_operand_or_catch_parameter): Same.
* friend.c (do_friend): Quote C++ tokens.
* init.c (build_new_1): Quote keywords, operators, and types
in diagnostics.
(build_vec_delete_1): Same.
(build_delete): Same.
* lex.c (parse_strconst_pragma): Same.
(handle_pragma_implementation): Same.
(unqualified_fn_lookup_error): Same.
* mangle.c (write_type): Same.
* method.c (defaulted_late_check): Avoid two consecutive punctuators.
* name-lookup.c (cp_binding_level_debug): Remove a trailing newline.
(pop_everything): Same.
* parser.c (cp_lexer_start_debugging): Quote a macro name.
in a diagnostic
(cp_lexer_stop_debugging): Same.
(cp_parser_userdef_numeric_literal): Quote a C++ header name
in a diagnostic.
(cp_parser_nested_name_specifier_opt): Quote keywords, operators,
and types in diagnostics.
(cp_parser_question_colon_clause): Same.
(cp_parser_asm_definition): Same.
(cp_parser_init_declarator): Same.
(cp_parser_template_declaration_after_parameters): Avoid capitalizing
a sentence in a diagnostic.
(cp_parser_omp_declare_reduction): Quote keywords, operators, and types
in diagnostics.
(cp_parser_transaction): Same.
* pt.c (maybe_process_partial_specialization): Replace second call
to permerror with inform for consistency with other uses.
(expand_integer_pack): Quote keywords, operators, and types
in diagnostics.
* rtti.c (get_typeid): Quote keywords, operators, and types
in diagnostics.
(build_dynamic_cast_1): Same.
* semantics.c (finish_asm_stmt): Same.
(finish_label_decl): Same.
(finish_bases): Same.
(finish_offsetof): Same.
(cp_check_omp_declare_reduction): Same.
(finish_decltype_type): Same.
* tree.c (handle_init_priority_attribute): Same. Add detail
to diagnostics.
(maybe_warn_zero_as_null_pointer_constant): Same.
* typeck.c (cp_build_binary_op): Quote keywords, operators, and types
in diagnostics.
(cp_build_unary_op): Same.
(check_for_casting_away_constness): Same.
(build_static_cast): Same.
(build_const_cast_1): Same.
(maybe_warn_about_returning_address_of_local): Same.
(check_return_expr): Same.
* typeck2.c (abstract_virtuals_error_sfinae): Same.
(digest_init_r): Replace a tab with spaces in a diagnostic.
(build_functional_cast): Quote keywords, operators, and types
in diagnostics.
gcc/d/ChangeLog:
* d-builtins.cc (d_init_builtins): Quote keywords, operators,
and types in diagnostics.
* d-codegen.cc (get_array_length): Same. Replace can't with cannot.
* d-convert.cc (convert_expr): Same.
* d-frontend.cc (getTypeInfoType): Quote an option name in
a diagnostic.
* d-lang.cc (d_handle_option): Same.
(d_parse_file): Same.
* decl.cc: Remove a trailing period from a diagnostic.
* expr.cc: Use a directive for an apostrophe.
* toir.cc: Quote keywords, operators, and types in diagnostics.
* typeinfo.cc (build_typeinfo): Quote an option name in a diagnostic.
gcc/fortran/ChangeLog:
* gfortranspec.c (append_arg): Spell out the word "argument."
gcc/ChangeLog:
* config/i386/i386-expand.c (get_element_number): Quote keywords
and other internal names in diagnostics. Adjust other diagnostic
formatting issues noted by -Wformat-diag.
* config/i386/i386-features.c
(ix86_mangle_function_version_assembler_name): Same.
* config/i386/i386-options.c (ix86_handle_abi_attribute): Same.
* config/i386/i386.c (ix86_function_type_abi): Same.
(ix86_function_ms_hook_prologue): Same.
(classify_argument): Same.
(ix86_expand_prologue): Same.
(ix86_md_asm_adjust): Same.
(ix86_memmodel_check): Same.
gcc/ChangeLog:
* builtins.c (expand_builtin_atomic_always_lock_free): Quote
identifiers, keywords, operators, and types in diagnostics. Correct
quoting, spelling, and sentence capitalization issues.
(expand_builtin_atomic_is_lock_free): Same.
(fold_builtin_next_arg): Same.
* cfgexpand.c (expand_one_var): Same.
(tree_conflicts_with_clobbers_p): Same.
(expand_asm_stmt): Same.
(verify_loop_structure): Same.
* cgraphunit.c (process_function_and_variable_attributes): Same.
* collect-utils.c (collect_execute): Same.
* collect2.c (maybe_run_lto_and_relink): Same.
(is_lto_object_file): Same.
(scan_prog_file): Same.
* convert.c (convert_to_real_1): Same.
* dwarf2out.c (dwarf2out_begin_prologue): Same.
* except.c (verify_eh_tree): Same.
* gcc.c (execute): Same.
(eval_spec_function): Same.
(run_attempt): Same.
(driver::set_up_specs): Same.
(compare_debug_auxbase_opt_spec_function): Same.
* gcov-tool.c (unlink_gcda_file): Same.
(do_merge): Same.
(do_rewrite): Same.
* gcse.c (gcse_or_cprop_is_too_expensive): Same.
* gimplify.c (gimplify_asm_expr): Same.
(gimplify_adjust_omp_clauses): Same.
* hsa-gen.c (gen_hsa_addr_insns): Same.
(gen_hsa_insns_for_load): Same.
(gen_hsa_cmp_insn_from_gimple): Same.
(gen_hsa_insns_for_operation_assignment): Same.
(gen_get_level): Same.
(gen_hsa_alloca): Same.
(omp_simple_builtin::generate): Same.
(gen_hsa_atomic_for_builtin): Same.
(gen_hsa_insns_for_call): Same.
* input.c (dump_location_info): Same.
* ipa-devirt.c (compare_virtual_tables): Same.
* ira.c (ira_setup_eliminable_regset): Same.
* lra-assigns.c (lra_assign): Same.
* lra-constraints.c (lra_constraints): Same.
* lto-streamer-in.c (lto_input_mode_table): Same.
* lto-wrapper.c (get_options_from_collect_gcc_options): Same.
(merge_and_complain): Same.
(compile_offload_image): Same.
(compile_images_for_offload_targets): Same.
(debug_objcopy): Same.
(run_gcc): Same.
(main): Same.
* opts.c (print_specific_help): Same.
(parse_no_sanitize_attribute): Same.
(print_help): Same.
(handle_param): Same.
* plugin.c (add_new_plugin): Same.
(parse_plugin_arg_opt): Same.
(try_init_one_plugin): Same.
* print-rtl.c (debug_bb_n_slim): Quote identifiers, keywords,
operators, and types in diagnostics. Correct quoting and spelling
issues.
* read-rtl-function.c (parse_edge_flag_token): Same.
(function_reader::parse_enum_value): Same.
* reg-stack.c (check_asm_stack_operands): Same.
* regcprop.c (validate_value_data): Same.
* sched-rgn.c (make_pass_sched_fusion): Same.
* stmt.c (check_unique_operand_names): Same.
* targhooks.c (default_target_option_pragma_parse): Same.
* tlink.c (recompile_files): Same.
* toplev.c (process_options): Same.
(do_compile): Same.
* trans-mem.c (diagnose_tm_1): Same.
(ipa_tm_scan_irr_block): Same.
(ipa_tm_diagnose_transaction): Same.
* tree-cfg.c (verify_address): Same. Use get_tree_code_name to
format a tree code name in a diagnostic.
(verify_types_in_gimple_min_lval): Same.
(verify_types_in_gimple_reference): Same.
(verify_gimple_call): Same.
(verify_gimple_assign_unary): Same.
(verify_gimple_assign_binary): Same.
(verify_gimple_assign_ternary): Same.
(verify_gimple_assign_single): Same.
(verify_gimple_switch): Same.
(verify_gimple_label): Same.
(verify_gimple_phi): Same.
(verify_gimple_in_seq): Same.
(verify_eh_throw_stmt_node): Same.
(collect_subblocks): Same.
(gimple_verify_flow_info): Same.
(do_warn_unused_result): Same.
* tree-inline.c (expand_call_inline): Same.
* tree-into-ssa.c (update_ssa): Same.
* tree.c (tree_int_cst_elt_check_failed): Same.
(tree_vec_elt_check_failed): Same.
(omp_clause_operand_check_failed): Same.
(verify_type_variant): Same.
(verify_type): Same.
* value-prof.c (verify_histograms): Same.
* varasm.c (assemble_start_function): Same.
gcc/lto/ChangeLog:
* lto-dump.c (lto_main): Same.
* lto.c (stream_out): Same.
gcc/objc/ChangeLog:
* objc-act.c (objc_begin_catch_clause): Quote keywords and options
in diagnostics.
(objc_build_throw_stmt): Same.
(objc_finish_message_expr): Same.
(get_super_receiver): Same.
* objc-next-runtime-abi-01.c (objc_next_runtime_abi_01_init): Spell
out "less than" in English./
* objc-next-runtime-abi-02.c (objc_next_runtime_abi_02_init): Spell
out "greater" in English.
gcc/testsuite/ChangeLog:
* c-c++-common/Wbool-operation-1.c: Adjust text of expected diagnostics.
* c-c++-common/Wvarargs-2.c: Same.
* c-c++-common/Wvarargs.c: Same.
* c-c++-common/pr51768.c: Same.
* c-c++-common/tm/inline-asm.c: Same.
* c-c++-common/tm/safe-1.c: Same.
* g++.dg/asm-qual-1.C: Same.
* g++.dg/asm-qual-3.C: Same.
* g++.dg/conversion/dynamic1.C: Same.
* g++.dg/cpp0x/constexpr-89599.C: Same.
* g++.dg/cpp0x/constexpr-cast.C: Same.
* g++.dg/cpp0x/constexpr-shift1.C: Same.
* g++.dg/cpp0x/lambda/lambda-conv11.C: Same.
* g++.dg/cpp0x/nullptr04.C: Same.
* g++.dg/cpp0x/static_assert12.C: Same.
* g++.dg/cpp0x/static_assert8.C: Same.
* g++.dg/cpp1y/lambda-conv1.C: Same.
* g++.dg/cpp1y/pr79393-3.C: Same.
* g++.dg/cpp1y/static_assert1.C: Same.
* g++.dg/cpp1z/constexpr-if4.C: Same.
* g++.dg/cpp1z/constexpr-if5.C: Same.
* g++.dg/cpp1z/constexpr-if9.C: Same.
* g++.dg/eh/goto2.C: Same.
* g++.dg/eh/goto3.C: Same.
* g++.dg/expr/static_cast8.C: Same.
* g++.dg/ext/flexary5.C: Same.
* g++.dg/ext/utf-array-short-wchar.C: Same.
* g++.dg/ext/utf-array.C: Same.
* g++.dg/ext/utf8-2.C: Same.
* g++.dg/gomp/loop-4.C: Same.
* g++.dg/gomp/macro-4.C: Same.
* g++.dg/gomp/udr-1.C: Same.
* g++.dg/init/initializer-string-too-long.C: Same.
* g++.dg/other/offsetof9.C: Same.
* g++.dg/ubsan/pr63956.C: Same.
* g++.dg/warn/Wbool-operation-1.C: Same.
* g++.dg/warn/Wtype-limits-Wextra.C: Same.
* g++.dg/warn/Wtype-limits.C: Same.
* g++.dg/wrappers/pr88680.C: Same.
* g++.old-deja/g++.mike/eh55.C: Same.
* gcc.dg/Wsign-compare-1.c: Same.
* gcc.dg/Wtype-limits-Wextra.c: Same.
* gcc.dg/Wtype-limits.c: Same.
* gcc.dg/Wunknownprag.c: Same.
* gcc.dg/Wunsuffixed-float-constants-1.c: Same.
* gcc.dg/asm-6.c: Same.
* gcc.dg/asm-qual-1.c: Same.
* gcc.dg/cast-1.c: Same.
* gcc.dg/cast-2.c: Same.
* gcc.dg/cast-3.c: Same.
* gcc.dg/cpp/source_date_epoch-2.c: Same.
* gcc.dg/debug/pr85252.c: Same.
* gcc.dg/dfp/cast-bad.c: Same.
* gcc.dg/format/gcc_diag-1.c: Same.
* gcc.dg/format/gcc_diag-11.c: Same.New test.
* gcc.dg/gcc_diag-11.c: Same.New test.
* gcc.dg/gnu-cond-expr-2.c: Same.
* gcc.dg/gnu-cond-expr-3.c: Same.
* gcc.dg/gomp/macro-4.c: Same.
* gcc.dg/init-bad-1.c: Same.
* gcc.dg/init-bad-2.c: Same.
* gcc.dg/init-bad-3.c: Same.
* gcc.dg/pr27528.c: Same.
* gcc.dg/pr48552-1.c: Same.
* gcc.dg/pr48552-2.c: Same.
* gcc.dg/pr59846.c: Same.
* gcc.dg/pr61096-1.c: Same.
* gcc.dg/pr8788-1.c: Same.
* gcc.dg/pr90082.c: Same.
* gcc.dg/simd-2.c: Same.
* gcc.dg/spellcheck-params-2.c: Same.
* gcc.dg/spellcheck-params.c: Same.
* gcc.dg/strlenopt-49.c: Same.
* gcc.dg/tm/pr52141.c: Same.
* gcc.dg/torture/pr51106-1.c: Same.
* gcc.dg/torture/pr51106-2.c: Same.
* gcc.dg/utf-array-short-wchar.c: Same.
* gcc.dg/utf-array.c: Same.
* gcc.dg/utf8-2.c: Same.
* gcc.dg/warn-sprintf-no-nul.c: Same.
* gcc.target/i386/asm-flag-0.c: Same.
* gcc.target/i386/inline_error.c: Same.
* gcc.target/i386/pr30848.c: Same.
* gcc.target/i386/pr39082-1.c: Same.
* gcc.target/i386/pr39678.c: Same.
* gcc.target/i386/pr57756.c: Same.
* gcc.target/i386/pr68843-1.c: Same.
* gcc.target/i386/pr79804.c: Same.
* gcc.target/i386/pr82673.c: Same.
* obj-c++.dg/class-protocol-1.mm: Same.
* obj-c++.dg/exceptions-3.mm: Same.
* obj-c++.dg/exceptions-4.mm: Same.
* obj-c++.dg/exceptions-5.mm: Same.
* obj-c++.dg/exceptions-6.mm: Same.
* obj-c++.dg/method-12.mm: Same.
* obj-c++.dg/method-13.mm: Same.
* obj-c++.dg/method-6.mm: Same.
* obj-c++.dg/method-7.mm: Same.
* obj-c++.dg/method-9.mm: Same.
* obj-c++.dg/method-lookup-1.mm: Same.
* obj-c++.dg/proto-lossage-4.mm: Same.
* obj-c++.dg/protocol-qualifier-2.mm: Same.
* objc.dg/call-super-2.m: Same.
* objc.dg/class-protocol-1.m: Same.
* objc.dg/desig-init-1.m: Same.
* objc.dg/exceptions-3.m: Same.
* objc.dg/exceptions-4.m: Same.
* objc.dg/exceptions-5.m: Same.
* objc.dg/exceptions-6.m: Same.
* objc.dg/method-19.m: Same.
* objc.dg/method-2.m: Same.
* objc.dg/method-5.m: Same.
* objc.dg/method-6.m: Same.
* objc.dg/method-7.m: Same.
* objc.dg/method-lookup-1.m: Same.
* objc.dg/proto-hier-1.m: Same.
* objc.dg/proto-lossage-4.m: Same.
From-SVN: r271338
Diffstat (limited to 'gcc/testsuite')
130 files changed, 742 insertions, 441 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a15def5..e1aa257 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,123 @@ +2019-05-16 Martin Sebor <msebor@redhat.com> + + * c-c++-common/Wbool-operation-1.c: Adjust text of expected diagnostics. + * c-c++-common/Wvarargs-2.c: Same. + * c-c++-common/Wvarargs.c: Same. + * c-c++-common/pr51768.c: Same. + * c-c++-common/tm/inline-asm.c: Same. + * c-c++-common/tm/safe-1.c: Same. + * g++.dg/asm-qual-1.C: Same. + * g++.dg/asm-qual-3.C: Same. + * g++.dg/conversion/dynamic1.C: Same. + * g++.dg/cpp0x/constexpr-89599.C: Same. + * g++.dg/cpp0x/constexpr-cast.C: Same. + * g++.dg/cpp0x/constexpr-shift1.C: Same. + * g++.dg/cpp0x/lambda/lambda-conv11.C: Same. + * g++.dg/cpp0x/nullptr04.C: Same. + * g++.dg/cpp0x/static_assert12.C: Same. + * g++.dg/cpp0x/static_assert8.C: Same. + * g++.dg/cpp1y/lambda-conv1.C: Same. + * g++.dg/cpp1y/pr79393-3.C: Same. + * g++.dg/cpp1y/static_assert1.C: Same. + * g++.dg/cpp1z/constexpr-if4.C: Same. + * g++.dg/cpp1z/constexpr-if5.C: Same. + * g++.dg/cpp1z/constexpr-if9.C: Same. + * g++.dg/eh/goto2.C: Same. + * g++.dg/eh/goto3.C: Same. + * g++.dg/expr/static_cast8.C: Same. + * g++.dg/ext/flexary5.C: Same. + * g++.dg/ext/utf-array-short-wchar.C: Same. + * g++.dg/ext/utf-array.C: Same. + * g++.dg/ext/utf8-2.C: Same. + * g++.dg/gomp/loop-4.C: Same. + * g++.dg/gomp/macro-4.C: Same. + * g++.dg/gomp/udr-1.C: Same. + * g++.dg/init/initializer-string-too-long.C: Same. + * g++.dg/other/offsetof9.C: Same. + * g++.dg/ubsan/pr63956.C: Same. + * g++.dg/warn/Wbool-operation-1.C: Same. + * g++.dg/warn/Wtype-limits-Wextra.C: Same. + * g++.dg/warn/Wtype-limits.C: Same. + * g++.dg/wrappers/pr88680.C: Same. + * g++.old-deja/g++.mike/eh55.C: Same. + * gcc.dg/Wsign-compare-1.c: Same. + * gcc.dg/Wtype-limits-Wextra.c: Same. + * gcc.dg/Wtype-limits.c: Same. + * gcc.dg/Wunknownprag.c: Same. + * gcc.dg/Wunsuffixed-float-constants-1.c: Same. + * gcc.dg/asm-6.c: Same. + * gcc.dg/asm-qual-1.c: Same. + * gcc.dg/cast-1.c: Same. + * gcc.dg/cast-2.c: Same. + * gcc.dg/cast-3.c: Same. + * gcc.dg/cpp/source_date_epoch-2.c: Same. + * gcc.dg/debug/pr85252.c: Same. + * gcc.dg/dfp/cast-bad.c: Same. + * gcc.dg/format/gcc_diag-1.c: Same. + * gcc.dg/format/gcc_diag-11.c: Same.New test. + * gcc.dg/gcc_diag-11.c: Same.New test. + * gcc.dg/gnu-cond-expr-2.c: Same. + * gcc.dg/gnu-cond-expr-3.c: Same. + * gcc.dg/gomp/macro-4.c: Same. + * gcc.dg/init-bad-1.c: Same. + * gcc.dg/init-bad-2.c: Same. + * gcc.dg/init-bad-3.c: Same. + * gcc.dg/pr27528.c: Same. + * gcc.dg/pr48552-1.c: Same. + * gcc.dg/pr48552-2.c: Same. + * gcc.dg/pr59846.c: Same. + * gcc.dg/pr61096-1.c: Same. + * gcc.dg/pr8788-1.c: Same. + * gcc.dg/pr90082.c: Same. + * gcc.dg/simd-2.c: Same. + * gcc.dg/spellcheck-params-2.c: Same. + * gcc.dg/spellcheck-params.c: Same. + * gcc.dg/strlenopt-49.c: Same. + * gcc.dg/tm/pr52141.c: Same. + * gcc.dg/torture/pr51106-1.c: Same. + * gcc.dg/torture/pr51106-2.c: Same. + * gcc.dg/utf-array-short-wchar.c: Same. + * gcc.dg/utf-array.c: Same. + * gcc.dg/utf8-2.c: Same. + * gcc.dg/warn-sprintf-no-nul.c: Same. + * gcc.target/i386/asm-flag-0.c: Same. + * gcc.target/i386/inline_error.c: Same. + * gcc.target/i386/pr30848.c: Same. + * gcc.target/i386/pr39082-1.c: Same. + * gcc.target/i386/pr39678.c: Same. + * gcc.target/i386/pr57756.c: Same. + * gcc.target/i386/pr68843-1.c: Same. + * gcc.target/i386/pr79804.c: Same. + * gcc.target/i386/pr82673.c: Same. + * obj-c++.dg/class-protocol-1.mm: Same. + * obj-c++.dg/exceptions-3.mm: Same. + * obj-c++.dg/exceptions-4.mm: Same. + * obj-c++.dg/exceptions-5.mm: Same. + * obj-c++.dg/exceptions-6.mm: Same. + * obj-c++.dg/method-12.mm: Same. + * obj-c++.dg/method-13.mm: Same. + * obj-c++.dg/method-6.mm: Same. + * obj-c++.dg/method-7.mm: Same. + * obj-c++.dg/method-9.mm: Same. + * obj-c++.dg/method-lookup-1.mm: Same. + * obj-c++.dg/proto-lossage-4.mm: Same. + * obj-c++.dg/protocol-qualifier-2.mm: Same. + * objc.dg/call-super-2.m: Same. + * objc.dg/class-protocol-1.m: Same. + * objc.dg/desig-init-1.m: Same. + * objc.dg/exceptions-3.m: Same. + * objc.dg/exceptions-4.m: Same. + * objc.dg/exceptions-5.m: Same. + * objc.dg/exceptions-6.m: Same. + * objc.dg/method-19.m: Same. + * objc.dg/method-2.m: Same. + * objc.dg/method-5.m: Same. + * objc.dg/method-6.m: Same. + * objc.dg/method-7.m: Same. + * objc.dg/method-lookup-1.m: Same. + * objc.dg/proto-hier-1.m: Same. + * objc.dg/proto-lossage-4.m: Same. + 2019-05-17 Dragan Mladjenovic <dmladjenovic@wavecomp.com> * g++.dg/eh/o32-fp.C: New. diff --git a/gcc/testsuite/c-c++-common/Wbool-operation-1.c b/gcc/testsuite/c-c++-common/Wbool-operation-1.c index 552b044..0489187 100644 --- a/gcc/testsuite/c-c++-common/Wbool-operation-1.c +++ b/gcc/testsuite/c-c++-common/Wbool-operation-1.c @@ -15,18 +15,18 @@ fn (bool b, bool b2, T b3, int n, v4si v) { int r = 0; - r += ~b; /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += n + ~b; /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(n == 1); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(n || 1); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~b == 1; /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(++n, n == 1); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(++n, n > 1); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(++n, n && 1); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += (++n, ~b); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~b3; /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~foo (); /* { dg-warning "on an expression of type bool|on a boolean expression" } */ - r += ~(bool) !1; /* { dg-warning "on an expression of type bool|on a boolean expression" } */ + r += ~b; /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += n + ~b; /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(n == 1); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(n || 1); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~b == 1; /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(++n, n == 1); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(++n, n > 1); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(++n, n && 1); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += (++n, ~b); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~b3; /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~foo (); /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ + r += ~(bool) !1; /* { dg-warning "on an expression of type 'bool'|on a boolean expression" } */ v = ~v; r += ~(int) b; diff --git a/gcc/testsuite/c-c++-common/Wvarargs-2.c b/gcc/testsuite/c-c++-common/Wvarargs-2.c index a6b51f1..08d3b94 100644 --- a/gcc/testsuite/c-c++-common/Wvarargs-2.c +++ b/gcc/testsuite/c-c++-common/Wvarargs-2.c @@ -9,7 +9,7 @@ void err (int a) { va_list vp; - va_start (vp, a); // { dg-error "used in function with fixed args" } + va_start (vp, a); // { dg-error "used in function with fixed arguments" } } void diff --git a/gcc/testsuite/c-c++-common/Wvarargs.c b/gcc/testsuite/c-c++-common/Wvarargs.c index 71d8c5d..bfd8276 100644 --- a/gcc/testsuite/c-c++-common/Wvarargs.c +++ b/gcc/testsuite/c-c++-common/Wvarargs.c @@ -6,7 +6,7 @@ void err (int a) { va_list vp; - va_start (vp, a); // { dg-error "used in function with fixed args" } + va_start (vp, a); // { dg-error "used in function with fixed arguments" } } #pragma GCC diagnostic push diff --git a/gcc/testsuite/c-c++-common/convert-vec-1.c b/gcc/testsuite/c-c++-common/convert-vec-1.c index 862190d..f891a93 100644 --- a/gcc/testsuite/c-c++-common/convert-vec-1.c +++ b/gcc/testsuite/c-c++-common/convert-vec-1.c @@ -1,4 +1,4 @@ /* { dg-do compile } */ /* { dg-prune-output "changes the ABI" } */ typedef float v2sf __attribute__ ((vector_size (8))); -v2sf sub (void) { return (v2sf) 0.0; } /* { dg-error "can't convert" } */ +v2sf sub (void) { return (v2sf) 0.0; } /* { dg-error "cannot convert" } */ diff --git a/gcc/testsuite/c-c++-common/pr51768.c b/gcc/testsuite/c-c++-common/pr51768.c index 082594c..c300392 100644 --- a/gcc/testsuite/c-c++-common/pr51768.c +++ b/gcc/testsuite/c-c++-common/pr51768.c @@ -5,7 +5,7 @@ void foo (void) { - asm goto ("" : : : : lab, lab, lab2, lab); /* { dg-error "duplicate asm operand name" } */ + asm goto ("" : : : : lab, lab, lab2, lab); /* { dg-error "duplicate 'asm' operand name" } */ lab:; lab2:; } @@ -13,7 +13,7 @@ lab2:; void bar (void) { - asm goto ("" : : [lab] "i" (0) : : lab); /* { dg-error "duplicate asm operand name" } */ + asm goto ("" : : [lab] "i" (0) : : lab); /* { dg-error "duplicate 'asm' operand name" } */ lab:; } @@ -21,5 +21,5 @@ void baz (void) { int x; - asm ("" : [lab] "=r" (x) : [lab] "r" (x)); /* { dg-error "duplicate asm operand name" } */ + asm ("" : [lab] "=r" (x) : [lab] "r" (x)); /* { dg-error "duplicate 'asm' operand name" } */ } diff --git a/gcc/testsuite/c-c++-common/scal-to-vec1.c b/gcc/testsuite/c-c++-common/scal-to-vec1.c index 52cc2e3..4ffdc59 100644 --- a/gcc/testsuite/c-c++-common/scal-to-vec1.c +++ b/gcc/testsuite/c-c++-common/scal-to-vec1.c @@ -35,9 +35,9 @@ int main (int argc, char *argv[]) { f1 = ((int)998769576) + f0; /* { dg-error "conversion of scalar \[^\\n\]* to vector" "scalar to vector" { target { ! int16 } } } */ /* convert.c should take care of this. */ - i1 = sfl + i0; /* { dg-error "can't convert value to a vector|invalid operands" } */ - i1 = 1.5 + i0; /* { dg-error "can't convert value to a vector|invalid operands" } */ - v1 = d + v0; /* { dg-error "can't convert value to a vector|invalid operands" } */ + i1 = sfl + i0; /* { dg-error "cannot convert value to a vector|invalid operands" } */ + i1 = 1.5 + i0; /* { dg-error "cannot convert value to a vector|invalid operands" } */ + v1 = d + v0; /* { dg-error "cannot convert value to a vector|invalid operands" } */ return 0; } diff --git a/gcc/testsuite/c-c++-common/tm/inline-asm.c b/gcc/testsuite/c-c++-common/tm/inline-asm.c index eefd347..7389260 100644 --- a/gcc/testsuite/c-c++-common/tm/inline-asm.c +++ b/gcc/testsuite/c-c++-common/tm/inline-asm.c @@ -4,7 +4,7 @@ static inline void inline_death () { - __asm__ (""); /* { dg-error "asm not allowed" } */ + __asm__ (""); /* { dg-error "'asm' not allowed" } */ } void diff --git a/gcc/testsuite/c-c++-common/tm/safe-1.c b/gcc/testsuite/c-c++-common/tm/safe-1.c index 4a81a78..504113e 100644 --- a/gcc/testsuite/c-c++-common/tm/safe-1.c +++ b/gcc/testsuite/c-c++-common/tm/safe-1.c @@ -39,8 +39,8 @@ foo(void) (*pi)(); /* { dg-error "unsafe indirect function call" } */ (*pu)(); /* { dg-error "unsafe indirect function call" } */ - asm(""); /* { dg-error "asm not allowed" } */ - asm("" : "=g"(i)); /* { dg-error "asm not allowed" } */ + asm(""); /* { dg-error "'asm' not allowed" } */ + asm("" : "=g"(i)); /* { dg-error "'asm' not allowed" } */ return fc(i); } @@ -62,8 +62,8 @@ bar(void) (*pm)(); (*pu)(); /* { dg-error "unsafe indirect function call" } */ - asm(""); /* { dg-error "asm not allowed" } */ - asm("" : "=g"(i)); /* { dg-error "asm not allowed" } */ + asm(""); /* { dg-error "'asm' not allowed" } */ + asm("" : "=g"(i)); /* { dg-error "'asm' not allowed" } */ return fc(i); } diff --git a/gcc/testsuite/g++.dg/asm-qual-1.C b/gcc/testsuite/g++.dg/asm-qual-1.C index 3fba592..1bb217f 100644 --- a/gcc/testsuite/g++.dg/asm-qual-1.C +++ b/gcc/testsuite/g++.dg/asm-qual-1.C @@ -7,7 +7,7 @@ f () { asm volatile (""); - asm const (""); // { dg-error {'const' is not an asm qualifier} } + asm const (""); // { dg-error {'const' is not an 'asm' qualifier} } - asm __restrict (""); // { dg-error {'__restrict' is not an asm qualifier} } + asm __restrict (""); // { dg-error {'__restrict' is not an 'asm' qualifier} } } diff --git a/gcc/testsuite/g++.dg/asm-qual-3.C b/gcc/testsuite/g++.dg/asm-qual-3.C index 0bf6069..80573cb 100644 --- a/gcc/testsuite/g++.dg/asm-qual-3.C +++ b/gcc/testsuite/g++.dg/asm-qual-3.C @@ -2,11 +2,11 @@ // { dg-do compile } // { dg-options "-std=gnu++98" } -asm const (""); // { dg-error {'const' is not an asm qualifier} } -asm volatile (""); // { dg-warning {asm qualifier 'volatile' ignored outside of function body} } +asm const (""); // { dg-error {'const' is not an 'asm' qualifier} } +asm volatile (""); // { dg-warning {'asm' qualifier 'volatile' ignored outside of function body} } asm restrict (""); // { dg-error {expected '\(' before 'restrict'} } -asm inline (""); // { dg-error {asm qualifier outside of function body} } -asm goto (""); // { dg-error {asm qualifier outside of function body} } +asm inline (""); // { dg-error {'asm' qualifier outside of function body} } +asm goto (""); // { dg-error {'asm' qualifier outside of function body} } // There are many other things wrong with this code, so: // { dg-excess-errors "" } diff --git a/gcc/testsuite/g++.dg/conversion/dynamic1.C b/gcc/testsuite/g++.dg/conversion/dynamic1.C index a781cba..3c8739c 100644 --- a/gcc/testsuite/g++.dg/conversion/dynamic1.C +++ b/gcc/testsuite/g++.dg/conversion/dynamic1.C @@ -11,5 +11,5 @@ A& bar(); void baz() { - dynamic_cast<A&>( bar().foo ); // { dg-error "cannot dynamic_cast" } + dynamic_cast<A&>( bar().foo ); // { dg-error "cannot 'dynamic_cast'" } } diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-89599.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-89599.C index 07760a3..010416a 100644 --- a/gcc/testsuite/g++.dg/cpp0x/constexpr-89599.C +++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-89599.C @@ -2,5 +2,5 @@ // { dg-do compile { target c++11 } } void foo (int x) {} -constexpr void *arr[2] = { (void*) &foo, (void *) foo };// { dg-error "a reinterpret_cast is not a constant expression" } -constexpr void *ptr = (void *) &foo; // { dg-error "a reinterpret_cast is not a constant expression" } +constexpr void *arr[2] = { (void*) &foo, (void *) foo };// { dg-error "'reinterpret_cast' is not a constant expression" } +constexpr void *ptr = (void *) &foo; // { dg-error "'reinterpret_cast' is not a constant expression" } diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-cast.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-cast.C index e0c7ed3..da76a3d 100644 --- a/gcc/testsuite/g++.dg/cpp0x/constexpr-cast.C +++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-cast.C @@ -7,8 +7,8 @@ int i; // The following was accepted due to bug 49171. constexpr void *q = reinterpret_cast<void*>(&i); // { dg-error "not a constant expression" } -constexpr void *r0 = reinterpret_cast<void*>(1); // { dg-error "not a constant expression|reinterpret_cast from integer to pointer" } -constexpr void *r1 = reinterpret_cast<void*>(sizeof 'x'); // { dg-error ".reinterpret_cast<void\\*>\\(1\[ul\]\*\\). is not a constant expression" } +constexpr void *r0 = reinterpret_cast<void*>(1); // { dg-error "not a constant expression|'reinterpret_cast' from integer to pointer" } +constexpr void *r1 = reinterpret_cast<void*>(sizeof 'x'); // { dg-error "'reinterpret_cast<void\\*>\\(1\[ul\]\*\\)' is not a constant expression" } template <class T> constexpr bool f () diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-shift1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-shift1.C index c1cfb1e..1970122 100644 --- a/gcc/testsuite/g++.dg/cpp0x/constexpr-shift1.C +++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-shift1.C @@ -11,7 +11,7 @@ constexpr int i1 = fn1 (1, -1); // { dg-message "in .constexpr. expansion of " } constexpr int fn2 (int i, int j) { - return i << j; // { dg-error "is >= than the precision of the left operand" } + return i << j; // { dg-error "is greater than or equal to the precision .. of the left operand" } } constexpr int i2 = fn2 (1, 200); // { dg-message "in .constexpr. expansion of " } @@ -43,7 +43,7 @@ constexpr int i5 = fn5 (__INT_MAX__, 1); constexpr int fn6 (unsigned int i, unsigned int j) { - return i << j; // { dg-error "is >= than the precision of the left operand" } + return i << j; // { dg-error "is greater than or equal to the precision .. of the left operand" } } constexpr int i6 = fn6 (1, -1); // { dg-message "in .constexpr. expansion of " } @@ -67,7 +67,7 @@ constexpr int i8 = fn8 (-1, 1); constexpr int fn9 (int i, int j) { - return i >> j; // { dg-error "is >= than the precision of the left operand" } + return i >> j; // { dg-error "is greater than or equal to the precision .. of the left operand" } } constexpr int i9 = fn9 (1, 200); // { dg-message "in .constexpr. expansion of " } diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted18.C b/gcc/testsuite/g++.dg/cpp0x/defaulted18.C index 83e1126..ef29f30 100644 --- a/gcc/testsuite/g++.dg/cpp0x/defaulted18.C +++ b/gcc/testsuite/g++.dg/cpp0x/defaulted18.C @@ -1,6 +1,6 @@ // { dg-do compile { target c++11 } } -void f(char i, int j) = delete; // { dg-message "<deleted>" } +void f(char i, int j) = delete; // { dg-message "(deleted)" } void f(int i, ...); // { dg-message "void f" } int main() diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv11.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv11.C index 4b8d648..ec08f50 100644 --- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv11.C +++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv11.C @@ -4,7 +4,7 @@ void foo() { int i; - static_cast<void(*)()>([i]{}); // { dg-error "invalid static_cast" } - static_cast<void(*)()>([=]{}); // { dg-error "invalid static_cast" } - static_cast<void(*)()>([&]{}); // { dg-error "invalid static_cast" } + static_cast<void(*)()>([i]{}); // { dg-error "invalid 'static_cast'" } + static_cast<void(*)()>([=]{}); // { dg-error "invalid 'static_cast'" } + static_cast<void(*)()>([&]{}); // { dg-error "invalid 'static_cast'" } } diff --git a/gcc/testsuite/g++.dg/cpp0x/nullptr04.C b/gcc/testsuite/g++.dg/cpp0x/nullptr04.C index 372ac51..2b90178 100644 --- a/gcc/testsuite/g++.dg/cpp0x/nullptr04.C +++ b/gcc/testsuite/g++.dg/cpp0x/nullptr04.C @@ -4,13 +4,13 @@ __extension__ typedef __INTPTR_TYPE__ intptr_t; -const int n4 = static_cast<const int>(nullptr); // { dg-error "invalid static_cast " } +const int n4 = static_cast<const int>(nullptr); // { dg-error "invalid 'static_cast' " } const short int n5 = reinterpret_cast<short int>(nullptr); // { dg-error "loses precision" } const intptr_t n6 = reinterpret_cast<intptr_t>(nullptr); const intptr_t n7 = (intptr_t)nullptr; decltype(nullptr) mynull = 0; -const int n8 = static_cast<const int>(mynull); // { dg-error "invalid static_cast " } +const int n8 = static_cast<const int>(mynull); // { dg-error "invalid 'static_cast' " } const short int n9 = reinterpret_cast<short int>(mynull); // { dg-error "loses precision" } const intptr_t n10 = reinterpret_cast<intptr_t>(mynull); const intptr_t n11 = (intptr_t)mynull; diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert12.C b/gcc/testsuite/g++.dg/cpp0x/static_assert12.C index 5d59e54..2ff5e00 100644 --- a/gcc/testsuite/g++.dg/cpp0x/static_assert12.C +++ b/gcc/testsuite/g++.dg/cpp0x/static_assert12.C @@ -27,4 +27,4 @@ main() float_thing(1); } -// { dg-warning "static_assert without a message only available with " "" { target *-*-* } 21 } +// { dg-warning "'static_assert' without a message only available with " "" { target *-*-* } 21 } diff --git a/gcc/testsuite/g++.dg/cpp0x/static_assert8.C b/gcc/testsuite/g++.dg/cpp0x/static_assert8.C index 239fe17..bca38ff 100644 --- a/gcc/testsuite/g++.dg/cpp0x/static_assert8.C +++ b/gcc/testsuite/g++.dg/cpp0x/static_assert8.C @@ -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++17 } } 3 } +// { dg-error "'static_assert' without a message only available with " "" { target { ! c++17 } } 3 } diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-conv1.C b/gcc/testsuite/g++.dg/cpp1y/lambda-conv1.C index 2e4ec49..2572125 100644 --- a/gcc/testsuite/g++.dg/cpp1y/lambda-conv1.C +++ b/gcc/testsuite/g++.dg/cpp1y/lambda-conv1.C @@ -4,10 +4,10 @@ void foo() { int i; - static_cast<void(*)(int)>([i](auto){}); // { dg-error "invalid static_cast" } - static_cast<void(*)(int)>([=](auto){}); // { dg-error "invalid static_cast" } - static_cast<void(*)(int)>([&](auto){}); // { dg-error "invalid static_cast" } - static_cast<float(*)(float)>([i](auto x){ return x; }); // { dg-error "invalid static_cast" } - static_cast<float(*)(float)>([=](auto x){ return x; }); // { dg-error "invalid static_cast" } - static_cast<float(*)(float)>([&](auto x){ return x; }); // { dg-error "invalid static_cast" } + static_cast<void(*)(int)>([i](auto){}); // { dg-error "invalid 'static_cast'" } + static_cast<void(*)(int)>([=](auto){}); // { dg-error "invalid 'static_cast'" } + static_cast<void(*)(int)>([&](auto){}); // { dg-error "invalid 'static_cast'" } + static_cast<float(*)(float)>([i](auto x){ return x; }); // { dg-error "invalid 'static_cast'" } + static_cast<float(*)(float)>([=](auto x){ return x; }); // { dg-error "invalid 'static_cast'" } + static_cast<float(*)(float)>([&](auto x){ return x; }); // { dg-error "invalid 'static_cast'" } } diff --git a/gcc/testsuite/g++.dg/cpp1y/pr79393-3.C b/gcc/testsuite/g++.dg/cpp1y/pr79393-3.C index 23dc265..3c73cbb 100644 --- a/gcc/testsuite/g++.dg/cpp1y/pr79393-3.C +++ b/gcc/testsuite/g++.dg/cpp1y/pr79393-3.C @@ -18,7 +18,7 @@ struct B : virtual A }; B::~B () { - throw 1; // { dg-warning "will always call terminate" } + throw 1; // { dg-warning "will always call 'terminate'" } } struct C : virtual A diff --git a/gcc/testsuite/g++.dg/cpp1y/static_assert1.C b/gcc/testsuite/g++.dg/cpp1y/static_assert1.C index ef655f4..06815fd 100644 --- a/gcc/testsuite/g++.dg/cpp1y/static_assert1.C +++ b/gcc/testsuite/g++.dg/cpp1y/static_assert1.C @@ -28,4 +28,4 @@ main() float_thing(1); } -// { dg-warning "static_assert without a message only available with " "" { target *-*-* } 21 } +// { dg-warning "'static_assert' without a message only available with " "" { target *-*-* } 21 } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if4.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if4.C index 612eff8..871e31a 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if4.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if4.C @@ -4,7 +4,7 @@ void f() { goto l; // { dg-message "from here" } - if constexpr (false) // { dg-message "enters constexpr if" } + if constexpr (false) // { dg-message "enters 'constexpr if'" } { l:; // { dg-error "jump to label" } } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if5.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if5.C index 69d03e3..9d30b0e 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if5.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if5.C @@ -3,7 +3,7 @@ void f() { - if constexpr (false) // { dg-message "enters constexpr if" } + if constexpr (false) // { dg-message "enters 'constexpr if'" } { goto l; // { dg-message "from here" } } diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if9.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if9.C index 748278a..8aa87f7 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-if9.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if9.C @@ -4,7 +4,7 @@ void f(int i) { switch (i) - if constexpr (false) // { dg-message "enters constexpr if" } + if constexpr (false) // { dg-message "enters 'constexpr if'" } { case 42:; // { dg-error "jump to case label" } } diff --git a/gcc/testsuite/g++.dg/eh/goto2.C b/gcc/testsuite/g++.dg/eh/goto2.C index 1cd254c..7f22f50 100644 --- a/gcc/testsuite/g++.dg/eh/goto2.C +++ b/gcc/testsuite/g++.dg/eh/goto2.C @@ -8,6 +8,6 @@ try } catch (...) { l2: ; // { dg-error "jump to label 'l2'" } - // { dg-message "enters catch block" "" { target *-*-*} .-1 } - goto l1; // { dg-message "from here|enters try block" } + // { dg-message "enters 'catch' block" "" { target *-*-*} .-1 } + goto l1; // { dg-message "from here|enters 'try' block" } } diff --git a/gcc/testsuite/g++.dg/eh/goto3.C b/gcc/testsuite/g++.dg/eh/goto3.C index 250324e..415782c 100644 --- a/gcc/testsuite/g++.dg/eh/goto3.C +++ b/gcc/testsuite/g++.dg/eh/goto3.C @@ -9,6 +9,6 @@ try } catch (...) { l2: ; // { dg-error "jump to label 'l2'" } - // { dg-message "enters catch block" "" { target *-*-*} .-1 } - goto l1; // { dg-message "from here|enters try block" } + // { dg-message "enters 'catch' block" "" { target *-*-*} .-1 } + goto l1; // { dg-message "from here|enters 'try' block" } } diff --git a/gcc/testsuite/g++.dg/expr/static_cast8.C b/gcc/testsuite/g++.dg/expr/static_cast8.C index dc4d216..6dd7560 100644 --- a/gcc/testsuite/g++.dg/expr/static_cast8.C +++ b/gcc/testsuite/g++.dg/expr/static_cast8.C @@ -9,9 +9,9 @@ extern C* c; void pointers(C* c, A2* a2, B1* b1) { - (void) static_cast<A1*>(c); // { dg-error "invalid static_cast" } - (void) static_cast<C*>(a2); // { dg-error "invalid static_cast" } - (void) static_cast<B2*>(b1); // { dg-error "invalid static_cast" } + (void) static_cast<A1*>(c); // { dg-error "invalid 'static_cast'" } + (void) static_cast<C*>(a2); // { dg-error "invalid 'static_cast'" } + (void) static_cast<B2*>(b1); // { dg-error "invalid 'static_cast'" } } struct D1; // { dg-message "note: class type 'D1' is incomplete" } @@ -21,7 +21,7 @@ struct E2; // { dg-message "note: class type 'E2' is incomplete" } void references(C& c, D2& d2, E1& e1) { - (void) static_cast<D1&>(c); // { dg-error "invalid static_cast" } - (void) static_cast<C&>(d2); // { dg-error "invalid static_cast" } - (void) static_cast<E2&>(e1); // { dg-error "invalid static_cast" } + (void) static_cast<D1&>(c); // { dg-error "invalid 'static_cast'" } + (void) static_cast<C&>(d2); // { dg-error "invalid 'static_cast'" } + (void) static_cast<E2&>(e1); // { dg-error "invalid 'static_cast'" } } diff --git a/gcc/testsuite/g++.dg/ext/flexary5.C b/gcc/testsuite/g++.dg/ext/flexary5.C index d6d8e32..d5ec132 100644 --- a/gcc/testsuite/g++.dg/ext/flexary5.C +++ b/gcc/testsuite/g++.dg/ext/flexary5.C @@ -62,7 +62,7 @@ ASSERT_AT_END (D4, a); // below is benign since GCC computes the expected value. struct D5: E1, E2, NE { char a[]; }; -ASSERT_AT_END (D5, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D5, a); // { dg-warning "'offsetof' within non-standard-layout" } struct A2x_1 { size_t n; @@ -166,29 +166,29 @@ struct A5x { struct D22: A5x, E1, E2 { }; -ASSERT_AT_END (D22, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D22, a); // { dg-warning "'offsetof' within non-standard-layout" } struct D23: E1, A5x, E2 { }; -ASSERT_AT_END (D23, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D23, a); // { dg-warning "'offsetof' within non-standard-layout" } struct D24: E1, E2, A5x { }; -ASSERT_AT_END (D24, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D24, a); // { dg-warning "'offsetof' within non-standard-layout" } struct DA5x: A5x { }; struct D25: DA5x, E1, E2 { }; -ASSERT_AT_END (D25, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D25, a); // { dg-warning "'offsetof' within non-standard-layout" } struct D26: E1, DA5x, E2 { }; -ASSERT_AT_END (D26, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D26, a); // { dg-warning "'offsetof' within non-standard-layout" } struct D27: E1, E2, DA5x { }; -ASSERT_AT_END (D27, a); // { dg-warning "offsetof within non-standard-layout" } +ASSERT_AT_END (D27, a); // { dg-warning "'offsetof' within non-standard-layout" } // Verfify that a flexible array member is diagnosed even when deep // in the base class hierarchy. diff --git a/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C b/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C index f37f93c..8f0a732 100644 --- a/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C +++ b/gcc/testsuite/g++.dg/ext/utf-array-short-wchar.C @@ -21,9 +21,9 @@ const char16_t s16_2[] = U"ab"; /* { dg-error "from a string literal with type a const char16_t s16_3[] = L"ab"; /* { dg-error "from a string literal with type array of .wchar_t." } */ const char16_t s16_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char16_t s16_5[0] = u"ab"; /* { dg-error "chars is too long" } */ -const char16_t s16_6[1] = u"ab"; /* { dg-error "chars is too long" } */ -const char16_t s16_7[2] = u"ab"; /* { dg-error "chars is too long" } */ +const char16_t s16_5[0] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[0]' is too long" } */ +const char16_t s16_6[1] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[1]' is too long" } */ +const char16_t s16_7[2] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[2]' is too long" } */ const char16_t s16_8[3] = u"ab"; const char16_t s16_9[4] = u"ab"; @@ -33,9 +33,9 @@ const char32_t s32_2[] = U"ab"; const char32_t s32_3[] = L"ab"; /* { dg-error "from a string literal with type array of .wchar_t." } */ const char32_t s32_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char32_t s32_5[0] = U"ab"; /* { dg-error "chars is too long" } */ -const char32_t s32_6[1] = U"ab"; /* { dg-error "chars is too long" } */ -const char32_t s32_7[2] = U"ab"; /* { dg-error "chars is too long" } */ +const char32_t s32_5[0] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[0]' is too long" } */ +const char32_t s32_6[1] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[1]' is too long" } */ +const char32_t s32_7[2] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[2]' is too long" } */ const char32_t s32_8[3] = U"ab"; const char32_t s32_9[4] = U"ab"; diff --git a/gcc/testsuite/g++.dg/ext/utf-array.C b/gcc/testsuite/g++.dg/ext/utf-array.C index 0e403db..e539cd4 100644 --- a/gcc/testsuite/g++.dg/ext/utf-array.C +++ b/gcc/testsuite/g++.dg/ext/utf-array.C @@ -21,9 +21,9 @@ const char16_t s16_2[] = U"ab"; /* { dg-error "from a string literal with type a const char16_t s16_3[] = L"ab"; /* { dg-error "from a string literal with type array of .wchar_t." } */ const char16_t s16_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char16_t s16_5[0] = u"ab"; /* { dg-error "chars is too long" } */ -const char16_t s16_6[1] = u"ab"; /* { dg-error "chars is too long" } */ -const char16_t s16_7[2] = u"ab"; /* { dg-error "chars is too long" } */ +const char16_t s16_5[0] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[0]' is too long" } */ +const char16_t s16_6[1] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[1]' is too long" } */ +const char16_t s16_7[2] = u"ab"; /* { dg-error "initializer-string for 'const char16_t \\\[2]' is too long" } */ const char16_t s16_8[3] = u"ab"; const char16_t s16_9[4] = u"ab"; @@ -33,9 +33,9 @@ const char32_t s32_2[] = U"ab"; const char32_t s32_3[] = L"ab"; /* { dg-error "from a string literal with type array of .wchar_t." } */ const char32_t s32_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char32_t s32_5[0] = U"ab"; /* { dg-error "chars is too long" } */ -const char32_t s32_6[1] = U"ab"; /* { dg-error "chars is too long" } */ -const char32_t s32_7[2] = U"ab"; /* { dg-error "chars is too long" } */ +const char32_t s32_5[0] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[0]' is too long" } */ +const char32_t s32_6[1] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[1]' is too long" } */ +const char32_t s32_7[2] = U"ab"; /* { dg-error "initializer-string for 'const char32_t \\\[2]' is too long" } */ const char32_t s32_8[3] = U"ab"; const char32_t s32_9[4] = U"ab"; diff --git a/gcc/testsuite/g++.dg/ext/utf8-2.C b/gcc/testsuite/g++.dg/ext/utf8-2.C index b13d55f..1db5c38 100644 --- a/gcc/testsuite/g++.dg/ext/utf8-2.C +++ b/gcc/testsuite/g++.dg/ext/utf8-2.C @@ -12,16 +12,16 @@ const char16_t s1[] = u8"ab"; // { dg-error "from a string literal with type arr const char32_t s2[] = u8"ab"; // { dg-error "from a string literal with type array of .char." } const wchar_t s3[] = u8"ab"; // { dg-error "from a string literal with type array of .char." } -const u8_char_t t0[0] = u8"ab"; // { dg-error "chars is too long" } -const u8_char_t t1[1] = u8"ab"; // { dg-error "chars is too long" } -const u8_char_t t2[2] = u8"ab"; // { dg-error "chars is too long" } +const u8_char_t t0[0] = u8"ab"; // { dg-error "initializer-string for 'const u8_char_t \\\[0]' {aka 'const char \\\[0]'} is too long" } +const u8_char_t t1[1] = u8"ab"; // { dg-error "initializer-string for 'const u8_char_t \\\[1]' {aka 'const char \\\[1]'} is too long" } +const u8_char_t t2[2] = u8"ab"; // { dg-error "initializer-string for 'const u8_char_t \\\[2]' {aka 'const char \\\[2]'} is too long" } const u8_char_t t3[3] = u8"ab"; const u8_char_t t4[4] = u8"ab"; -const u8_char_t u0[0] = u8"\u2160."; // { dg-error "chars is too long" } -const u8_char_t u1[1] = u8"\u2160."; // { dg-error "chars is too long" } -const u8_char_t u2[2] = u8"\u2160."; // { dg-error "chars is too long" } -const u8_char_t u3[3] = u8"\u2160."; // { dg-error "chars is too long" } -const u8_char_t u4[4] = u8"\u2160."; // { dg-error "chars is too long" } +const u8_char_t u0[0] = u8"\u2160."; // { dg-error "initializer-string for 'const u8_char_t \\\[0]' {aka 'const char \\\[0]'} is too long" } +const u8_char_t u1[1] = u8"\u2160."; // { dg-error "initializer-string for 'const u8_char_t \\\[1]' {aka 'const char \\\[1]'} is too long" } +const u8_char_t u2[2] = u8"\u2160."; // { dg-error "initializer-string for 'const u8_char_t \\\[2]' {aka 'const char \\\[2]'} is too long" } +const u8_char_t u3[3] = u8"\u2160."; // { dg-error "initializer-string for 'const u8_char_t \\\[3]' {aka 'const char \\\[3]'} is too long" } +const u8_char_t u4[4] = u8"\u2160."; // { dg-error "initializer-string for 'const u8_char_t \\\[4]' {aka 'const char \\\[4]'} is too long" } const u8_char_t u5[5] = u8"\u2160."; const u8_char_t u6[6] = u8"\u2160."; diff --git a/gcc/testsuite/g++.dg/gomp/loop-4.C b/gcc/testsuite/g++.dg/gomp/loop-4.C index cd85dbd..c45d43e 100644 --- a/gcc/testsuite/g++.dg/gomp/loop-4.C +++ b/gcc/testsuite/g++.dg/gomp/loop-4.C @@ -81,28 +81,28 @@ f0 () for (i = 64; i != 0; i += k) ; #pragma omp for - for (i = 0; i != 64; i += m) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 0; i != 64; i += m) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 64; i != 0; i -= m) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 64; i != 0; i -= m) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 0; i != 64; i -= n) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 0; i != 64; i -= n) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 64; i != 0; i += n) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 64; i != 0; i += n) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 0; i != 64; i += o) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 0; i != 64; i += o) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 64; i != 0; i -= o) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 64; i != 0; i -= o) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 0; i != 64; i -= p) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 0; i != 64; i -= p) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = 64; i != 0; i += p) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = 64; i != 0; i += p) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; } @@ -165,63 +165,63 @@ f1 (I<int> &x, I<int> &y, I<int> &u, I<int> &v) for (i = y; i != x; i = l + i) ; #pragma omp for - for (i = x; i != y; i = i + 2) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = i + 2) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = 7 + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = 7 + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = i - 2) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = i - 2) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = -7 + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = -7 + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = i + m) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = i + m) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = m + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = m + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = i - m) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = i - m) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = -m + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = -m + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = i - n) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = i - n) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = -n + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = -n + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = i + n) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = i + n) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = n + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = n + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = i + o) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = i + o) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = o + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = o + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = i - o) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = i - o) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = -o + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = -o + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = i - p) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = i - p) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = x; i != y; i = -p + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = x; i != y; i = -p + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = i + p) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = i + p) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; #pragma omp for - for (i = y; i != x; i = p + i) // { dg-error "increment is not constant 1 or -1 for != condition" } + for (i = y; i != x; i = p + i) // { dg-error "increment is not constant 1 or -1 for '!=' condition" } ; } diff --git a/gcc/testsuite/g++.dg/gomp/macro-4.C b/gcc/testsuite/g++.dg/gomp/macro-4.C index 6a69f1a..dcc8bcb 100644 --- a/gcc/testsuite/g++.dg/gomp/macro-4.C +++ b/gcc/testsuite/g++.dg/gomp/macro-4.C @@ -10,9 +10,9 @@ void bar (void); void foo (void) { -#pragma omp p // { dg-warning "-:ignoring #pragma omp _Pragma" } +#pragma omp p // { dg-warning "-:ignoring '#pragma omp _Pragma'" } bar (); - omp_p // { dg-warning "-:ignoring #pragma omp _Pragma" } + omp_p // { dg-warning "-:ignoring '#pragma omp _Pragma'" } bar (); } @@ -22,8 +22,8 @@ foo (void) void baz (void) { -#pragma omp parallel // { dg-warning "-:ignoring #pragma omp serial" } +#pragma omp parallel // { dg-warning "-:ignoring '#pragma omp serial'" } bar (); - omp_parallel // { dg-warning "-:ignoring #pragma omp serial" } + omp_parallel // { dg-warning "-:ignoring '#pragma omp serial'" } bar (); } diff --git a/gcc/testsuite/g++.dg/gomp/udr-1.C b/gcc/testsuite/g++.dg/gomp/udr-1.C index 10c1c8d..c07a89b 100644 --- a/gcc/testsuite/g++.dg/gomp/udr-1.C +++ b/gcc/testsuite/g++.dg/gomp/udr-1.C @@ -86,11 +86,11 @@ namespace N5 namespace N6 { struct A { int a; A () : a (0) {} }; - #pragma omp declare reduction (| : const A : omp_out.a |= omp_in.a) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (+ : __const A : omp_out.a += omp_in.a) // { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (| : const A : omp_out.a |= omp_in.a) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (+ : __const A : omp_out.a += omp_in.a) // { dg-error "'const', 'volatile' or '__restrict'" } typedef volatile A T; - #pragma omp declare reduction (min : T : omp_out.a += omp_in.a) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (* : A *__restrict : omp_out->a *= omp_in->a)// { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (min : T : omp_out.a += omp_in.a) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (* : A *__restrict : omp_out->a *= omp_in->a)// { dg-error "'const', 'volatile' or '__restrict'" } } namespace N7 { @@ -98,21 +98,21 @@ namespace N7 template <typename T1, typename T2, typename T3, typename T4> struct S { - #pragma omp declare reduction (| : T1 : omp_out |= omp_in) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (+ : T2 : omp_out += omp_in) // { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (| : T1 : omp_out |= omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (+ : T2 : omp_out += omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } typedef T3 T; - #pragma omp declare reduction (min : T : omp_out += omp_in) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (* : T4 : omp_out *= omp_in) // { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (min : T : omp_out += omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (* : T4 : omp_out *= omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } }; S<const A, __const A, volatile A, A *__restrict> s; template <typename T1, typename T2, typename T3, typename T4> int foo () { - #pragma omp declare reduction (| : T1 : omp_out |= omp_in) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (+ : T2 : omp_out += omp_in) // { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (| : T1 : omp_out |= omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (+ : T2 : omp_out += omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } typedef T3 T; - #pragma omp declare reduction (min : T : omp_out += omp_in) // { dg-error "const, volatile or __restrict" } - #pragma omp declare reduction (* : T4 : omp_out *= omp_in) // { dg-error "const, volatile or __restrict" } + #pragma omp declare reduction (min : T : omp_out += omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } + #pragma omp declare reduction (* : T4 : omp_out *= omp_in) // { dg-error "'const', 'volatile' or '__restrict'" } return 0; } int x = foo <const A, __const A, volatile A, A *__restrict> (); diff --git a/gcc/testsuite/g++.dg/init/initializer-string-too-long.C b/gcc/testsuite/g++.dg/init/initializer-string-too-long.C index c4ce468..064e1ac 100644 --- a/gcc/testsuite/g++.dg/init/initializer-string-too-long.C +++ b/gcc/testsuite/g++.dg/init/initializer-string-too-long.C @@ -2,7 +2,7 @@ /* Verify that we highlight *which* string is too long. */ -char test[3][4] = { "ok", "too long", "ok" }; // { dg-error "initializer-string for array of chars is too long" } +char test[3][4] = { "ok", "too long", "ok" }; // { dg-error "initializer-string for 'char \\\[4]' is too long" } /* { dg-begin-multiline-output "" } char test[3][4] = { "ok", "too long", "ok" }; ^~~~~~~~~~ diff --git a/gcc/testsuite/g++.dg/other/offsetof9.C b/gcc/testsuite/g++.dg/other/offsetof9.C index bd80fa5..1936f2e 100644 --- a/gcc/testsuite/g++.dg/other/offsetof9.C +++ b/gcc/testsuite/g++.dg/other/offsetof9.C @@ -4,14 +4,14 @@ struct A { int i; }; struct B : virtual A { }; -__SIZE_TYPE__ s = __builtin_offsetof (B, A::i); // { dg-warning "offsetof within non-standard-layout type" } +__SIZE_TYPE__ s = __builtin_offsetof (B, A::i); // { dg-warning "'offsetof' within non-standard-layout type" } template <typename T> __SIZE_TYPE__ foo () { - return __builtin_offsetof (T, A::i) // { dg-warning "offsetof within non-standard-layout type" } - + __builtin_offsetof (B, A::i); // { dg-warning "offsetof within non-standard-layout type" } + return __builtin_offsetof (T, A::i) // { dg-warning "'offsetof' within non-standard-layout type" } + + __builtin_offsetof (B, A::i); // { dg-warning "'offsetof' within non-standard-layout type" } } __SIZE_TYPE__ t = foo<B> (); diff --git a/gcc/testsuite/g++.dg/ubsan/pr63956.C b/gcc/testsuite/g++.dg/ubsan/pr63956.C index 34b5dd7..cd67c32 100644 --- a/gcc/testsuite/g++.dg/ubsan/pr63956.C +++ b/gcc/testsuite/g++.dg/ubsan/pr63956.C @@ -11,7 +11,7 @@ fn1 (int a, int b) if (b != 2) a <<= b; // { dg-error "5 << -2.. is negative" "" { target *-*-* } .-1 } - // { dg-error "is >= than the precision of the left operand" "" { target *-*-* } .-2 } + // { dg-error "is greater than or equal to the precision of the left operand" "" { target *-*-* } .-2 } // { dg-error "-2 << 4.. is negative" "" { target *-*-* } .-3 } return a; } @@ -34,7 +34,7 @@ fn2 (int a, int b) if (b != 2) a >>= b; // { dg-error "4 >> -1.. is negative" "" { target *-*-* } .-1 } - // { dg-error "is >= than the precision of the left operand" "" { target *-*-* } .-2 } + // { dg-error "is greater than or equal to the precision of the left operand" "" { target *-*-* } .-2 } return a; } diff --git a/gcc/testsuite/g++.dg/warn/Wbool-operation-1.C b/gcc/testsuite/g++.dg/warn/Wbool-operation-1.C index 4512b85..82e9ead 100644 --- a/gcc/testsuite/g++.dg/warn/Wbool-operation-1.C +++ b/gcc/testsuite/g++.dg/warn/Wbool-operation-1.C @@ -6,6 +6,6 @@ template <class c> decltype (~c{}) call () { - return ~false; // { dg-warning "on an expression of type bool" } + return ~false; // { dg-warning "on an expression of type 'bool'" } } template int call<bool>(); diff --git a/gcc/testsuite/g++.dg/warn/Wtype-limits-Wextra.C b/gcc/testsuite/g++.dg/warn/Wtype-limits-Wextra.C index 0cee96a..99e1e89 100644 --- a/gcc/testsuite/g++.dg/warn/Wtype-limits-Wextra.C +++ b/gcc/testsuite/g++.dg/warn/Wtype-limits-Wextra.C @@ -30,10 +30,10 @@ void b (unsigned short x) void c (unsigned int x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ if (1U >= 0) return; if (1U < 0) return; if (0 <= 1U) return; @@ -42,18 +42,18 @@ void c (unsigned int x) void d (unsigned long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } void e (unsigned long long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } int test (int x) diff --git a/gcc/testsuite/g++.dg/warn/Wtype-limits.C b/gcc/testsuite/g++.dg/warn/Wtype-limits.C index 7919a42..6a968d9 100644 --- a/gcc/testsuite/g++.dg/warn/Wtype-limits.C +++ b/gcc/testsuite/g++.dg/warn/Wtype-limits.C @@ -30,10 +30,10 @@ void b (unsigned short x) void c (unsigned int x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ if (1U >= 0) return; if (1U < 0) return; if (0 <= 1U) return; @@ -42,18 +42,18 @@ void c (unsigned int x) void d (unsigned long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } void e (unsigned long long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } int test (int x) diff --git a/gcc/testsuite/g++.dg/wrappers/pr88680.C b/gcc/testsuite/g++.dg/wrappers/pr88680.C index 1bd6292..8f8bdd6 100644 --- a/gcc/testsuite/g++.dg/wrappers/pr88680.C +++ b/gcc/testsuite/g++.dg/wrappers/pr88680.C @@ -27,9 +27,9 @@ void test(unsigned n) return; if (N >= FOO) return; - if (n >= 0) // { dg-warning ">= 0 is always true" } + if (n >= 0) // { dg-warning "'>= 0' is always true" } return; - if (n < 0) // { dg-warning "< 0 is always false" } + if (n < 0) // { dg-warning "'< 0' is always false" } return; if (n >= FOO) return; @@ -45,9 +45,9 @@ void test(unsigned n) return; if (0 <= FOO) return; - if (0 <= n) // { dg-warning ">= 0 is always true" } + if (0 <= n) // { dg-warning "'>= 0' is always true" } return; - if (0 > n) // { dg-warning "< 0 is always false" } + if (0 > n) // { dg-warning "'< 0' is always false" } return; if (N <= FOO) return; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh55.C b/gcc/testsuite/g++.old-deja/g++.mike/eh55.C index af43f66b..5835c96 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh55.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh55.C @@ -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++17 } } + throw 1; // { dg-warning "'throw' will always call 'terminate'" "" { target c++17 } } } int main() { diff --git a/gcc/testsuite/gcc.dg/Wsign-compare-1.c b/gcc/testsuite/gcc.dg/Wsign-compare-1.c index be3bd2f..b40bc6c 100644 --- a/gcc/testsuite/gcc.dg/Wsign-compare-1.c +++ b/gcc/testsuite/gcc.dg/Wsign-compare-1.c @@ -5,7 +5,7 @@ unsigned int f0 (int x, unsigned int y) { - return x ? y : -1; /* { dg-warning "18:operand of \\?: changes signedness from 'int' to 'unsigned int'" } */ + return x ? y : -1; /* { dg-warning "18:operand of '\\?:' changes signedness from 'int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return x ? y : -1; ^~ @@ -15,7 +15,7 @@ f0 (int x, unsigned int y) unsigned int f1 (int xxx, unsigned int yyy) { - return xxx ? yyy : -1; /* { dg-warning "22:operand of \\?: changes signedness from 'int' to 'unsigned int'" } */ + return xxx ? yyy : -1; /* { dg-warning "22:operand of '\\?:' changes signedness from 'int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? yyy : -1; ^~ @@ -25,7 +25,7 @@ f1 (int xxx, unsigned int yyy) unsigned int f2 (int xxx, unsigned int yyy) { - return xxx ? -1 : yyy; /* { dg-warning "16:operand of \\?: changes signedness from 'int' to 'unsigned int'" } */ + return xxx ? -1 : yyy; /* { dg-warning "16:operand of '\\?:' changes signedness from 'int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? -1 : yyy; ^~ @@ -35,7 +35,7 @@ f2 (int xxx, unsigned int yyy) unsigned int f3 (unsigned int yyy) { - return yyy ?: -1; /* { dg-warning "17:operand of \\?: changes signedness from 'int' to 'unsigned int'" } */ + return yyy ?: -1; /* { dg-warning "17:operand of '\\?:' changes signedness from 'int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return yyy ?: -1; ^~ @@ -45,7 +45,7 @@ f3 (unsigned int yyy) unsigned int f4 (int xxx, unsigned yyy, short uuu) { - return xxx ? yyy : uuu; /* { dg-warning "22:operand of \\?: changes signedness from 'short int' to 'unsigned int'" } */ + return xxx ? yyy : uuu; /* { dg-warning "22:operand of '\\?:' changes signedness from 'short int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? yyy : uuu; ^~~ @@ -55,7 +55,7 @@ f4 (int xxx, unsigned yyy, short uuu) unsigned int f5 (int xxx, unsigned yyy, short uuu) { - return xxx ? uuu : yyy; /* { dg-warning "16:operand of \\?: changes signedness from 'short int' to 'unsigned int'" } */ + return xxx ? uuu : yyy; /* { dg-warning "16:operand of '\\?:' changes signedness from 'short int' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? uuu : yyy; ^~~ @@ -65,7 +65,7 @@ f5 (int xxx, unsigned yyy, short uuu) unsigned int f6 (int xxx, unsigned yyy, signed char uuu) { - return xxx ? yyy : uuu; /* { dg-warning "22:operand of \\?: changes signedness from 'signed char' to 'unsigned int'" } */ + return xxx ? yyy : uuu; /* { dg-warning "22:operand of '\\?:' changes signedness from 'signed char' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? yyy : uuu; ^~~ @@ -75,7 +75,7 @@ f6 (int xxx, unsigned yyy, signed char uuu) unsigned int f7 (int xxx, unsigned yyy, signed char uuu) { - return xxx ? uuu : yyy; /* { dg-warning "16:operand of \\?: changes signedness from 'signed char' to 'unsigned int'" } */ + return xxx ? uuu : yyy; /* { dg-warning "16:operand of '\\?:' changes signedness from 'signed char' to 'unsigned int'" } */ /* { dg-begin-multiline-output "" } return xxx ? uuu : yyy; ^~~ diff --git a/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c b/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c index e5e7f94..d04ecb7 100644 --- a/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c +++ b/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c @@ -21,22 +21,22 @@ void a (unsigned char x) } void b (unsigned short x) -{ /* { dg-warning "comparison of unsigned expression < 0 is always false" "" { target { ! int32plus } } .+1 } */ +{ /* { dg-warning "comparison of unsigned expression '< 0' is always false" "" { target { ! int32plus } } .+1 } */ if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression >= 0 is always true" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression '>= 0' is always true" "" { target { ! int32plus } } .+1 } */ if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression < 0 is always false" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression '< 0' is always false" "" { target { ! int32plus } } .+1 } */ if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression >= 0 is always true" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression '>= 0' is always true" "" { target { ! int32plus } } .+1 } */ if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { int32plus } } } */ } void c (unsigned int x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ if (1U >= 0) return; if (1U < 0) return; if (0 <= 1U) return; @@ -45,18 +45,18 @@ void c (unsigned int x) void d (unsigned long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } void e (unsigned long long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } int test (int x) diff --git a/gcc/testsuite/gcc.dg/Wtype-limits.c b/gcc/testsuite/gcc.dg/Wtype-limits.c index 2d6f991..6a596fc 100644 --- a/gcc/testsuite/gcc.dg/Wtype-limits.c +++ b/gcc/testsuite/gcc.dg/Wtype-limits.c @@ -21,22 +21,22 @@ void a (unsigned char x) } void b (unsigned short x) -{ /* { dg-warning "comparison of unsigned expression < 0 is always false" "" { target { ! int32plus } } .+1 } */ +{ /* { dg-warning "comparison of unsigned expression in '< 0' is always false" "" { target { ! int32plus } } .+1 } */ if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression >= 0 is always true" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression in '>= 0' is always true" "" { target { ! int32plus } } .+1 } */ if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression < 0 is always false" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression in '< 0' is always false" "" { target { ! int32plus } } .+1 } */ if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { int32plus } } } */ - /* { dg-warning "comparison of unsigned expression >= 0 is always true" "" { target { ! int32plus } } .+1 } */ + /* { dg-warning "comparison of unsigned expression in '>= 0' is always true" "" { target { ! int32plus } } .+1 } */ if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { int32plus } } } */ } void c (unsigned int x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ if (1U >= 0) return; if (1U < 0) return; if (0 <= 1U) return; @@ -45,18 +45,18 @@ void c (unsigned int x) void d (unsigned long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } void e (unsigned long long x) { - if (x < 0) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (x >= 0) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ - if (0 > x) return;/* { dg-warning "comparison of unsigned expression < 0 is always false" } */ - if (0 <= x) return;/* { dg-warning "comparison of unsigned expression >= 0 is always true" } */ + if (x < 0) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (x >= 0) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ + if (0 > x) return;/* { dg-warning "comparison of unsigned expression in '< 0' is always false" } */ + if (0 <= x) return;/* { dg-warning "comparison of unsigned expression in '>= 0' is always true" } */ } int test (int x) diff --git a/gcc/testsuite/gcc.dg/Wunknownprag.c b/gcc/testsuite/gcc.dg/Wunknownprag.c index 3514825..158cab7 100644 --- a/gcc/testsuite/gcc.dg/Wunknownprag.c +++ b/gcc/testsuite/gcc.dg/Wunknownprag.c @@ -5,7 +5,7 @@ /* We used to get "unspellable token: CPP_EOF" warnings. */ -#pragma /* { dg-warning "-:ignoring #pragma" } */ -#pragma ~ /* { dg-warning "-:ignoring #pragma" } */ -#pragma baz /* { dg-warning "-:ignoring #pragma" } */ -#pragma baz baz /* { dg-warning "-:ignoring #pragma" } */ +#pragma /* { dg-warning "-:ignoring '#pragma" } */ +#pragma ~ /* { dg-warning "-:ignoring '#pragma" } */ +#pragma baz /* { dg-warning "-:ignoring '#pragma" } */ +#pragma baz baz /* { dg-warning "-:ignoring '#pragma baz baz'" } */ diff --git a/gcc/testsuite/gcc.dg/Wunsuffixed-float-constants-1.c b/gcc/testsuite/gcc.dg/Wunsuffixed-float-constants-1.c index b4a38d5..ba992c4 100644 --- a/gcc/testsuite/gcc.dg/Wunsuffixed-float-constants-1.c +++ b/gcc/testsuite/gcc.dg/Wunsuffixed-float-constants-1.c @@ -8,8 +8,8 @@ double a = 1.1d; /* With FLOAT_CONST_DECIMAL64 switched to ON these would have type _Decimal64. */ -double b = VAL; /* { dg-warning "unsuffixed float constant" } */ -double c = 1.2; /* { dg-warning "unsuffixed float constant" } */ +double b = VAL; /* { dg-warning "unsuffixed floating constant" } */ +double c = 1.2; /* { dg-warning "unsuffixed floating constant" } */ /* With FLOAT_CONST_DECIMAL64 switched to ON these are still binary. */ diff --git a/gcc/testsuite/gcc.dg/asm-6.c b/gcc/testsuite/gcc.dg/asm-6.c index 9c0ac1e..10983c7 100644 --- a/gcc/testsuite/gcc.dg/asm-6.c +++ b/gcc/testsuite/gcc.dg/asm-6.c @@ -2,6 +2,6 @@ void foo () { int i; - __asm__ ("" : [data] "=r" (i) : [data] "i" (100)); /* { dg-error "duplicate asm operand" } */ + __asm__ ("" : [data] "=r" (i) : [data] "i" (100)); /* { dg-error "duplicate 'asm' operand" } */ __asm__ ("%[foo]" :: [bar] "i" (1)); /* { dg-error "undefined named operand" } */ } diff --git a/gcc/testsuite/gcc.dg/asm-qual-1.c b/gcc/testsuite/gcc.dg/asm-qual-1.c index eff6b45..7e21687 100644 --- a/gcc/testsuite/gcc.dg/asm-qual-1.c +++ b/gcc/testsuite/gcc.dg/asm-qual-1.c @@ -8,7 +8,7 @@ f (void) { asm volatile (""); - asm const (""); /* { dg-error {'const' is not an asm qualifier} } */ + asm const (""); /* { dg-error {'const' is not a valid 'asm' qualifier} } */ - asm restrict (""); /* { dg-error {'restrict' is not an asm qualifier} } */ + asm restrict (""); /* { dg-error {'restrict' is not a valid 'asm' qualifier} } */ } diff --git a/gcc/testsuite/gcc.dg/attr-assume_aligned-4.c b/gcc/testsuite/gcc.dg/attr-assume_aligned-4.c index 84f4523..2571ab8 100644 --- a/gcc/testsuite/gcc.dg/attr-assume_aligned-4.c +++ b/gcc/testsuite/gcc.dg/attr-assume_aligned-4.c @@ -23,14 +23,14 @@ A (16385) void* fpv_16kp1 (void); /* { dg-warning ".assume_aligned. attribute A (32767) void* fpv_32km1 (void); /* { dg-warning ".assume_aligned. attribute argument 32767 is not a power of 2" } */ -A (4, -1) void* fpv_4_m1 (void); /* { dg-warning ".assume_aligned. attribute argument -1 is not in the range \\\[0, 4\\\)" } */ +A (4, -1) void* fpv_4_m1 (void); /* { dg-warning ".assume_aligned. attribute argument -1 is not in the range \\\[0, 3]" } */ A (4, 0) void* fpv_4_0 (void); A (4, 1) void* fpv_4_1 (void); A (4, 2) void* fpv_4_2 (void); A (4, 3) void* fpv_4_3 (void); -A (4, 4) void* fpv_4_3 (void); /* { dg-warning ".assume_aligned. attribute argument 4 is not in the range \\\[0, 4\\\)" } */ +A (4, 4) void* fpv_4_3 (void); /* { dg-warning ".assume_aligned. attribute argument 4 is not in the range \\\[0, 3]" } */ A (4) void* gpv_4_3 (void); A (2) void* gpv_4_3 (void); diff --git a/gcc/testsuite/gcc.dg/c90-const-expr-6.c b/gcc/testsuite/gcc.dg/c90-const-expr-6.c index 50239ce..210659d7 100644 --- a/gcc/testsuite/gcc.dg/c90-const-expr-6.c +++ b/gcc/testsuite/gcc.dg/c90-const-expr-6.c @@ -7,22 +7,22 @@ __extension__ typedef __INTPTR_TYPE__ intptr_t; /* PR 29116. */ -int n = 0, p[n * 0 + 1]; /* { dg-error "variabl|can't be evaluated" } */ +int n = 0, p[n * 0 + 1]; /* { dg-error "variabl|cannot be evaluated" } */ /* PR 31871. */ -extern int c[1 + ((intptr_t) (void *) 0)]; /* { dg-error "variab|can't be evaluated" } */ +extern int c[1 + ((intptr_t) (void *) 0)]; /* { dg-error "variab|cannot be evaluated" } */ /* Implicit conversions from floating-point constants are not OK, although explicit ones are. */ -extern int c1[1.0 ? 1 : 0]; /* { dg-error "variab|can't be evaluated" } */ +extern int c1[1.0 ? 1 : 0]; /* { dg-error "variab|cannot be evaluated" } */ extern int c2[(int)1.0 ? 1 : 0]; -extern int c3[1.0 && 1]; /* { dg-error "variab|can't be evaluated" } */ +extern int c3[1.0 && 1]; /* { dg-error "variab|cannot be evaluated" } */ extern int c4[(int)1.0 && 1]; -extern int c5[1.0 || 1]; /* { dg-error "variab|can't be evaluated" } */ +extern int c5[1.0 || 1]; /* { dg-error "variab|cannot be evaluated" } */ extern int c6[(int)1.0 || 1]; @@ -46,7 +46,7 @@ enum f { void f (int a) { - int v[1 + ((intptr_t) (void *) 0)]; /* { dg-error "variab|can't be evaluated" } */ + int v[1 + ((intptr_t) (void *) 0)]; /* { dg-error "variab|cannot be evaluated" } */ switch (a) { case (n * 0 + 1): /* { dg-error "constant" } */ diff --git a/gcc/testsuite/gcc.dg/cast-1.c b/gcc/testsuite/gcc.dg/cast-1.c index 7b12ad9..19ed4f4 100644 --- a/gcc/testsuite/gcc.dg/cast-1.c +++ b/gcc/testsuite/gcc.dg/cast-1.c @@ -24,8 +24,8 @@ f (void) (union u) l; /* { dg-error "cast to union type from type not present in union" } */ (int) sv; /* { dg-error "aggregate value used where an integer was expected" } */ (int) uv; /* { dg-error "aggregate value used where an integer was expected" } */ - (float) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (float) uv; /* { dg-error "aggregate value used where a float was expected" } */ + (float) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (float) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ (_Complex double) sv; /* { dg-error "aggregate value used where a complex was expected" } */ (_Complex double) uv; /* { dg-error "aggregate value used where a complex was expected" } */ (void *) sv; /* { dg-error "cannot convert to a pointer type" } */ diff --git a/gcc/testsuite/gcc.dg/cast-2.c b/gcc/testsuite/gcc.dg/cast-2.c index f7f58f8..24f63b2 100644 --- a/gcc/testsuite/gcc.dg/cast-2.c +++ b/gcc/testsuite/gcc.dg/cast-2.c @@ -24,8 +24,8 @@ f (void) (union u) l; /* { dg-error "cast to union type from type not present in union" } */ (int) sv; /* { dg-error "aggregate value used where an integer was expected" } */ (int) uv; /* { dg-error "aggregate value used where an integer was expected" } */ - (float) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (float) uv; /* { dg-error "aggregate value used where a float was expected" } */ + (float) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (float) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ (_Complex double) sv; /* { dg-error "aggregate value used where a complex was expected" } */ (_Complex double) uv; /* { dg-error "aggregate value used where a complex was expected" } */ (void *) sv; /* { dg-error "cannot convert to a pointer type" } */ diff --git a/gcc/testsuite/gcc.dg/cast-3.c b/gcc/testsuite/gcc.dg/cast-3.c index 40d3c88..d8ae3a0 100644 --- a/gcc/testsuite/gcc.dg/cast-3.c +++ b/gcc/testsuite/gcc.dg/cast-3.c @@ -24,8 +24,8 @@ f (void) (union u) l; /* { dg-error "cast to union type from type not present in union" } */ (int) sv; /* { dg-error "aggregate value used where an integer was expected" } */ (int) uv; /* { dg-error "aggregate value used where an integer was expected" } */ - (float) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (float) uv; /* { dg-error "aggregate value used where a float was expected" } */ + (float) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (float) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ (_Complex double) sv; /* { dg-error "aggregate value used where a complex was expected" } */ (_Complex double) uv; /* { dg-error "aggregate value used where a complex was expected" } */ (void *) sv; /* { dg-error "cannot convert to a pointer type" } */ diff --git a/gcc/testsuite/gcc.dg/cpp/source_date_epoch-2.c b/gcc/testsuite/gcc.dg/cpp/source_date_epoch-2.c index ae18362..2ca8fa3 100644 --- a/gcc/testsuite/gcc.dg/cpp/source_date_epoch-2.c +++ b/gcc/testsuite/gcc.dg/cpp/source_date_epoch-2.c @@ -6,7 +6,7 @@ int main(void) { - __builtin_printf ("%s %s\n", __DATE__, __TIME__); /* { dg-error "SOURCE_DATE_EPOCH must expand" } */ + __builtin_printf ("%s %s\n", __DATE__, __TIME__); /* { dg-error "environment variable 'SOURCE_DATE_EPOCH' must expand" } */ __builtin_printf ("%s %s\n", __DATE__, __TIME__); return 0; } diff --git a/gcc/testsuite/gcc.dg/debug/pr85252.c b/gcc/testsuite/gcc.dg/debug/pr85252.c index 6e5ca85..9bd4d48 100644 --- a/gcc/testsuite/gcc.dg/debug/pr85252.c +++ b/gcc/testsuite/gcc.dg/debug/pr85252.c @@ -5,7 +5,7 @@ void foo (void) { static char a[0] = ""; - static char b[0] = "b"; /* { dg-warning "initializer-string for array of chars is too long" } */ + static char b[0] = "b"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ static char c[1] = "c"; - static char d[1] = "de"; /* { dg-warning "initializer-string for array of chars is too long" } */ + static char d[1] = "de"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ } diff --git a/gcc/testsuite/gcc.dg/dfp/cast-bad.c b/gcc/testsuite/gcc.dg/dfp/cast-bad.c index e9e31ff..8d22ba3 100644 --- a/gcc/testsuite/gcc.dg/dfp/cast-bad.c +++ b/gcc/testsuite/gcc.dg/dfp/cast-bad.c @@ -31,10 +31,10 @@ f (void) (struct s) d128; /* { dg-error "conversion to non-scalar type requested" } */ (union u) d128; /* { dg-error "cast to union type from type not present in union" } */ - (_Decimal32) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (_Decimal32) uv; /* { dg-error "aggregate value used where a float was expected" } */ - (_Decimal64) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (_Decimal64) uv; /* { dg-error "aggregate value used where a float was expected" } */ - (_Decimal128) sv; /* { dg-error "aggregate value used where a float was expected" } */ - (_Decimal128) uv; /* { dg-error "aggregate value used where a float was expected" } */ + (_Decimal32) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (_Decimal32) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (_Decimal64) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (_Decimal64) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (_Decimal128) sv; /* { dg-error "aggregate value used where a floating point was expected" } */ + (_Decimal128) uv; /* { dg-error "aggregate value used where a floating point was expected" } */ } diff --git a/gcc/testsuite/gcc.dg/gcc_diag-11.c b/gcc/testsuite/gcc.dg/gcc_diag-11.c new file mode 100644 index 0000000..c359989 --- /dev/null +++ b/gcc/testsuite/gcc.dg/gcc_diag-11.c @@ -0,0 +1,220 @@ +/* Test warnings for for GCC diagnostics. + { dg-do compile } + { dg-options "-Wformat -Wformat-diag" } */ + +/* Magic identifiers must be set before the attribute is used. */ + +typedef long long __gcc_host_wide_int__; + +typedef struct location_s +{ + const char *file; + int line; +} location_t; + +union tree_node; +typedef union tree_node *tree; + +/* Define gimple as a dummy type. The typedef must be provided for + the C test to find the symbol. */ +typedef struct gimple gimple; + +/* Likewise for gimple. */ +typedef struct cgraph_node cgraph_node; + +#define FORMAT(kind) __attribute__ ((format (__gcc_## kind ##__, 1, 2))) + +/* Basic formatting function like pp_format. */ +void diag (const char*, ...) FORMAT (diag); + +/* Diagnostic formatting function like error or warning declared + by the C front end. */ +void cdiag (const char*, ...) FORMAT (cdiag); + +/* Diagnostic formatting function like error or warning declared + by the middle-end or back-end. */ +void tdiag (const char*, ...) FORMAT (tdiag); + +/* Diagnostic formatting function like error or warning declared + by the C++ front-end. */ +void cxxdiag (const char*, ...) FORMAT (cxxdiag); + +void dump (const char*, ...) FORMAT (dump_printf); + +/* Verify that functions declared with the C/C++ front-end __gcc_cdiag__ + attribute detect invalid whitespace in format strings. */ + +void test_cdiag_whitespace (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag (" a"); /* { dg-warning "spurious leading space character in format" } */ + cdiag ("%< %>a"); + cdiag ("%< %>a"); + cdiag ("a b"); + cdiag ("a b"); /* { dg-warning "unquoted sequence of 2 consecutive space characters" } */ + cdiag ("a "); /* { dg-warning "spurious trailing space character" } */ + cdiag ("a "); /* { dg-warning "spurious trailing space characters" } */ + cdiag ("a%< %>"); + cdiag ("a%< %>%< %>"); + cdiag ("a%< %> "); /* { dg-warning "spurious trailing space character" } */ + cdiag ("a%< %> %< %>"); /* { dg-warning "unquoted sequence of 2 consecutive space characters" } */ + + /* It's debatable whether the following two formst strings should + be cdiagnosed. They aren't only because it's simpler that way. */ + cdiag ("a %< %>"); + cdiag ("a%< %> %< %>"); + + /* Exercise other whitespace characters. */ + cdiag ("a\fb"); /* { dg-warning "unquoted whitespace character '\\\\x0c'" } */ + cdiag ("a\nb"); /* { dg-warning "unquoted whitespace character '\\\\x0a'" } */ + cdiag ("a\rb"); /* { dg-warning "unquoted whitespace character '\\\\x0d'" } */ + cdiag ("a\vb"); /* { dg-warning "unquoted whitespace character '\\\\x0b'" } */ + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wformat-diag" + + /* Verify that the warning can be suppressed. */ + cdiag ("\ta\b c\vb\n"); + +#pragma GCC diagnostic pop +} + + +void test_cdiag_control (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("\1"); /* { dg-warning "unquoted control character '\\\\x01'" } */ + cdiag ("a\ab"); /* { dg-warning "unquoted control character '\\\\x07'" } */ + cdiag ("a\bb"); /* { dg-warning "unquoted control character '\\\\x08'" } */ +} + + +void test_cdiag_punct (tree t, gimple *gc, int i) +{ + (void)&t; (void)&gc; + + /* Exercise the period. */ + cdiag (".abc"); /* { dg-warning "spurious leading punctuation character" } */ + cdiag ("abc;"); /* { dg-warning "spurious trailing punctuation character" } */ + /* Verify that sentences that start with an uppercase letter and end + in a period are not diagnosed. */ + cdiag ("This is a full sentence."); + cdiag ("Capitalized sentence (with a parethetical note)."); + cdiag ("Not a full sentence;"); /* { dg-warning "spurious trailing punctuation character" } */ + cdiag ("Neither is this one,"); /* { dg-warning "spurious trailing punctuation character" } */ + + /* Exercise the ellipsis. */ + cdiag ("this message..."); + cdiag ("...continues here"); + cdiag ("but...not here"); /* { dg-warning "unquoted sequence of 3 consecutive punctuation characters" } */ + + /* Exercise parentheses. */ + cdiag ("null argument where non-null required (argument %i)", i); + + /* Exercise C++. */ + cdiag ("C++ is cool"); + cdiag ("this is c++"); + cdiag ("you can do this in C++ but not in C"); + + /* Exercise parenthetical note followed by a colon, semicolon, + or a comma. */ + cdiag ("found a bug (here):"); + cdiag ("because of another bug (over there); fix it"); + + cdiag ("found foo (123): go look at it"); + cdiag ("missed bar (abc); will try harder next time"); + + cdiag ("expected this (or that), got something else (or who knows what)"); +} + + +void test_cdiag_punct_balance (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("f()"); /* { dg-warning "spurious trailing punctuation characters" } */ + cdiag ("g(1)"); + cdiag ("("); /* { dg-warning "spurious leading punctuation character|unbalanced" } */ + cdiag ("()"); /* { dg-warning "spurious leading punctuation characters" } */ + cdiag (")"); /* { dg-warning "unbalanced punctuation character '\\\)'" } */ + cdiag ("f()g"); /* { dg-warning "unquoted sequence of 2 consecutive punctuation characters" } */ + cdiag ("illegal operand (1)"); +} + + +void test_cdiag_nongraph (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("a\376b"); /* { dg-warning "unquoted non-graph character '\\\\xfe'" } */ + cdiag ("a\377b"); /* { dg-warning "unquoted non-graph character '\\\\xff'" } */ +} + + +void test_cdiag_attribute (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("attribute foo"); + cdiag ("this is attribute bar"); + cdiag ("bad __attribute bar"); /* { dg-warning "unquoted attribute" } */ + cdiag ("__attribute__ (foobar) bad"); /* { dg-warning "unquoted attribute" } */ + cdiag ("__attribute__ ((foobar))"); /* { dg-warning "unquoted attribute" } */ + cdiag ("__attribute__ (xxx))"); /* { dg-warning "unquoted attribute" } */ + /* { dg-warning "unbalanced punctuation character '\\\)'" "xxx" { target *-*-* } .-1 } */ + cdiag ("__attribute__ ((yyy)))"); /* { dg-warning "unquoted attribute" } */ + /* { dg-warning "unbalanced punctuation character '\\\)'" "yyy" { target *-*-* } .-1 } */ + cdiag ("__attribute__ ((zzz)"); /* { dg-warning "unquoted attribute" } */ + /* { dg-warning "unbalanced punctuation character '\\\('" "zzz" { target *-*-* } .-1 } */ + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wformat-diag" + + /* Verify that the warning can be suppressed. */ + cdiag ("__attribute__ ((("); + +#pragma GCC diagnostic pop +} + +void test_cdiag_builtin (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("__builtin_abort"); /* { dg-warning "unquoted name of built-in function '__builtin_abort'" } */ + cdiag ("in __builtin_trap"); /* { dg-warning "unquoted name of built-in function '__builtin_trap'" } */ + cdiag ("__builtin_xyz bites");/* { dg-warning "unquoted name of built-in function '__builtin_xyz'" } */ + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wformat-diag" + + /* Verify that the warning can be suppressed. */ + cdiag ("__builtin____with____lots__of__underscores"); + +#pragma GCC diagnostic pop +} + +void test_cdiag_option (tree t, gimple *gc) +{ + (void)&t; (void)&gc; + + cdiag ("%<-Wall%>"); + cdiag ("use option %<-Wextra%> to enable additinal warnings"); + + cdiag ("-O2 is fast"); /* { dg-warning "unquoted option name '-O2'" } */ + cdiag ("but -O3 is faster"); /* { dg-warning "unquoted option name '-O3'" } */ + + cdiag ("get --help"); /* { dg-warning "unquoted option name '--help'" } */ + cdiag ("enable -m32"); /* { dg-warning "unquoted option name '-m32'" } */ + cdiag ("value is -12"); + cdiag ("foo-O2"); + cdiag ("a-W"); +} + +void test_cdiag_oper (tree t, gimple *gc) +{ + cdiag ("a == b"); /* { dg-warning "unquoted operator '=='" } */ + cdiag ("++a"); /* { dg-warning "unquoted operator '\\\+\\\+'" } */ + cdiag ("b--"); /* { dg-warning "unquoted operator '--'" } */ +} diff --git a/gcc/testsuite/gcc.dg/gnu-cond-expr-2.c b/gcc/testsuite/gcc.dg/gnu-cond-expr-2.c index 2e561e4..fed5adf 100644 --- a/gcc/testsuite/gcc.dg/gnu-cond-expr-2.c +++ b/gcc/testsuite/gcc.dg/gnu-cond-expr-2.c @@ -9,5 +9,5 @@ int a, b, c; void f (void) { - c = (++a ? : b); /* { dg-warning "ISO C forbids omitting the middle term of a \\?: expression" } */ + c = (++a ? : b); /* { dg-warning "ISO C forbids omitting the middle term of a '\\?:' expression" } */ } diff --git a/gcc/testsuite/gcc.dg/gnu-cond-expr-3.c b/gcc/testsuite/gcc.dg/gnu-cond-expr-3.c index 90555ad..08657ff 100644 --- a/gcc/testsuite/gcc.dg/gnu-cond-expr-3.c +++ b/gcc/testsuite/gcc.dg/gnu-cond-expr-3.c @@ -9,5 +9,5 @@ int a, b, c; void f (void) { - c = (++a ? : b); /* { dg-error "ISO C forbids omitting the middle term of a \\?: expression" } */ + c = (++a ? : b); /* { dg-error "ISO C forbids omitting the middle term of a '\\?:' expression" } */ } diff --git a/gcc/testsuite/gcc.dg/gomp/macro-4.c b/gcc/testsuite/gcc.dg/gomp/macro-4.c index 28d198b..a4ed9a3 100644 --- a/gcc/testsuite/gcc.dg/gomp/macro-4.c +++ b/gcc/testsuite/gcc.dg/gomp/macro-4.c @@ -10,9 +10,9 @@ void bar (void); void foo (void) { -#pragma omp p /* { dg-warning "-:ignoring #pragma omp _Pragma" } */ +#pragma omp p /* { dg-warning "-:ignoring '#pragma omp _Pragma'" } */ bar (); - omp_p /* { dg-warning "-:ignoring #pragma omp _Pragma" } */ + omp_p /* { dg-warning "-:ignoring '#pragma omp _Pragma'" } */ bar (); } @@ -22,8 +22,8 @@ foo (void) void baz (void) { -#pragma omp parallel /* { dg-warning "-:ignoring #pragma omp serial" } */ +#pragma omp parallel /* { dg-warning "-:ignoring '#pragma omp serial'" } */ bar (); - omp_parallel /* { dg-warning "-:ignoring #pragma omp serial" } */ + omp_parallel /* { dg-warning "-:ignoring '#pragma omp serial'" } */ bar (); } diff --git a/gcc/testsuite/gcc.dg/init-bad-1.c b/gcc/testsuite/gcc.dg/init-bad-1.c index a7e8c5a..6173404 100644 --- a/gcc/testsuite/gcc.dg/init-bad-1.c +++ b/gcc/testsuite/gcc.dg/init-bad-1.c @@ -16,9 +16,9 @@ void h(a) char s[1] = "x"; char s1[1] = { "x" }; -char t[1] = "xy"; /* { dg-warning "initializer-string for array of chars is too long" } */ -char t1[1] = { "xy" }; /* { dg-warning "initializer-string for array of chars is too long" } */ -char u[1] = { "x", "x" }; /* { dg-error "excess elements in char array initializer" } */ +char t[1] = "xy"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ +char t1[1] = { "xy" }; /* { dg-warning "initializer-string for array of 'char' is too long" } */ +char u[1] = { "x", "x" }; /* { dg-error "excess elements in 'char' array initializer" } */ /* { dg-message "near init" "near" { target *-*-* } .-1 } */ int i = { }; /* { dg-error "empty scalar initializer" } */ diff --git a/gcc/testsuite/gcc.dg/init-bad-2.c b/gcc/testsuite/gcc.dg/init-bad-2.c index dad57b9..4775c48 100644 --- a/gcc/testsuite/gcc.dg/init-bad-2.c +++ b/gcc/testsuite/gcc.dg/init-bad-2.c @@ -17,9 +17,9 @@ void h(a) char s[1] = "x"; char s1[1] = { "x" }; -char t[1] = "xy"; /* { dg-warning "initializer-string for array of chars is too long" } */ -char t1[1] = { "xy" }; /* { dg-warning "initializer-string for array of chars is too long" } */ -char u[1] = { "x", "x" }; /* { dg-error "excess elements in char array initializer" } */ +char t[1] = "xy"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ +char t1[1] = { "xy" }; /* { dg-warning "initializer-string for array of 'char' is too long" } */ +char u[1] = { "x", "x" }; /* { dg-error "excess elements in 'char' array initializer" } */ /* { dg-message "near init" "near" { target *-*-* } .-1 } */ int j = { 1 }; diff --git a/gcc/testsuite/gcc.dg/init-bad-3.c b/gcc/testsuite/gcc.dg/init-bad-3.c index d320e0e..c5c338d 100644 --- a/gcc/testsuite/gcc.dg/init-bad-3.c +++ b/gcc/testsuite/gcc.dg/init-bad-3.c @@ -17,9 +17,9 @@ void h(a) char s[1] = "x"; char s1[1] = { "x" }; -char t[1] = "xy"; /* { dg-error "initializer-string for array of chars is too long" } */ -char t1[1] = { "xy" }; /* { dg-error "initializer-string for array of chars is too long" } */ -char u[1] = { "x", "x" }; /* { dg-error "excess elements in char array initializer" } */ +char t[1] = "xy"; /* { dg-error "initializer-string for array of 'char' is too long" } */ +char t1[1] = { "xy" }; /* { dg-error "initializer-string for array of 'char' is too long" } */ +char u[1] = { "x", "x" }; /* { dg-error "excess elements in 'char' array initializer" } */ /* { dg-message "near init" "near" { target *-*-* } .-1 } */ int j = { 1 }; diff --git a/gcc/testsuite/gcc.dg/parm-mismatch-1.c b/gcc/testsuite/gcc.dg/parm-mismatch-1.c index 75dad1e..058f2e8 100644 --- a/gcc/testsuite/gcc.dg/parm-mismatch-1.c +++ b/gcc/testsuite/gcc.dg/parm-mismatch-1.c @@ -1,4 +1,4 @@ -/* Test diagnostics for parameter mismatches. Types that can't match +/* Test diagnostics for parameter mismatches. Types that cannot match (). */ /* Origin: Joseph Myers <joseph@codesourcery.com> */ /* { dg-do compile } */ @@ -6,13 +6,13 @@ void f0(); /* { dg-message "note: previous declaration of 'f0' was here" } */ void f0(int, ...); /* { dg-error "conflicting types for 'f0'" } */ -/* { dg-message "note: a parameter list with an ellipsis can't match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ +/* { dg-message "note: a parameter list with an ellipsis cannot match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ void f1(int, ...); /* { dg-message "note: previous declaration of 'f1' was here" } */ void f1(); /* { dg-error "conflicting types for 'f1'" } */ -/* { dg-message "note: a parameter list with an ellipsis can't match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ +/* { dg-message "note: a parameter list with an ellipsis cannot match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ void f2(); /* { dg-message "note: previous declaration of 'f2' was here" } */ void f2(char); /* { dg-error "conflicting types for 'f2'" } */ -/* { dg-message "note: an argument type that has a default promotion can't match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ +/* { dg-message "note: an argument type that has a default promotion cannot match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ void f3(char); /* { dg-message "note: previous declaration of 'f3' was here" } */ void f3(); /* { dg-error "conflicting types for 'f3'" } */ -/* { dg-message "note: an argument type that has a default promotion can't match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ +/* { dg-message "note: an argument type that has a default promotion cannot match an empty parameter name list declaration" "note" { target *-*-* } .-1 } */ diff --git a/gcc/testsuite/gcc.dg/pr27528.c b/gcc/testsuite/gcc.dg/pr27528.c index c9bb238..d63238e 100644 --- a/gcc/testsuite/gcc.dg/pr27528.c +++ b/gcc/testsuite/gcc.dg/pr27528.c @@ -7,16 +7,16 @@ void foo (int *x, int y) { int constant = 0; - asm ("# %0" :: "i" (x)); /* { dg-warning "probably doesn't match" } */ + asm ("# %0" :: "i" (x)); /* { dg-warning "probably does not match" } */ /* { dg-error "impossible constraint" "" { target *-*-* } .-1 } */ - asm ("# %0" :: "i" (bar (*x))); /* { dg-warning "probably doesn't match" } */ + asm ("# %0" :: "i" (bar (*x))); /* { dg-warning "probably does not match" } */ /* { dg-error "impossible constraint" "" { target *-*-* } .-1 } */ - asm ("# %0" :: "i" (*x + 0x11)); /* { dg-warning "probably doesn't match" } */ + asm ("# %0" :: "i" (*x + 0x11)); /* { dg-warning "probably does not match" } */ /* { dg-error "impossible constraint" "" { target *-*-* } .-1 } */ - asm ("# %0" :: "i" (constant)); /* { dg-warning "probably doesn't match" } */ + asm ("# %0" :: "i" (constant)); /* { dg-warning "probably does not match" } */ /* { dg-error "impossible constraint" "" { target *-*-* } .-1 } */ asm ("# %0" :: "i" (y * 0)); /* folded */ diff --git a/gcc/testsuite/gcc.dg/pr48552-1.c b/gcc/testsuite/gcc.dg/pr48552-1.c index 6626a58..70d3483 100644 --- a/gcc/testsuite/gcc.dg/pr48552-1.c +++ b/gcc/testsuite/gcc.dg/pr48552-1.c @@ -15,7 +15,7 @@ f2 (void *x) { __asm volatile ("" : "=r" (*x)); /* { dg-warning "dereferencing" "deref" } */ } /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } .-1 } */ - /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } .-2 } */ + /* { dg-error "invalid lvalue in 'asm' output 0" "invalid lvalue" { target *-*-* } .-2 } */ void f3 (void *x) { @@ -39,7 +39,7 @@ f6 (void *x) { __asm volatile ("" : "=g" (*x)); /* { dg-warning "dereferencing" "deref" } */ } /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } .-1 } */ - /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } .-2 } */ + /* { dg-error "invalid lvalue in 'asm' output 0" "invalid lvalue" { target *-*-* } .-2 } */ void f7 (struct S *x) { @@ -49,5 +49,5 @@ f7 (struct S *x) void f8 (struct S *x) { - __asm volatile ("" : "=r" (*x)); /* { dg-error "invalid lvalue in asm output 0" } */ + __asm volatile ("" : "=r" (*x)); /* { dg-error "invalid lvalue in 'asm' output 0" } */ } diff --git a/gcc/testsuite/gcc.dg/pr48552-2.c b/gcc/testsuite/gcc.dg/pr48552-2.c index c3aca89..ce6bece 100644 --- a/gcc/testsuite/gcc.dg/pr48552-2.c +++ b/gcc/testsuite/gcc.dg/pr48552-2.c @@ -15,7 +15,7 @@ f2 (void *x) { __asm ("" : "=r" (*x)); /* { dg-warning "dereferencing" "deref" } */ } /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } .-1 } */ - /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } .-2 } */ + /* { dg-error "invalid lvalue in 'asm' output 0" "invalid lvalue" { target *-*-* } .-2 } */ void f3 (void *x) { @@ -39,7 +39,7 @@ f6 (void *x) { __asm ("" : "=g" (*x)); /* { dg-warning "dereferencing" "deref" } */ } /* { dg-error "invalid use of void expression" "void expr" { target *-*-* } .-1 } */ - /* { dg-error "invalid lvalue in asm output 0" "invalid lvalue" { target *-*-* } .-2 } */ + /* { dg-error "invalid lvalue in 'asm' output 0" "invalid lvalue" { target *-*-* } .-2 } */ void f7 (struct S *x) { @@ -49,5 +49,5 @@ f7 (struct S *x) void f8 (struct S *x) { - __asm ("" : "=r" (*x)); /* { dg-error "invalid lvalue in asm output 0" } */ + __asm ("" : "=r" (*x)); /* { dg-error "invalid lvalue in 'asm' output 0" } */ } diff --git a/gcc/testsuite/gcc.dg/pr59846.c b/gcc/testsuite/gcc.dg/pr59846.c index b3dd0de..9b01b22 100644 --- a/gcc/testsuite/gcc.dg/pr59846.c +++ b/gcc/testsuite/gcc.dg/pr59846.c @@ -17,13 +17,13 @@ fn2 (unsigned int p) _Bool fn3 (unsigned int p) { - return p >= 0U; /* { dg-warning "12:comparison of unsigned expression >= 0 is always true" } */ + return p >= 0U; /* { dg-warning "12:comparison of unsigned expression in '>= 0' is always true" } */ } _Bool fn4 (unsigned int p) { - return p < 0U; /* { dg-warning "12:comparison of unsigned expression < 0 is always false" } */ + return p < 0U; /* { dg-warning "12:comparison of unsigned expression in '< 0' is always false" } */ } _Bool diff --git a/gcc/testsuite/gcc.dg/pr61096-1.c b/gcc/testsuite/gcc.dg/pr61096-1.c index 111585d..e707904 100644 --- a/gcc/testsuite/gcc.dg/pr61096-1.c +++ b/gcc/testsuite/gcc.dg/pr61096-1.c @@ -47,7 +47,7 @@ __extension__ int a15[10] = {[2 ... 1] = 4 }; /* { dg-error "31:empty index rang __extension__ int a16[10] = {[2 ... 100] = 4 }; /* { dg-error "31:array index range in initializer exceeds array bounds" } */ int a17[] = { .B = 1 }; /* { dg-error "15:field name not in record or union initializer" } */ int a18[] = { e }; /* { dg-error "15:initializer element is not constant" } */ -char a19[1] = { "x", "x" }; /* { dg-error "22:excess elements in char array initializer" } */ +char a19[1] = { "x", "x" }; /* { dg-error "22:excess elements in 'char' array initializer" } */ void bar (void) diff --git a/gcc/testsuite/gcc.dg/pr8788-1.c b/gcc/testsuite/gcc.dg/pr8788-1.c index b05f533..2281a02 100644 --- a/gcc/testsuite/gcc.dg/pr8788-1.c +++ b/gcc/testsuite/gcc.dg/pr8788-1.c @@ -12,7 +12,7 @@ typedef struct { void switch_to_stack (my_stack *stack){ asm ( /* { dg-error "impossible constraint" } */ -/* { dg-warning "asm operand 1" "asm operand 1" { target *-*-* } .-1 } */ +/* { dg-warning "'asm' operand 1" "asm operand 1" { target *-*-* } .-1 } */ "\n" : "+r" (stack->regs) ); diff --git a/gcc/testsuite/gcc.dg/pr90082.c b/gcc/testsuite/gcc.dg/pr90082.c index bb8293f..663a171 100644 --- a/gcc/testsuite/gcc.dg/pr90082.c +++ b/gcc/testsuite/gcc.dg/pr90082.c @@ -9,5 +9,5 @@ foo (int a) { if (__builtin_setjmp (buf) == 0) __asm__ ("" : : "n" (a * 2)); /* { dg-error "impossible constraint in 'asm'" } */ - /* { dg-warning "asm operand 0 probably doesn't match constraints" "" { target *-*-* } .-1 } */ + /* { dg-warning "'asm' operand 0 probably does not match constraints" "" { target *-*-* } .-1 } */ } diff --git a/gcc/testsuite/gcc.dg/simd-1.c b/gcc/testsuite/gcc.dg/simd-1.c index d77f2bb..6017248 100644 --- a/gcc/testsuite/gcc.dg/simd-1.c +++ b/gcc/testsuite/gcc.dg/simd-1.c @@ -45,7 +45,7 @@ hanneke () foo = (typeof (foo)) foo2; /* Casted assignment between scalar and SIMD of different size. */ - foo1 = (typeof (foo1)) foo2; /* { dg-error "can't convert a vector of type" } */ + foo1 = (typeof (foo1)) foo2; /* { dg-error "cannot convert a vector of type" } */ /* Operators on compatible SIMD types. */ a += b + b; diff --git a/gcc/testsuite/gcc.dg/simd-2.c b/gcc/testsuite/gcc.dg/simd-2.c index 13e1cab..e546239 100644 --- a/gcc/testsuite/gcc.dg/simd-2.c +++ b/gcc/testsuite/gcc.dg/simd-2.c @@ -33,10 +33,10 @@ hanneke () foo = a; /* { dg-error "incompatible types when assigning" } */ /* Casted assignment between scalar and SIMD of same size. */ - foo = (typeof (foo)) foo2; /* { dg-error "aggregate value used where a float was expected" } */ + foo = (typeof (foo)) foo2; /* { dg-error "aggregate value used where a floating point was expected" } */ /* Casted assignment between scalar and SIMD of different size. */ - foo1 = (typeof (foo1)) foo2; /* { dg-error "aggregate value used where a float was expected" } */ + foo1 = (typeof (foo1)) foo2; /* { dg-error "aggregate value used where a floating point was expected" } */ /* Operators on compatible SIMD types. */ a += b + b; diff --git a/gcc/testsuite/gcc.dg/spellcheck-params-2.c b/gcc/testsuite/gcc.dg/spellcheck-params-2.c index 27e293f..8187de4 100644 --- a/gcc/testsuite/gcc.dg/spellcheck-params-2.c +++ b/gcc/testsuite/gcc.dg/spellcheck-params-2.c @@ -1,4 +1,4 @@ /* { dg-do compile } */ /* { dg-options "--param does-not-resemble-anything=42" } */ -/* { dg-error "invalid --param name .does-not-resemble-anything." "" { target *-*-* } 0 } */ +/* { dg-error "invalid '--param' name 'does-not-resemble-anything'" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/gcc.dg/spellcheck-params.c b/gcc/testsuite/gcc.dg/spellcheck-params.c index 1bb7bca..01e1343 100644 --- a/gcc/testsuite/gcc.dg/spellcheck-params.c +++ b/gcc/testsuite/gcc.dg/spellcheck-params.c @@ -1,4 +1,4 @@ /* { dg-do compile } */ /* { dg-options "--param max-early-inliner-iteration=3" } */ -/* { dg-error "invalid --param name .max-early-inliner-iteration.; did you mean .max-early-inliner-iterations.?" "" { target *-*-* } 0 } */ +/* { dg-error "invalid '--param' name 'max-early-inliner-iteration'; did you mean 'max-early-inliner-iterations'?" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/gcc.dg/strlenopt-49.c b/gcc/testsuite/gcc.dg/strlenopt-49.c index 2e6ccd3..f901fd14 100644 --- a/gcc/testsuite/gcc.dg/strlenopt-49.c +++ b/gcc/testsuite/gcc.dg/strlenopt-49.c @@ -11,8 +11,8 @@ const char a3[3] = "12\0"; const char a8[8] = "1234567\0"; const char a9[9] = "12345678\0"; -const char ax[9] = "12345678\0\0\0\0"; /* { dg-warning "initializer-string for array of chars is too long" } */ -const char ay[9] = "\00012345678\0\0\0\0"; /* { dg-warning "initializer-string for array of chars is too long" } */ +const char ax[9] = "12345678\0\0\0\0"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ +const char ay[9] = "\00012345678\0\0\0\0"; /* { dg-warning "initializer-string for array of 'char' is too long" } */ int len1 (void) diff --git a/gcc/testsuite/gcc.dg/tm/pr52141.c b/gcc/testsuite/gcc.dg/tm/pr52141.c index 0dabf76..dbaab30 100644 --- a/gcc/testsuite/gcc.dg/tm/pr52141.c +++ b/gcc/testsuite/gcc.dg/tm/pr52141.c @@ -4,7 +4,7 @@ __attribute__((always_inline)) static void asmfunc(void) { - __asm__ (""); /* { dg-error "asm not allowed in .transaction_safe" } */ + __asm__ (""); /* { dg-error "'asm' not allowed in 'transaction_safe" } */ } __attribute__((transaction_safe)) diff --git a/gcc/testsuite/gcc.dg/torture/pr51106-1.c b/gcc/testsuite/gcc.dg/torture/pr51106-1.c index 8a1227d..5501b54 100644 --- a/gcc/testsuite/gcc.dg/torture/pr51106-1.c +++ b/gcc/testsuite/gcc.dg/torture/pr51106-1.c @@ -6,7 +6,7 @@ int foo (int x) { asm goto ("" : : "i" (x) : : lab); /* { dg-error "impossible constraint" } */ - /* { dg-warning "probably doesn.t match constraints" "" { target *-*-* } .-1 } */ + /* { dg-warning "probably does not match constraints" "" { target *-*-* } .-1 } */ return 1; lab: return 0; diff --git a/gcc/testsuite/gcc.dg/torture/pr51106-2.c b/gcc/testsuite/gcc.dg/torture/pr51106-2.c index aa76a71..2dbb832 100644 --- a/gcc/testsuite/gcc.dg/torture/pr51106-2.c +++ b/gcc/testsuite/gcc.dg/torture/pr51106-2.c @@ -7,7 +7,7 @@ int bar (int x) { asm goto ("" : : "i" (x) : : lab); /* { dg-error "impossible constraint" } */ -/* { dg-warning "probably doesn.t match constraints" "" { target *-*-* } .-1 } */ +/* { dg-warning "probably does not match constraints" "" { target *-*-* } .-1 } */ __builtin_unreachable (); lab: return 0; diff --git a/gcc/testsuite/gcc.dg/utf-array-short-wchar.c b/gcc/testsuite/gcc.dg/utf-array-short-wchar.c index a582e71..81b452a 100644 --- a/gcc/testsuite/gcc.dg/utf-array-short-wchar.c +++ b/gcc/testsuite/gcc.dg/utf-array-short-wchar.c @@ -21,8 +21,8 @@ const char16_t s16_2[] = U"ab"; /* { dg-error "from a string literal with type a const char16_t s16_3[] = L"ab"; const char16_t s16_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char16_t s16_5[0] = u"ab"; /* { dg-warning "chars is too long" } */ -const char16_t s16_6[1] = u"ab"; /* { dg-warning "chars is too long" } */ +const char16_t s16_5[0] = u"ab"; /* { dg-warning " is too long" } */ +const char16_t s16_6[1] = u"ab"; /* { dg-warning " is too long" } */ const char16_t s16_7[2] = u"ab"; const char16_t s16_8[3] = u"ab"; const char16_t s16_9[4] = u"ab"; @@ -33,11 +33,11 @@ const char32_t s32_2[] = U"ab"; const char32_t s32_3[] = L"ab"; /* { dg-error "from a string literal with type array of" } */ const char32_t s32_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char32_t s32_5[0] = U"ab"; /* { dg-warning "chars is too long" } */ -const char32_t s32_6[1] = U"ab"; /* { dg-warning "chars is too long" } */ -const char32_t s32_7[2] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ -const char32_t s32_8[3] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ -const char32_t s32_9[4] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_5[0] = U"ab"; /* { dg-warning " is too long" } */ +const char32_t s32_6[1] = U"ab"; /* { dg-warning " is too long" } */ +const char32_t s32_7[2] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_8[3] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_9[4] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ const wchar_t sw_0[] = "ab"; /* { dg-error "from a string literal with type array of .char." } */ const wchar_t sw_1[] = u"ab"; diff --git a/gcc/testsuite/gcc.dg/utf-array.c b/gcc/testsuite/gcc.dg/utf-array.c index 8687989..7f0cb91 100644 --- a/gcc/testsuite/gcc.dg/utf-array.c +++ b/gcc/testsuite/gcc.dg/utf-array.c @@ -21,8 +21,8 @@ const char16_t s16_2[] = U"ab"; /* { dg-error "from a string literal with type a const char16_t s16_3[] = L"ab"; /* { dg-error "from a string literal with type array of .(long |short )?(unsigned )?int." "" { target { ! wchar_t_char16_t_compatible } } } */ const char16_t s16_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char16_t s16_5[0] = u"ab"; /* { dg-warning "chars is too long" } */ -const char16_t s16_6[1] = u"ab"; /* { dg-warning "chars is too long" } */ +const char16_t s16_5[0] = u"ab"; /* { dg-warning " is too long" } */ +const char16_t s16_6[1] = u"ab"; /* { dg-warning " is too long" } */ const char16_t s16_7[2] = u"ab"; const char16_t s16_8[3] = u"ab"; const char16_t s16_9[4] = u"ab"; @@ -33,11 +33,11 @@ const char32_t s32_2[] = U"ab"; const char32_t s32_3[] = L"ab"; /* { dg-error "from a string literal with type array of .(long |short )?(unsigned )?int." "" { target { ! wchar_t_char32_t_compatible } } } */ const char32_t s32_4[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char32_t s32_5[0] = U"ab"; /* { dg-warning "chars is too long" } */ -const char32_t s32_6[1] = U"ab"; /* { dg-warning "chars is too long" } */ -const char32_t s32_7[2] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ -const char32_t s32_8[3] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ -const char32_t s32_9[4] = U"ab"; /* { dg-warning "chars is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_5[0] = U"ab"; /* { dg-warning " is too long" } */ +const char32_t s32_6[1] = U"ab"; /* { dg-warning " is too long" } */ +const char32_t s32_7[2] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_8[3] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ +const char32_t s32_9[4] = U"ab"; /* { dg-warning " is too long" "" { target "m32c-*-*" } } */ const wchar_t sw_0[] = "ab"; /* { dg-error "from a string literal with type array of .char." } */ const wchar_t sw_1[] = u"ab"; /* { dg-error "from a string literal with type array of" "" { target { ! wchar_t_char16_t_compatible } } } */ diff --git a/gcc/testsuite/gcc.dg/utf8-2.c b/gcc/testsuite/gcc.dg/utf8-2.c index d96b15d..b3b873d 100644 --- a/gcc/testsuite/gcc.dg/utf8-2.c +++ b/gcc/testsuite/gcc.dg/utf8-2.c @@ -12,16 +12,16 @@ const char16_t s1[] = u8"ab"; /* { dg-error "from a string literal with type arr const char32_t s2[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ const wchar_t s3[] = u8"ab"; /* { dg-error "from a string literal with type array of .char." } */ -const char t0[0] = u8"ab"; /* { dg-warning "chars is too long" } */ -const char t1[1] = u8"ab"; /* { dg-warning "chars is too long" } */ +const char t0[0] = u8"ab"; /* { dg-warning " is too long" } */ +const char t1[1] = u8"ab"; /* { dg-warning " is too long" } */ const char t2[2] = u8"ab"; const char t3[3] = u8"ab"; const char t4[4] = u8"ab"; -const char u0[0] = u8"\u2160."; /* { dg-warning "chars is too long" } */ -const char u1[1] = u8"\u2160."; /* { dg-warning "chars is too long" } */ -const char u2[2] = u8"\u2160."; /* { dg-warning "chars is too long" } */ -const char u3[3] = u8"\u2160."; /* { dg-warning "chars is too long" } */ +const char u0[0] = u8"\u2160."; /* { dg-warning " is too long" } */ +const char u1[1] = u8"\u2160."; /* { dg-warning " is too long" } */ +const char u2[2] = u8"\u2160."; /* { dg-warning " is too long" } */ +const char u3[3] = u8"\u2160."; /* { dg-warning " is too long" } */ const char u4[4] = u8"\u2160."; const char u5[5] = u8"\u2160."; const char u6[6] = u8"\u2160."; diff --git a/gcc/testsuite/gcc.dg/warn-sprintf-no-nul.c b/gcc/testsuite/gcc.dg/warn-sprintf-no-nul.c index b331bb5..a38679f 100644 --- a/gcc/testsuite/gcc.dg/warn-sprintf-no-nul.c +++ b/gcc/testsuite/gcc.dg/warn-sprintf-no-nul.c @@ -26,7 +26,7 @@ void sink (int, ...); const char a[5] = "12345"; /* { dg-message "declared here" } */ const char b[6] = "123456"; /* { dg-message "declared here" } */ const char a2[][3] = { - "", "1", "12", "123", "123\000" /* { dg-warning "initializer-string for array of chars is too long" } */ + "", "1", "12", "123", "123\000" /* { dg-warning "initializer-string for array of 'char' is too long" } */ }; diff --git a/gcc/testsuite/gcc.target/i386/asm-flag-0.c b/gcc/testsuite/gcc.target/i386/asm-flag-0.c index b0c0523..e7bd1a5 100644 --- a/gcc/testsuite/gcc.target/i386/asm-flag-0.c +++ b/gcc/testsuite/gcc.target/i386/asm-flag-0.c @@ -11,5 +11,5 @@ void a(void) void b(void) { char x; - asm("" : "=@ccbad"(x)); /* { dg-error "unknown asm flag output" } */ + asm("" : "=@ccbad"(x)); /* { dg-error "unknown 'asm' flag output" } */ } diff --git a/gcc/testsuite/gcc.target/i386/inline_error.c b/gcc/testsuite/gcc.target/i386/inline_error.c index 18e5066..57e60fb 100644 --- a/gcc/testsuite/gcc.target/i386/inline_error.c +++ b/gcc/testsuite/gcc.target/i386/inline_error.c @@ -2,7 +2,7 @@ /* { dg-options "-O0 -mno-popcnt" } */ inline int __attribute__ ((__gnu_inline__, __always_inline__, target("popcnt"))) -foo () /* { dg-error "inlining failed in call to always_inline .* target specific option mismatch" } */ +foo () /* { dg-error "inlining failed in call to 'always_inline' .* target specific option mismatch" } */ { return 0; } diff --git a/gcc/testsuite/gcc.target/i386/interrupt-6.c b/gcc/testsuite/gcc.target/i386/interrupt-6.c index bcbcc97..138b98f 100644 --- a/gcc/testsuite/gcc.target/i386/interrupt-6.c +++ b/gcc/testsuite/gcc.target/i386/interrupt-6.c @@ -31,7 +31,7 @@ fn4 (uword_t error_code, void *frame) error = error_code; } -extern int fn5 (void *) __attribute__ ((interrupt)); /* { dg-error "interrupt service routine can't have non-void return value" } */ +extern int fn5 (void *) __attribute__ ((interrupt)); /* { dg-error "interrupt service routine must return 'void'" } */ int fn5 (void *frame) diff --git a/gcc/testsuite/gcc.target/i386/interrupt-7.c b/gcc/testsuite/gcc.target/i386/interrupt-7.c index 506f61a..3e2f6a0 100644 --- a/gcc/testsuite/gcc.target/i386/interrupt-7.c +++ b/gcc/testsuite/gcc.target/i386/interrupt-7.c @@ -8,5 +8,5 @@ extern void fn (void *) __attribute__((interrupt)); void foo (void) { - fn (&error); /* { dg-error "interrupt service routine can't be called directly" } */ + fn (&error); /* { dg-error "interrupt service routine cannot be called directly" } */ } diff --git a/gcc/testsuite/gcc.target/i386/pr30848.c b/gcc/testsuite/gcc.target/i386/pr30848.c index 2a92851..9c4e22a 100644 --- a/gcc/testsuite/gcc.target/i386/pr30848.c +++ b/gcc/testsuite/gcc.target/i386/pr30848.c @@ -2,5 +2,5 @@ void foo(double d) { - __asm__ ("" : "=u" (d)); /* { dg-error "output regs" } */ + __asm__ ("" : "=u" (d)); /* { dg-error "output registers" } */ } diff --git a/gcc/testsuite/gcc.target/i386/pr39082-1.c b/gcc/testsuite/gcc.target/i386/pr39082-1.c index 2af2264..85b5671 100644 --- a/gcc/testsuite/gcc.target/i386/pr39082-1.c +++ b/gcc/testsuite/gcc.target/i386/pr39082-1.c @@ -13,7 +13,7 @@ extern int bar1 (union un); extern union un bar2 (int); int -foo1 (union un u) /* { dg-message "note: the ABI of passing union with long double has changed in GCC 4.4" } */ +foo1 (union un u) /* { dg-message "note: the ABI of passing union with 'long double' has changed in GCC 4.4" } */ { bar1 (u); return u.i; diff --git a/gcc/testsuite/gcc.target/i386/pr39678.c b/gcc/testsuite/gcc.target/i386/pr39678.c index 0548466..c94c002 100644 --- a/gcc/testsuite/gcc.target/i386/pr39678.c +++ b/gcc/testsuite/gcc.target/i386/pr39678.c @@ -10,7 +10,7 @@ struct X { struct X foo (float *p) -{ /* { dg-message "note: the ABI of passing structure with complex float member has changed in GCC 4.4" } */ +{ /* { dg-message "note: the ABI of passing structure with 'complex float' member has changed in GCC 4.4" } */ struct X x; x.c = -3; __real x.val = p[0]; diff --git a/gcc/testsuite/gcc.target/i386/pr57756.c b/gcc/testsuite/gcc.target/i386/pr57756.c index 25c565c..9a78f62 100644 --- a/gcc/testsuite/gcc.target/i386/pr57756.c +++ b/gcc/testsuite/gcc.target/i386/pr57756.c @@ -3,7 +3,7 @@ /* callee cannot be inlined into caller because it has a higher target ISA. */ __attribute__((always_inline,target("sse4.2"))) -__inline int callee () /* { dg-error "inlining failed in call to always_inline" } */ +__inline int callee () /* { dg-error "inlining failed in call to 'always_inline'" } */ { return 0; } diff --git a/gcc/testsuite/gcc.target/i386/pr68843-1.c b/gcc/testsuite/gcc.target/i386/pr68843-1.c index da0676a..6198ea9 100644 --- a/gcc/testsuite/gcc.target/i386/pr68843-1.c +++ b/gcc/testsuite/gcc.target/i386/pr68843-1.c @@ -5,7 +5,7 @@ double test () { double x = 1.0; - asm ("fld %1" /* { dg-error "explicitly used regs must be grouped at top of stack" } */ + asm ("fld %1" /* { dg-error "explicitly used registers must be grouped at top of stack" } */ : "=&t" (x) : "u" (x)); return x; diff --git a/gcc/testsuite/gcc.target/i386/pr79804.c b/gcc/testsuite/gcc.target/i386/pr79804.c index 10adb44..08d1a3e 100644 --- a/gcc/testsuite/gcc.target/i386/pr79804.c +++ b/gcc/testsuite/gcc.target/i386/pr79804.c @@ -7,4 +7,4 @@ void foo (void) register int r19 asm ("19"); asm volatile ("# %0" : "=r"(r19)); /* { dg-error "invalid use of register" } */ -} /* { dg-error "cannot be used in asm here" } */ +} /* { dg-error "cannot be used in 'asm' here" } */ diff --git a/gcc/testsuite/gcc.target/i386/pr82673.c b/gcc/testsuite/gcc.target/i386/pr82673.c index 50eb5a3..161ec88 100644 --- a/gcc/testsuite/gcc.target/i386/pr82673.c +++ b/gcc/testsuite/gcc.target/i386/pr82673.c @@ -9,4 +9,4 @@ void bar (void) /* { dg-error "frame pointer required, but reserved" } */ { B = &y; -} /* { dg-error "bp cannot be used in asm here" } */ +} /* { dg-error "bp cannot be used in 'asm' here" } */ diff --git a/gcc/testsuite/gnat.dg/inline3.adb b/gcc/testsuite/gnat.dg/inline3.adb index b0ba513..9eae469 100644 --- a/gcc/testsuite/gnat.dg/inline3.adb +++ b/gcc/testsuite/gnat.dg/inline3.adb @@ -1,5 +1,5 @@ -- { dg-do compile } --- { dg-error "not marked Inline_Always" "" { target *-*-* } 0 } +-- { dg-error "not marked 'Inline_Always'" "" { target *-*-* } 0 } -- { dg-error "cannot be inlined" "" { target *-*-* } 0 } with Inline3_Pkg; use Inline3_Pkg; diff --git a/gcc/testsuite/gnat.dg/inline5.adb b/gcc/testsuite/gnat.dg/inline5.adb index 45803fa..5d9bed7 100644 --- a/gcc/testsuite/gnat.dg/inline5.adb +++ b/gcc/testsuite/gnat.dg/inline5.adb @@ -1,6 +1,6 @@ -- { dg-do compile } -- { dg-options "-O -gnatn -Winline" } --- { dg-warning "not marked Inline" "" { target *-*-* } 0 } +-- { dg-warning "not marked 'Inline'" "" { target *-*-* } 0 } -- { dg-warning "cannot be inlined" "" { target *-*-* } 0 } with Inline5_Pkg; use Inline5_Pkg; diff --git a/gcc/testsuite/gnat.dg/inline7.adb b/gcc/testsuite/gnat.dg/inline7.adb index 2c2a46a..390d627 100644 --- a/gcc/testsuite/gnat.dg/inline7.adb +++ b/gcc/testsuite/gnat.dg/inline7.adb @@ -1,6 +1,6 @@ -- { dg-do compile } -- { dg-options "-O -gnatn -Winline" } --- { dg-warning "not marked Inline" "" { target *-*-* } 0 } +-- { dg-warning "not marked 'Inline'" "" { target *-*-* } 0 } -- { dg-warning "cannot be inlined" "" { target *-*-* } 0 } with Inline7_Pkg1; use Inline7_Pkg1; diff --git a/gcc/testsuite/gnat.dg/inline9.adb b/gcc/testsuite/gnat.dg/inline9.adb index d64e134..3ab23c6 100644 --- a/gcc/testsuite/gnat.dg/inline9.adb +++ b/gcc/testsuite/gnat.dg/inline9.adb @@ -1,6 +1,6 @@ -- { dg-do compile } -- { dg-options "-O -gnatn -Winline" } --- { dg-warning "not marked Inline" "" { target *-*-* } 0 } +-- { dg-warning "not marked 'Inline'" "" { target *-*-* } 0 } -- { dg-warning "cannot be inlined" "" { target *-*-* } 0 } with Inline9_Pkg; use Inline9_Pkg; diff --git a/gcc/testsuite/obj-c++.dg/class-protocol-1.mm b/gcc/testsuite/obj-c++.dg/class-protocol-1.mm index f0eab03..78957cb 100644 --- a/gcc/testsuite/obj-c++.dg/class-protocol-1.mm +++ b/gcc/testsuite/obj-c++.dg/class-protocol-1.mm @@ -436,6 +436,4 @@ int main () return(0); } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/obj-c++.dg/exceptions-3.mm b/gcc/testsuite/obj-c++.dg/exceptions-3.mm index 90a657c..622e4ca 100644 --- a/gcc/testsuite/obj-c++.dg/exceptions-3.mm +++ b/gcc/testsuite/obj-c++.dg/exceptions-3.mm @@ -27,19 +27,19 @@ int test (id object) int dummy = 0; @try { @throw object; } - @catch (int x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (intTypedef x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (intTypedef x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (int *x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int *x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @@ -51,7 +51,7 @@ int test (id object) } @try { @throw object; } - @catch (id <MyProtocol> x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (id <MyProtocol> x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -63,13 +63,13 @@ int test (id object) } @try { @throw object; } - @catch (MyObject <MyProtocol> *x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObject <MyProtocol> *x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @try { @throw object; } - @catch (MyObject x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (MyObject x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { /* { dg-error "no matching function" "" { target *-*-* } .-1 } */ dummy++; /* { dg-message "MyObject" "" { target *-*-* } interface_MyObject } */ } /* { dg-message "candidate" "" { target *-*-* } interface_MyObject } */ @@ -86,7 +86,7 @@ int test (id object) } @try { @throw object; } - @catch (MyObjectTypedef <MyProtocol> *x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObjectTypedef <MyProtocol> *x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -98,7 +98,7 @@ int test (id object) } @try { @throw object; } - @catch (Class x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (Class x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } diff --git a/gcc/testsuite/obj-c++.dg/exceptions-4.mm b/gcc/testsuite/obj-c++.dg/exceptions-4.mm index ccdeb34a..4aa00a6 100644 --- a/gcc/testsuite/obj-c++.dg/exceptions-4.mm +++ b/gcc/testsuite/obj-c++.dg/exceptions-4.mm @@ -33,18 +33,18 @@ int test (id object) @try { @throw object; } @catch { /* { dg-error "expected" } */ - dummy++; /* { dg-error "@catch parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ + dummy++; /* { dg-error "'@catch' parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ } @catch () /* { dg-error "expected identifier before" } */ - { /* { dg-error "@catch parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ + { /* { dg-error "'@catch' parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ dummy++; } @catch (i) /* { dg-error ".i. has not been declared" } */ - { /* { dg-error "@catch parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ + { /* { dg-error "'@catch' parameter is not a known Objective-C class type" "" { target *-*-* } .-1 } */ dummy++; } @catch (id <MyProtocol x) /* { dg-error "expected ... before .x." } */ - { /* { dg-error "@catch parameter cannot be protocol-qualified" "" { target *-*-* } .-1 } */ + { /* { dg-error "'@catch' parameter cannot be protocol-qualified" "" { target *-*-* } .-1 } */ dummy++; } @catch MyObject *x /* { dg-error "expected ... before .MyObject." } */ diff --git a/gcc/testsuite/obj-c++.dg/exceptions-5.mm b/gcc/testsuite/obj-c++.dg/exceptions-5.mm index 01bf108..5aa08f3 100644 --- a/gcc/testsuite/obj-c++.dg/exceptions-5.mm +++ b/gcc/testsuite/obj-c++.dg/exceptions-5.mm @@ -27,19 +27,19 @@ int test (id object) int dummy = 0; @try { @throw object; } - @catch (int) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (intTypedef) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (intTypedef) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (int *) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int *) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @@ -51,7 +51,7 @@ int test (id object) } @try { @throw object; } - @catch (id <MyProtocol>) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (id <MyProtocol>) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -63,13 +63,13 @@ int test (id object) } @try { @throw object; } - @catch (MyObject <MyProtocol> *) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObject <MyProtocol> *) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @try { @throw object; } - @catch (MyObject) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (MyObject) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { /* { dg-error "no matching function" "" { target *-*-* } .-1 } */ dummy++; /* { dg-message "MyObject" "" { target *-*-* } interface_MyObject } */ } /* { dg-message "candidate" "" { target *-*-* } interface_MyObject } */ @@ -87,7 +87,7 @@ int test (id object) } @try { @throw object; } - @catch (MyObjectTypedef <MyProtocol> *) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObjectTypedef <MyProtocol> *) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -99,7 +99,7 @@ int test (id object) } @try { @throw object; } - @catch (Class) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (Class) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } diff --git a/gcc/testsuite/obj-c++.dg/exceptions-6.mm b/gcc/testsuite/obj-c++.dg/exceptions-6.mm index 6f6ba78..7a776a5 100644 --- a/gcc/testsuite/obj-c++.dg/exceptions-6.mm +++ b/gcc/testsuite/obj-c++.dg/exceptions-6.mm @@ -9,7 +9,7 @@ void test (id object) { @throw object; /* Ok */ - @throw; /* { dg-error ".@throw. .rethrow. used outside of a @catch block" } */ + @throw; /* { dg-error ".@throw. .rethrow. used outside of a '@catch' block" } */ @throw (object); /* Ok. */ @throw (id)0 /* { dg-error "expected" } */ } diff --git a/gcc/testsuite/obj-c++.dg/method-12.mm b/gcc/testsuite/obj-c++.dg/method-12.mm index 2282dec..4546144 100644 --- a/gcc/testsuite/obj-c++.dg/method-12.mm +++ b/gcc/testsuite/obj-c++.dg/method-12.mm @@ -24,9 +24,7 @@ void foo(void) { /* { dg-message "also found .\\+\\(Protocol \\*\\)port." "" { target *-*-* } Derived_port_last } */ [receiver starboard]; /* { dg-warning "no .\\+starboard. method found" } */ - /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } .-2 } */ - /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } .-3 } */ + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ [Class port]; /* { dg-error ".Class. is not an Objective\\-C class name or alias" } */ } diff --git a/gcc/testsuite/obj-c++.dg/method-13.mm b/gcc/testsuite/obj-c++.dg/method-13.mm index b0a1f59..cd53d0f 100644 --- a/gcc/testsuite/obj-c++.dg/method-13.mm +++ b/gcc/testsuite/obj-c++.dg/method-13.mm @@ -16,10 +16,9 @@ id foo(void) { TestsuiteObject *obj = [[TestsuiteObject alloc] init]; id obj2 = obj; [obj setWindow:nil]; /* { dg-warning ".TestsuiteObject. may not respond to .\\-setWindow:." } */ - /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } .-2 } */ - /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } .-3 } */ - [obj2 setWindow:nil]; /* { dg-warning "multiple methods named .\\-setWindow:. found" } */ + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ + +[obj2 setWindow:nil]; /* { dg-warning "multiple methods named .\\-setWindow:. found" } */ /* { dg-message "using .\\-\\(void\\)setWindow:\\(TestsuiteObject \\*\\)wdw." "" { target *-*-* } Class1_setWindow } */ /* { dg-message "also found .\\-\\(void\\)setWindow:\\(Class1 \\*\\)window." "" { target *-*-* } Class2_setWindow } */ diff --git a/gcc/testsuite/obj-c++.dg/method-6.mm b/gcc/testsuite/obj-c++.dg/method-6.mm index 8f60511..65c0043 100644 --- a/gcc/testsuite/obj-c++.dg/method-6.mm +++ b/gcc/testsuite/obj-c++.dg/method-6.mm @@ -8,11 +8,9 @@ @class NotKnown; void foo(NotKnown *n) { - [NotKnown new]; /* { dg-warning ".interface of class .NotKnown. not found" } */ - [n nonexistent_method]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [NotKnown new]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ + [n nonexistent_method]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/obj-c++.dg/method-7.mm b/gcc/testsuite/obj-c++.dg/method-7.mm index 8940914..277a7e9 100644 --- a/gcc/testsuite/obj-c++.dg/method-7.mm +++ b/gcc/testsuite/obj-c++.dg/method-7.mm @@ -11,12 +11,10 @@ void foo(UnderSpecified *u, NotAClass *n) { [n nonexistent_method]; /* { dg-warning "invalid receiver type" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ [NotAClass nonexistent_method]; /* { dg-error ".NotAClass. is not an Objective\\-C class name or alias" } */ - [u nonexistent_method]; /* { dg-warning ".interface of class .UnderSpecified. not found" } */ + [u nonexistent_method]; /* { dg-warning "'.interface' of class .UnderSpecified. not found" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ - [UnderSpecified nonexistent_method]; /* { dg-warning ".interface of class .UnderSpecified. not found" } */ + [UnderSpecified nonexistent_method]; /* { dg-warning "'.interface' of class .UnderSpecified. not found" } */ /* { dg-warning "no .\\+nonexistent_method. method found" "" { target *-*-* } .-1 } */ } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/obj-c++.dg/method-9.mm b/gcc/testsuite/obj-c++.dg/method-9.mm index 4509c4a..787e25d 100644 --- a/gcc/testsuite/obj-c++.dg/method-9.mm +++ b/gcc/testsuite/obj-c++.dg/method-9.mm @@ -27,7 +27,4 @@ } @end -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ - +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/obj-c++.dg/method-lookup-1.mm b/gcc/testsuite/obj-c++.dg/method-lookup-1.mm index 47499c3..e458471 100644 --- a/gcc/testsuite/obj-c++.dg/method-lookup-1.mm +++ b/gcc/testsuite/obj-c++.dg/method-lookup-1.mm @@ -39,7 +39,7 @@ void test (Class x, Class <MyProtocol> y, id w, id <MyProtocol> z, NotKnown *a, /* If a class is specified by name, the @interface must be available to check what it responds to. */ - [NotKnown classMethod]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [NotKnown classMethod]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* "id w" means that "w" responds to anything, both class and @@ -70,7 +70,7 @@ void test (Class x, Class <MyProtocol> y, id w, id <MyProtocol> z, NotKnown *a, because they expect the compiler to do type-checking; the @interface must be available to do this check, otherwise the compiler does not know what "a" responds to. */ - [a instanceMethod]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [a instanceMethod]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* But, if you cast it to "id", then you're disabling type-checking and the warnings should go away. */ diff --git a/gcc/testsuite/obj-c++.dg/proto-lossage-4.mm b/gcc/testsuite/obj-c++.dg/proto-lossage-4.mm index 2b9945f..2e753d1 100644 --- a/gcc/testsuite/obj-c++.dg/proto-lossage-4.mm +++ b/gcc/testsuite/obj-c++.dg/proto-lossage-4.mm @@ -47,6 +47,4 @@ long foo(void) { return receiver; } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/obj-c++.dg/protocol-qualifier-2.mm b/gcc/testsuite/obj-c++.dg/protocol-qualifier-2.mm index 9fb09b5..aa3082c 100644 --- a/gcc/testsuite/obj-c++.dg/protocol-qualifier-2.mm +++ b/gcc/testsuite/obj-c++.dg/protocol-qualifier-2.mm @@ -25,7 +25,6 @@ void test1 (void) { [object1 method]; /* Ok */ [object2 method]; /* { dg-warning ".MyClass. may not respond to ..method." } */ - /* { dg-warning "without a matching method" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return" "" { target *-*-* } .-2 } */ - /* { dg-warning "as arguments" "" { target *-*-* } .-3 } */ + + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept '\.\.\.' as arguments" "" { target *-*-* } 0 } */ } diff --git a/gcc/testsuite/objc.dg/call-super-2.m b/gcc/testsuite/objc.dg/call-super-2.m index af01d44..0a3765f 100644 --- a/gcc/testsuite/objc.dg/call-super-2.m +++ b/gcc/testsuite/objc.dg/call-super-2.m @@ -141,6 +141,4 @@ } @end -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/class-protocol-1.m b/gcc/testsuite/objc.dg/class-protocol-1.m index 086201e..59c8f82 100644 --- a/gcc/testsuite/objc.dg/class-protocol-1.m +++ b/gcc/testsuite/objc.dg/class-protocol-1.m @@ -436,6 +436,4 @@ int main () return(0); } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/desig-init-1.m b/gcc/testsuite/objc.dg/desig-init-1.m index 24fe709..e5d5a59 100644 --- a/gcc/testsuite/objc.dg/desig-init-1.m +++ b/gcc/testsuite/objc.dg/desig-init-1.m @@ -44,8 +44,4 @@ int main(void) { return 0; } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ - - +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/exceptions-3.m b/gcc/testsuite/objc.dg/exceptions-3.m index 5548a39..69a6494 100644 --- a/gcc/testsuite/objc.dg/exceptions-3.m +++ b/gcc/testsuite/objc.dg/exceptions-3.m @@ -27,19 +27,19 @@ int test (id object) int dummy = 0; @try { @throw object; } - @catch (int x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (intTypedef x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (intTypedef x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (int *x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int *x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @@ -51,7 +51,7 @@ int test (id object) } @try { @throw object; } - @catch (id <MyProtocol> x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (id <MyProtocol> x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -63,13 +63,13 @@ int test (id object) } @try { @throw object; } - @catch (MyObject <MyProtocol> *x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObject <MyProtocol> *x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @try { @throw object; } - @catch (MyObject x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (MyObject x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { /* { dg-error "conversion to non-scalar type requested" "" { target *-*-* } .-1 } */ dummy++; } @@ -87,7 +87,7 @@ int test (id object) } @try { @throw object; } - @catch (MyObjectTypedef <MyProtocol> *x) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObjectTypedef <MyProtocol> *x) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -99,7 +99,7 @@ int test (id object) } @try { @throw object; } - @catch (Class x) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (Class x) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } diff --git a/gcc/testsuite/objc.dg/exceptions-4.m b/gcc/testsuite/objc.dg/exceptions-4.m index 5db60e3..bbdb741 100644 --- a/gcc/testsuite/objc.dg/exceptions-4.m +++ b/gcc/testsuite/objc.dg/exceptions-4.m @@ -44,7 +44,7 @@ int test (id object) dummy++; } @catch (id <MyProtocol x) /* { dg-error "expected ... before .x." } */ - { /* { dg-error "@catch parameter cannot be protocol-qualified" "" { target *-*-* } .-1 } */ + { /* { dg-error "'@catch' parameter cannot be protocol-qualified" "" { target *-*-* } .-1 } */ dummy++; } @catch MyObject *x /* { dg-error "expected ... before .MyObject." } */ diff --git a/gcc/testsuite/objc.dg/exceptions-5.m b/gcc/testsuite/objc.dg/exceptions-5.m index 402aa11..55ef0f3 100644 --- a/gcc/testsuite/objc.dg/exceptions-5.m +++ b/gcc/testsuite/objc.dg/exceptions-5.m @@ -27,19 +27,19 @@ int test (id object) int dummy = 0; @try { @throw object; } - @catch (int) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (intTypedef) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (intTypedef) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @try { @throw object; } - @catch (int *) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (int *) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } @@ -51,7 +51,7 @@ int test (id object) } @try { @throw object; } - @catch (id <MyProtocol>) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (id <MyProtocol>) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -63,13 +63,13 @@ int test (id object) } @try { @throw object; } - @catch (MyObject <MyProtocol> *) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObject <MyProtocol> *) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @try { @throw object; } - @catch (MyObject) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (MyObject) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { /* { dg-error "conversion to non-scalar type requested" "" { target *-*-* } .-1 } */ dummy++; } @@ -87,7 +87,7 @@ int test (id object) } @try { @throw object; } - @catch (MyObjectTypedef <MyProtocol> *) /* { dg-error "@catch parameter cannot be protocol-qualified" } */ + @catch (MyObjectTypedef <MyProtocol> *) /* { dg-error "'@catch' parameter cannot be protocol-qualified" } */ { dummy++; } @@ -99,7 +99,7 @@ int test (id object) } @try { @throw object; } - @catch (Class) /* { dg-error "@catch parameter is not a known Objective-C class type" } */ + @catch (Class) /* { dg-error "'@catch' parameter is not a known Objective-C class type" } */ { dummy++; } diff --git a/gcc/testsuite/objc.dg/exceptions-6.m b/gcc/testsuite/objc.dg/exceptions-6.m index 74be98d..ae44a88 100644 --- a/gcc/testsuite/objc.dg/exceptions-6.m +++ b/gcc/testsuite/objc.dg/exceptions-6.m @@ -9,7 +9,7 @@ void test (id object) { @throw object; /* Ok */ - @throw; /* { dg-error ".@throw. .rethrow. used outside of a @catch block" } */ + @throw; /* { dg-error ".@throw. .rethrow. used outside of a '@catch' block" } */ @throw (object); /* Ok. */ @throw (id)0 /* { dg-error "expected" } */ } diff --git a/gcc/testsuite/objc.dg/method-19.m b/gcc/testsuite/objc.dg/method-19.m index 8f60511..83280fb 100644 --- a/gcc/testsuite/objc.dg/method-19.m +++ b/gcc/testsuite/objc.dg/method-19.m @@ -8,11 +8,9 @@ @class NotKnown; void foo(NotKnown *n) { - [NotKnown new]; /* { dg-warning ".interface of class .NotKnown. not found" } */ - [n nonexistent_method]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [NotKnown new]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ + [n nonexistent_method]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept '\.\.\.' as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/method-2.m b/gcc/testsuite/objc.dg/method-2.m index b6aa32d..cae2d7f 100644 --- a/gcc/testsuite/objc.dg/method-2.m +++ b/gcc/testsuite/objc.dg/method-2.m @@ -23,9 +23,7 @@ [MyIntermediate rootInstanceMethod]; /* with the same name. */ [self instanceMethod]; /* { dg-warning ".MyDerived. may not respond to .\\+instanceMethod." } */ - /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } .-2 } */ - /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } .-3 } */ + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ [MyDerived instanceMethod]; /* { dg-warning ".MyDerived. may not respond to .\\+instanceMethod." } */ } @end diff --git a/gcc/testsuite/objc.dg/method-5.m b/gcc/testsuite/objc.dg/method-5.m index 8940914..277a7e9 100644 --- a/gcc/testsuite/objc.dg/method-5.m +++ b/gcc/testsuite/objc.dg/method-5.m @@ -11,12 +11,10 @@ void foo(UnderSpecified *u, NotAClass *n) { [n nonexistent_method]; /* { dg-warning "invalid receiver type" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ [NotAClass nonexistent_method]; /* { dg-error ".NotAClass. is not an Objective\\-C class name or alias" } */ - [u nonexistent_method]; /* { dg-warning ".interface of class .UnderSpecified. not found" } */ + [u nonexistent_method]; /* { dg-warning "'.interface' of class .UnderSpecified. not found" } */ /* { dg-warning "no .\\-nonexistent_method. method found" "" { target *-*-* } .-1 } */ - [UnderSpecified nonexistent_method]; /* { dg-warning ".interface of class .UnderSpecified. not found" } */ + [UnderSpecified nonexistent_method]; /* { dg-warning "'.interface' of class .UnderSpecified. not found" } */ /* { dg-warning "no .\\+nonexistent_method. method found" "" { target *-*-* } .-1 } */ } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/method-6.m b/gcc/testsuite/objc.dg/method-6.m index 35676b1..3ff73e0 100644 --- a/gcc/testsuite/objc.dg/method-6.m +++ b/gcc/testsuite/objc.dg/method-6.m @@ -31,9 +31,7 @@ void foo(void) { /* { dg-message "also found .\\+\\(Protocol \\*\\)port." "" { target *-*-* } Derived_port_last } */ [receiver starboard]; /* { dg-warning "no .\\+starboard. method found" } */ - /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } .-2 } */ - /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } .-3 } */ + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ [Class port]; /* { dg-error ".Class. is not an Objective\\-C class name or alias" } */ } diff --git a/gcc/testsuite/objc.dg/method-7.m b/gcc/testsuite/objc.dg/method-7.m index a5957ae..314e8ab 100644 --- a/gcc/testsuite/objc.dg/method-7.m +++ b/gcc/testsuite/objc.dg/method-7.m @@ -18,9 +18,7 @@ id foo(void) { TestsuiteObject *obj = [[TestsuiteObject alloc] init]; id obj2 = obj; [obj setWindow:nil]; /* { dg-warning ".TestsuiteObject. may not respond to .\\-setWindow:." } */ - /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } .-2 } */ - /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } .-3 } */ + /* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ [obj2 setWindow:nil]; /* { dg-warning "multiple methods named .\\-setWindow:. found" } */ /* { dg-message "using .\\-\\(void\\)setWindow:\\(TestsuiteObject \\*\\)wdw." "" { target *-*-* } Class1_setWindow } */ /* { dg-message "also found .\\-\\(void\\)setWindow:\\(Class1 \\*\\)window." "" { target *-*-* } Class2_setWindow } */ diff --git a/gcc/testsuite/objc.dg/method-lookup-1.m b/gcc/testsuite/objc.dg/method-lookup-1.m index 47499c3..e458471 100644 --- a/gcc/testsuite/objc.dg/method-lookup-1.m +++ b/gcc/testsuite/objc.dg/method-lookup-1.m @@ -39,7 +39,7 @@ void test (Class x, Class <MyProtocol> y, id w, id <MyProtocol> z, NotKnown *a, /* If a class is specified by name, the @interface must be available to check what it responds to. */ - [NotKnown classMethod]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [NotKnown classMethod]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* "id w" means that "w" responds to anything, both class and @@ -70,7 +70,7 @@ void test (Class x, Class <MyProtocol> y, id w, id <MyProtocol> z, NotKnown *a, because they expect the compiler to do type-checking; the @interface must be available to do this check, otherwise the compiler does not know what "a" responds to. */ - [a instanceMethod]; /* { dg-warning ".interface of class .NotKnown. not found" } */ + [a instanceMethod]; /* { dg-warning "'.interface' of class .NotKnown. not found" } */ /* But, if you cast it to "id", then you're disabling type-checking and the warnings should go away. */ diff --git a/gcc/testsuite/objc.dg/proto-hier-1.m b/gcc/testsuite/objc.dg/proto-hier-1.m index fbd00f8..0f409fc 100644 --- a/gcc/testsuite/objc.dg/proto-hier-1.m +++ b/gcc/testsuite/objc.dg/proto-hier-1.m @@ -53,6 +53,4 @@ int foo(void) { return 0; } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/proto-lossage-4.m b/gcc/testsuite/objc.dg/proto-lossage-4.m index 182e92d..9d1def5 100644 --- a/gcc/testsuite/objc.dg/proto-lossage-4.m +++ b/gcc/testsuite/objc.dg/proto-lossage-4.m @@ -49,6 +49,4 @@ long foo(void) { return receiver; } -/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 0 } */ -/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 0 } */ -/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 0 } */ +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.. as arguments" "" { target *-*-* } 0 } */ diff --git a/gcc/testsuite/objc.dg/protocol-qualifier-2.m b/gcc/testsuite/objc.dg/protocol-qualifier-2.m index 9fb09b5..33a6969 100644 --- a/gcc/testsuite/objc.dg/protocol-qualifier-2.m +++ b/gcc/testsuite/objc.dg/protocol-qualifier-2.m @@ -25,7 +25,5 @@ void test1 (void) { [object1 method]; /* Ok */ [object2 method]; /* { dg-warning ".MyClass. may not respond to ..method." } */ - /* { dg-warning "without a matching method" "" { target *-*-* } .-1 } */ - /* { dg-warning "will be assumed to return" "" { target *-*-* } .-2 } */ - /* { dg-warning "as arguments" "" { target *-*-* } .-3 } */ } +/* { dg-warning "messages without a matching method signature will be assumed to return .id. and accept .\.\.\.' as arguments" "" { target *-*-* } 0 } */ |