1// RUN: %clang_cc1 -fsyntax-only -verify %s 2class C { }; 3 4C c; 5 6void D(int); 7 8class D {}; 9 10void foo() 11{ 12 D(5); 13 class D d; 14} 15 16class D; // expected-note {{previous use is here}} 17 18enum D; // expected-error {{use of 'D' with tag type that does not match previous declaration}} 19 20class A * A; 21 22class A * a2; 23 24void bar() 25{ 26 A = 0; 27} 28 29void C(int); 30 31void bar2() 32{ 33 C(17); 34} 35 36extern int B; 37class B; 38class B {}; 39int B; 40 41enum E { e1_val }; 42E e1; 43 44void E(int); 45 46void bar3() { 47 E(17); 48} 49 50enum E e2; 51 52enum E2 { E2 }; 53