Forbid declarations after label, case and default statements.
[cparser] / parsetest / whiles.c
1 int a,b,c;
2
3 int f1(void) {
4         while(a < 10)
5                 return 0;
6         return 42;
7 }
8
9 int f2(void) {
10         while(0) {
11                 return 42;
12         }
13         return 0;
14 }
15
16 int f3(void) {
17         while(f2());
18         return 0;
19 }
20
21 int f5(void) {
22         while(0);
23         return 0;
24 }
25
26 int f4(void) {
27         goto label;
28
29         while(0) {
30 label:
31                 return 0;
32         }
33         return 42;
34 }
35
36 int f6(void) {
37         return 0;
38
39         while(0);
40 }
41
42 int f7(void) {
43         while(1) {
44                 return 0;
45         }
46 }
47
48 int endless(void) {
49         while(1);
50 }
51
52 int main(void) {
53         return f1() + f2() + f3() + f4() + f5() * f6() + f7();
54 }