--- /dev/null
+typedef struct {
+ int a, b;
+} Stru1;
+
+typedef struct {
+ double d;
+ Stru1 stru;
+ float c;
+} Stru2;
+
+static const Stru1 k = { 4, 2 };
+static const Stru2 a = { 2.4, k, 0.4f };
--- /dev/null
+static const int l = 5;
+
+struct k {
+ int c, d;
+};
+
+struct S {
+ int a;
+ struct k k;
+};
+
+struct S arr[] = { 1, (struct k) { 4, 5 } };
+
+int main(void)
+{
+ return 0;
+}
};
struct S arr[] = { { 1, 2, { 3, 4 } } };
+
+int main(void)
+{
+ return 0;
+}
--- /dev/null
+static const int l = 5;
+
+struct S {
+ int a, b;
+};
+
+struct S arr[] = { 1, l };
+
+int main(void)
+{
+ return 0;
+}
--- /dev/null
+static const int l = 5;
+
+struct k {
+ int c, d;
+};
+
+struct S {
+ int a;
+ struct k k;
+};
+
+struct S arr[] = { 1, (struct k) { 4, l } };
+
+int main(void)
+{
+ return 0;
+}