summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/test/PCH/struct.c10
-rw-r--r--clang/test/PCH/struct.h4
2 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/PCH/struct.c b/clang/test/PCH/struct.c
index c81ec469c58..220f0794656 100644
--- a/clang/test/PCH/struct.c
+++ b/clang/test/PCH/struct.c
@@ -22,3 +22,13 @@ struct Fun2 {
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/clang/test/PCH/struct.h b/clang/test/PCH/struct.h
index e3d85abaaeb..6c256221fa0 100644
--- a/clang/test/PCH/struct.h
+++ b/clang/test/PCH/struct.h
@@ -23,3 +23,7 @@ struct Fun {
struct Fun2;
struct Fun2 *fun2;
+
+struct S {
+ struct Nested { int x, y; } nest;
+};
OpenPOWER on IntegriCloud