53 lines · cpp
1// RUN: %clang_cc1 -fsyntax-only -verify %s2class 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