1 /* PR c/68320 */
2 /* { dg-do compile } */
3 /* { dg-options "" } */
4
5 void
fn1(void)6 fn1 (void)
7 {
8 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
9 if (1)
10 ;
11 T x; /* { dg-error "unknown type name" } */
12 }
13
14 void
fn2(int i)15 fn2 (int i)
16 {
17 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
18 if (1)
19 i = 5;
20 T x; /* { dg-error "unknown type name" } */
21 }
22
23 void
fn3(void)24 fn3 (void)
25 {
26 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
27 if (1)
28 {
29 }
30 T *x; /* { dg-error "unknown type name" } */
31 }
32
33 void
fn4(void)34 fn4 (void)
35 {
36 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
37 if (1)
38 ;
39 T, T; /* { dg-error "undeclared" } */
40 }
41
42 void
fn5(void)43 fn5 (void)
44 {
45 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
46 if (1)
47 ;
48 T = 10; /* { dg-error "undeclared" } */
49 }
50
51 void
fn6(void)52 fn6 (void)
53 {
54 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
55 if (1)
56 ;
57 T[0]; /* { dg-error "undeclared" } */
58 }
59
60 void
fn7(void)61 fn7 (void)
62 {
63 for (typedef int T;;) /* { dg-error "declaration of non-variable" } */
64 if (1)
65 ;
66 T (); /* { dg-warning "implicit declaration" } */
67 }
68