1 /* { dg-do compile } */
2 /* { dg-options "-funit-at-a-time -std=gnu89" } */
3 
f(int i)4 int f(int i)
5 {
6   static int g(); /* { dg-error "invalid storage class" } */
7   static int g() { return i; } /* { dg-error "invalid storage class" } */
8   return g();
9 }
10 
k(int i)11 int k (int i)
12 {
13   static int g (); /* { dg-error "invalid storage class" } */
14   int g () {
15 	return i;
16   }
17 
18   return g ();
19 }
20 
l(int i)21 int l (int i)
22 {
23   auto int g ();
24   static int g () { /* { dg-error "invalid storage class" } */
25     return i;
26   }
27 
28   static int h () { /* { dg-error "invalid storage class" } */
29     return 3;
30   }
31   return g () + h ();
32 }
33 
m(int i)34 int m (int i)
35 {
36   static g ();  /* { dg-error "invalid storage class" } */
37   static g () { return i; } /* { dg-error "invalid storage class" } */
38   return g ();
39 }
40