PCH support for InitListExpr, DesignatedInitExpr, and ImplicitValueInitExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69251 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/PCH/exprs.c b/test/PCH/exprs.c
index d3d4b37..e08024b 100644
--- a/test/PCH/exprs.c
+++ b/test/PCH/exprs.c
@@ -64,6 +64,14 @@
// ExtVectorElementExpr
ext_vector_element *double_ptr5 = &floating;
+// InitListExpr
+double get_from_double_array(unsigned Idx) { return double_array[Idx]; }
+
+/// DesignatedInitExpr
+float get_from_designated(unsigned Idx) {
+ return designated_inits[2].y;
+}
+
// TypesCompatibleExpr
types_compatible *int_ptr7 = &integer;
diff --git a/test/PCH/exprs.h b/test/PCH/exprs.h
index a928b9b..43fd895 100644
--- a/test/PCH/exprs.h
+++ b/test/PCH/exprs.h
@@ -61,6 +61,15 @@
extern double2 vec2, vec2b;
typedef typeof(vec2.x) ext_vector_element;
+// InitListExpr
+double double_array[3] = { 1.0, 2.0 };
+
+// DesignatedInitExpr
+struct {
+ int x;
+ float y;
+} designated_inits[3] = { [0].y = 17, [2].x = 12.3, 3.5 };
+
// TypesCompatibleExpr
typedef typeof(__builtin_types_compatible_p(float, double)) types_compatible;