36 lines
834 B
C
36 lines
834 B
C
// RUN: %clang_cc1 %s -include %s
|
|
// RUN: %clang_cc1 %s -emit-pch -o %t.pch
|
|
// RUN: %clang_cc1 %s -include-pch %t.pch
|
|
|
|
// rdar://12239321 Make sure we don't emit a bogus
|
|
// error: field designator 'e' does not refer to a non-static data member
|
|
|
|
#ifndef HEADER
|
|
#define HEADER
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
struct U {
|
|
union {
|
|
struct {
|
|
int e;
|
|
int f;
|
|
};
|
|
|
|
int a;
|
|
};
|
|
};
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
#else
|
|
#if !defined(HEADER)
|
|
# error Header inclusion order messed up
|
|
#endif
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
void bar() {
|
|
static const struct U plan = { .e = 1 };
|
|
}
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
#endif
|