1 // RUN: %clang_cc1 -verify %s 2 3 struct X { 4 int a; // expected-note {{previous}} 5 void b(); // expected-note {{previous}} 6 struct c; // expected-note {{previous}} 7 typedef int d; // expected-note {{previous}} 8 9 union { 10 int a; // expected-error {{member of anonymous union redeclares}} 11 int b; // expected-error {{member of anonymous union redeclares}} 12 int c; // expected-error {{member of anonymous union redeclares}} 13 int d; // expected-error {{member of anonymous union redeclares}} 14 int e; // expected-note {{previous}} 15 int f; // expected-note {{previous}} 16 int g; // expected-note {{previous}} 17 int h; // expected-note {{previous}} 18 }; 19 20 int e; // expected-error {{duplicate member}} 21 void f(); // expected-error {{redefinition}} 22 struct g; // expected-error {{redefinition}} 23 typedef int h; // expected-error {{redefinition}} 24 }; 25