| // RUN: %clang_cc1 -verify %s |
| |
| struct X { |
| int a; // expected-note {{previous}} |
| void b(); // expected-note {{previous}} |
| struct c; // expected-note {{previous}} |
| typedef int d; // expected-note {{previous}} |
| |
| union { |
| int a; // expected-error {{member of anonymous union redeclares}} |
| int b; // expected-error {{member of anonymous union redeclares}} |
| int c; // expected-error {{member of anonymous union redeclares}} |
| int d; // expected-error {{member of anonymous union redeclares}} |
| int e; // expected-note {{previous}} |
| int f; // expected-note {{previous}} |
| int g; // expected-note {{previous}} |
| int h; // expected-note {{previous}} |
| }; |
| |
| int e; // expected-error {{duplicate member}} |
| void f(); // expected-error {{redefinition}} |
| struct g; // expected-error {{redefinition}} |
| typedef int h; // expected-error {{redefinition}} |
| }; |