Add a tricky, tricky test case for PCH that we currently don't handle. Committed with a FIXME so that we don't forget it
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69052 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/PCH/struct.c b/test/PCH/struct.c
index c81ec46..220f079 100644
--- a/test/PCH/struct.c
+++ b/test/PCH/struct.c
@@ -22,3 +22,13 @@
int get_very_fun() {
return fun2->very_fun;
}
+
+/* FIXME: DeclContexts aren't yet able to find "struct Nested" nested
+ within "struct S", so causing the following to fail. When not using
+ PCH, this works because Sema puts the nested struct onto the
+ declaration chain for its identifier, where C/Objective-C always
+ look. To fix the problem, we either need to give DeclContexts a way
+ to keep track of declarations that are visible without having to
+ build a full lookup table, or we need PCH files to read the
+ declaration chains. */
+/* struct Nested nested = { 1, 2 }; */
diff --git a/test/PCH/struct.h b/test/PCH/struct.h
index e3d85ab..6c25622 100644
--- a/test/PCH/struct.h
+++ b/test/PCH/struct.h
@@ -23,3 +23,7 @@
struct Fun2;
struct Fun2 *fun2;
+
+struct S {
+ struct Nested { int x, y; } nest;
+};