1// RUN: %clang_cc1 -fsyntax-only -verify %s
2struct X { // expected-note{{previous definition is here}}
3  struct X { } x; // expected-error{{nested redefinition of 'X'}}
4};
5
6struct Y { };
7void f(void) {
8  struct Y { }; // okay: this is a different Y
9}
10
11struct T;
12struct Z {
13  struct T { int x; } t;
14  struct U { int x; } u;
15};
16
17void f2(void) {
18  struct T t;
19  struct U u;
20}
21
22
23