re PR c/7652 (-Wswitch-break : Warn if a switch case falls through)

PR c/7652
gcc/cp/
	* call.c (add_builtin_candidate): Add gcc_fallthrough.
	* cxx-pretty-print.c (pp_cxx_unqualified_id): Likewise.
	* parser.c (cp_parser_skip_to_end_of_statement): Likewise.
	(cp_parser_cache_defarg): Likewise.
libcpp/
	* pch.c (write_macdef): Add CPP_FALLTHRU.

From-SVN: r239566
This commit is contained in:
Marek Polacek 2016-08-18 10:28:03 +00:00 committed by Marek Polacek
parent f9d97e407f
commit 9c62c87358
6 changed files with 23 additions and 0 deletions

View file

@ -1,3 +1,11 @@
2016-08-18 Marek Polacek <polacek@redhat.com>
PR c/7652
* call.c (add_builtin_candidate): Add gcc_fallthrough.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Likewise.
* parser.c (cp_parser_skip_to_end_of_statement): Likewise.
(cp_parser_cache_defarg): Likewise.
2016-08-12 Marek Polacek <polacek@redhat.com>
PR c/7652

View file

@ -2544,6 +2544,8 @@ add_builtin_candidate (struct z_candidate **candidates, enum tree_code code,
type2 = ptrdiff_type_node;
break;
}
/* XXX Really fallthru? */
/* FALLTHRU */
case MULT_EXPR:
case TRUNC_DIV_EXPR:
if (ARITHMETIC_TYPE_P (type1) && ARITHMETIC_TYPE_P (type2))

View file

@ -142,6 +142,8 @@ pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t)
case OVERLOAD:
t = OVL_CURRENT (t);
/* XXX Really fallthru? */
/* FALLTHRU */
case VAR_DECL:
case PARM_DECL:
case CONST_DECL:

View file

@ -3490,6 +3490,8 @@ cp_parser_skip_to_end_of_statement (cp_parser* parser)
cp_lexer_consume_token (parser->lexer);
return;
}
/* XXX Really fallthru? */
/* FALLTHRU */
case CPP_OPEN_BRACE:
++nesting_depth;
@ -27669,6 +27671,8 @@ cp_parser_cache_defarg (cp_parser *parser, bool nsdmi)
parser->in_template_argument_list_p = saved_italp;
break;
}
/* XXX Really fallthru? */
/* FALLTHRU */
case CPP_CLOSE_PAREN:
case CPP_ELLIPSIS:
/* If we run into a non-nested `;', `}', or `]',

View file

@ -1,3 +1,8 @@
2016-08-18 Marek Polacek <polacek@redhat.com>
PR c/7652
* pch.c (write_macdef): Add CPP_FALLTHRU.
2016-08-12 Marek Polacek <polacek@redhat.com>
PR c/7652

View file

@ -55,6 +55,8 @@ write_macdef (cpp_reader *pfile, cpp_hashnode *hn, void *file_p)
case NT_VOID:
if (! (hn->flags & NODE_POISONED))
return 1;
/* XXX Really fallthru? */
/* FALLTHRU */
case NT_MACRO:
if ((hn->flags & NODE_BUILTIN)