1 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++98 -pedantic -Werror %s 2 int a1[] = { 1, 3, 5 }; 3 void f() { 4 int a2[] = { 1, 3, 5 }; 5 } 6 template <typename T> 7 void tf() { 8 T t; 9 // Element type may be dependent 10 T a3[] = { 1, 3, 5 }; 11 // As might be the initializer list, value 12 int a5[] = { sizeof(T) }; 13 // or even type. 14 int a6[] = { t.get() }; 15 } 16 17 // Allowed by GNU extension 18 int a4[] = {}; // expected-error {{zero size arrays}} 19 20 struct Incomplete; // expected-note {{forward declaration of 'Incomplete'}} 21 struct A { 22 Incomplete i; // expected-error {{field has incomplete type 'Incomplete'}} 23 }; 24 A a[] = { 0 }; // PR13971: don't hang. 25