1// This actually isn't allowed in C99, but sparse and gcc will take it: 2enum Foo; 3 4static void 5f (void) 6{ 7 enum Foo *pefoo; // Pointer to incomplete type 8 struct Foo; // Forward declaration 9 struct Foo *psfoo; // Pointer to incomplete type 10 { 11 struct Foo { int foo; }; // Local definition. 12 struct Foo foo; // variable declaration. 13 foo.foo = 1; 14 } 15} 16 17enum Foo { FOO }; 18/* 19 * check-name: struct namespaces #1 20 */ 21