From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4530 invoked by alias); 11 Aug 2016 22:40:45 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 4390 invoked by uid 89); 11 Aug 2016 22:40:44 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.3 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=sk:contain, sk:commuta, sk:reload_, sk:cxx_eva X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 11 Aug 2016 22:40:41 +0000 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 6463C85543 for ; Thu, 11 Aug 2016 22:40:40 +0000 (UTC) Received: from localhost.localdomain (ovpn-116-202.phx2.redhat.com [10.3.116.202]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u7BMedln028414; Thu, 11 Aug 2016 18:40:40 -0400 Subject: Re: [PATCH] Update or add fall through comments in switches To: Marek Polacek , GCC Patches References: <20160811134319.GU7007@redhat.com> From: Jeff Law Message-ID: <5f16aea5-3322-8243-6ad5-c1d58512b82b@redhat.com> Date: Thu, 11 Aug 2016 22:40:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160811134319.GU7007@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2016-08/txt/msg00978.txt.bz2 On 08/11/2016 07:43 AM, Marek Polacek wrote: > This patch either updates fall through comments so that our warning > machinery recognizes them, or annotates code with new FALLTHRU comments > so that intended fall through cases are marked and the compiler wouldn't > warn. > > I'd like to get this in before I post another patches to keep this mess > more manageable. > > Bootstrapped/regtested on x86_64-linux, ok for trunk? > > 2016-08-11 Marek Polacek > > PR c/7652 > gcc/ > * alias.c (find_base_value): Adjust fall through comment. > * cfgexpand.c (expand_debug_expr): Likewise. > * combine.c (find_split_point): Likewise. > (expand_compound_operation): Likewise. Add FALLTHRU. > (make_compound_operation): Adjust fall through comment. > (canon_reg_for_combine): Add FALLTHRU. > (force_to_mode): Adjust fall through comment. > (simplify_shift_const_1): Likewise. > (simplify_comparison): Likewise. > * config/aarch64/aarch64-builtins.c (aarch64_simd_expand_args): Add > FALLTHRU. > * config/aarch64/predicates.md: Likewise. > * config/i386/i386.c (function_arg_advance_32): Likewise. > (ix86_gimplify_va_arg): Likewise. > (print_reg): Likewise. > (ix86_print_operand): Likewise. > (ix86_build_const_vector): Likewise. > (ix86_expand_branch): Likewise. > (ix86_sched_init_global): Adjust fall through comment. > (ix86_expand_args_builtin): Add FALLTHRU. > (ix86_expand_builtin): Likewise. > (ix86_expand_vector_init_one_var): Likewise. > * config/rs6000/rs6000.c (rs6000_emit_vector_compare_inner): Likewise. > (rs6000_adjust_cost): Likewise. > (insn_must_be_first_in_group): Likewise. > * config/rs6000/rs6000.md: Likewise. Adjust fall through comment. > * dbxout.c (dbxout_symbol): Adjust fall through comment. > * df-scan.c (df_uses_record): Likewise. > * dojump.c (do_jump): Add FALLTHRU. > * dwarf2out.c (mem_loc_descriptor): Likewise. Adjust fall through > comment. > (resolve_args_picking_1): Adjust fall through comment. > (loc_list_from_tree_1): Likewise. > * expmed.c (make_tree): Likewise. > * expr.c (expand_expr_real_2): Add FALLTHRU. > (expand_expr_real_1): Likewise. Adjust fall through comment. > * fold-const.c (const_binop): Adjust fall through comment. > (fold_truth_not_expr): Likewise. > (fold_cond_expr_with_comparison): Add FALLTHRU. > (fold_binary_loc): Likewise. > (contains_label_1): Adjust fall through comment. > (multiple_of_p): Likewise. > * gcov-tool.c (process_args): Add FALLTHRU. > * genattrtab.c (check_attr_test): Likewise. > (write_test_expr): Likewise. > * genconfig.c (walk_insn_part): Likewise. > * genpreds.c (validate_exp): Adjust fall through comment. > (needs_variable): Likewise. > * gensupport.c (get_alternatives_number): Add FALLTHRU. > (subst_dup): Likewise. > * gimple-pretty-print.c (dump_gimple_assign): Likewise. > * gimplify.c (gimplify_addr_expr): Adjust fall through comment. > (gimplify_scan_omp_clauses): Add FALLTHRU. > (goa_stabilize_expr): Likewise. > * graphite-isl-ast-to-gimple.c (substitute_ssa_name): Adjust fall > through comment. > * hsa-gen.c (get_address_from_value): Likewise. > * ipa-icf.c (sem_function::hash_stmt): Likewise. > * ira.c (ira_setup_alts): Add FALLTHRU. > * lra-eliminations.c (lra_eliminate_regs_1): Adjust fall through > comment. > * lto-streamer-out.c (lto_output_tree_ref): Add FALLTHRU. > * opts.c (common_handle_option): Likewise. > * read-rtl.c (read_rtx_code): Likewise. > * real.c (round_for_format): Likewise. > * recog.c (asm_operand_ok): Likewise. > * reginfo.c (reg_scan_mark_refs): Adjust fall through comment. > * reload1.c (set_label_offsets): Likewise. > (eliminate_regs_1): Likewise. > (reload_reg_reaches_end_p): Likewise. > * rtlanal.c (commutative_operand_precedence): Add FALLTHRU. > (rtx_cost): Likewise. > * sched-rgn.c (is_exception_free): Likewise. > * simplify-rtx.c (simplify_rtx): Adjust fall through comment. > * stor-layout.c (int_mode_for_mode): Likewise. > * toplev.c (print_to_asm_out_file): Likewise. > (print_to_stderr): Likewise. > * tree-cfg.c (gimple_verify_flow_info): Likewise. > * tree-chrec.c (chrec_fold_plus_1): Add FALLTHRU. > (chrec_fold_multiply): Likewise. > (evolution_function_is_invariant_rec_p): Likewise. > (for_each_scev_op): Likewise. > * tree-data-ref.c (siv_subscript_p): Likewise. > (get_references_in_stmt): Likewise. > * tree.c (find_placeholder_in_expr): Adjust fall through comment. > (substitute_in_expr): Likewise. > (type_cache_hasher::equal): Likewise. > (walk_type_fields): Likewise. > * var-tracking.c (adjust_mems): Add FALLTHRU. > (set_dv_changed): Adjust fall through comment. > * varasm.c (default_function_section): Add FALLTHRU. > gcc/c-family/ > * c-common.c (scalar_to_vector): Adjust fall through comment. > * c-opts.c (c_common_handle_option): Likewise. > * c-pragma.c (handle_pragma_pack): Add FALLTHRU. > * c-pretty-print.c (c_pretty_printer::postfix_expression): Adjust > fall through comment. > * cilk.c (extract_free_variables): Add FALLTHRU. > gcc/c/ > * c-parser.c (c_parser_external_declaration): Add FALLTHRU. > (c_parser_postfix_expression): Likewise. > * c-typeck.c (build_unary_op): Adjust fall through comment. > (c_mark_addressable): Likewise. > gcc/cp/ > * call.c (add_builtin_candidate): Add FALLTHRU. > (build_integral_nontype_arg_conv): Adjust fall through comment. > (build_new_op_1): Add FALLTHRU. > (convert_like_real): Adjust fall through comment. > * class.c (fixed_type_or_null): Likewise. > * constexpr.c (cxx_eval_constant_expression): Likewise. > (potential_constant_expression_1): Likewise. Add FALLTHRU. > * cp-gimplify.c (cp_gimplify_expr): Adjust fall through comment. > (cp_fold): Add FALLTHRU. > * cvt.c (build_expr_type_conversion): Adjust fall through comment. > * cxx-pretty-print.c (pp_cxx_unqualified_id): Add FALLTHRU. > (pp_cxx_qualified_id): Likewise. > (cxx_pretty_printer::constant): Adjust fall through comment. > (cxx_pretty_printer::primary_expression): Add FALLTHRU. > (pp_cxx_pm_expression): Adjust fall through comment. > (cxx_pretty_printer::expression): Add FALLTHRU. > (cxx_pretty_printer::declaration_specifiers): Reformat code. > (pp_cxx_type_specifier_seq): Adjust fall through comment. > (pp_cxx_ptr_operator): Likewise. Add FALLTHRU. > * error.c (dump_type): Adjust fall through comment. > (dump_decl): Likewise. > * mangle.c (write_type): Likewise. > * method.c (synthesized_method_walk): Add FALLTHRU. > * name-lookup.c (arg_assoc_type): Likewise. > * parser.c (cp_lexer_print_token): Adjust fall through comment. > (cp_parser_primary_expression): Add FALLTHRU. > (cp_parser_operator): Likewise. > * pt.c (find_parameter_packs_r): Likewise. > (tsubst_aggr_type): Adjust fall through comment. > * semantics.c (finish_omp_clauses): Add FALLTHRU. > * tree.c (lvalue_kind): Likewise. > gcc/fortran/ > * decl.c (match_attr_spec): Add FALLTHRU. > * primary.c (match_arg_list_function): Likewise. > * resolve.c (resolve_operator): Adjust fall through comment. > (fixup_charlen): Add FALLTHRU. > (resolve_allocate_expr): Adjust fall through comment. > * trans-array.c (gfc_conv_ss_startstride): Add FALLTHRU. > * trans-intrinsic.c (gfc_conv_intrinsic_len): Adjust fall through > comment. > gcc/java/ > * expr.c (java_truthvalue_conversion): Adjust fall through comment. > * jcf-io.c (verify_constant_pool): Likewise. > * typeck.c (promote_type): Likewise. > gcc/objc/ > * objc-encoding.c (encode_type): Add FALLTHRU. > libcpp/ > * lex.c (search_line_fast): Add FALLTHRU. > (_cpp_lex_direct): Likewise. > (cpp_token_val_index): Adjust fall through comment. > * macro.c (parse_params): Add FALLTHRU. > * pch.c (count_defs): Adjust fall through comment. > (write_defs): Likewise. > libiberty/ > * cp-demangle.c (d_print_mod): Add FALLTHRU. I just spot-checked, but given you're just adding/updating comments, that seems reasonable. Ok for the trunk. jeff