blob: f3ec79f975663de511ad4d799f16ced47a66d590 [file] [log] [blame]
/* PR c/7652 */
/* { dg-do compile } */
/* { dg-options "-Wimplicit-fallthrough" } */
/* As per <http://security.coverity.com/blog/2013/Sep/gimme-a-break.html>, don't
warn for terminated branches (fall through to break / end of the switch). */
extern void bar (int);
void
f (int i)
{
switch (i)
{
case 1:
bar (1);
default:
return;
}
switch (i)
{
case 1:
bar (1);
default:
goto X;
}
X:
switch (i)
{
case 1:
bar (1);
default:
break;
}
switch (i)
{
case 1:
bar (1);
case 2:
case 3:
default:
break;
}
switch (i)
{
case 1:
bar (1);
default:;
}
switch (i)
{
case 1:
bar (1);
case 2:
case 3:
default:;
}
}