1 // RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -o - %s | FileCheck %s 2 // RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm-only -verify -DFAIL1 %s 3 // RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm-only -verify -DFAIL2 %s 4 5 struct A { int x; int y[]; }; 6 A a = { 1, 7, 11 }; 7 // CHECK: @a ={{.*}} global { i32, [2 x i32] } { i32 1, [2 x i32] [i32 7, i32 11] } 8 9 A b = { 1, { 13, 15 } }; 10 // CHECK: @b ={{.*}} global { i32, [2 x i32] } { i32 1, [2 x i32] [i32 13, i32 15] } 11 12 int f(); 13 #ifdef FAIL1 14 A c = { f(), { f(), f() } }; // expected-error {{cannot compile this flexible array initializer yet}} 15 #endif 16 #ifdef FAIL2 17 void g() { 18 static A d = { f(), { f(), f() } }; // expected-error {{cannot compile this flexible array initializer yet}} 19 } 20 #endif 21