/* Test for labels in statement expressions: bugs 772 and 17913. | |
switch statements must not jump into statement expressions. */ | |
/* Origin: Joseph Myers <joseph@codesourcery.com> */ | |
/* { dg-do compile } */ | |
/* { dg-options "" } */ | |
void | |
f (int a) | |
{ | |
switch (a) /* { dg-message "here" } */ | |
{ | |
case 0: | |
case 1: | |
({ | |
case 2: /* { dg-error "switch jumps into statement expression" } */ | |
default: /* { dg-error "switch jumps into statement expression" } */ | |
switch (a) | |
{ | |
case 3: | |
default: | |
; | |
} | |
0; | |
}); | |
} | |
} |