1*67e74705SXin Li // RUN: %clang_cc1 -std=c++11 -fsyntax-only %s 2*67e74705SXin Li // PR13197 3*67e74705SXin Li 4*67e74705SXin Li struct type1 5*67e74705SXin Li { type1type16*67e74705SXin Li constexpr type1(int a0) : my_data{a0} {} 7*67e74705SXin Li int my_data[1]; 8*67e74705SXin Li }; 9*67e74705SXin Li 10*67e74705SXin Li struct type2 11*67e74705SXin Li { 12*67e74705SXin Li typedef type1 T; type2type213*67e74705SXin Li constexpr type2(T a00, T a01, T a02, T a03, T a04, T a05, T a06, T a07, T a08, T a09, 14*67e74705SXin Li T a10, T a11, T a12, T a13, T a14, T a15, T a16, T a17, T a18, T a19, 15*67e74705SXin Li T a20, T a21, T a22) 16*67e74705SXin Li : my_data{a00, a01, a02, a03, a04, a05, a06, a07, a08, a09, 17*67e74705SXin Li a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, 18*67e74705SXin Li a20, a21, a22} 19*67e74705SXin Li {} 20*67e74705SXin Li type1 my_data[23]; 21*67e74705SXin Li }; 22*67e74705SXin Li 23*67e74705SXin Li struct type3 24*67e74705SXin Li { type3type325*67e74705SXin Li constexpr type3(type2 a0, type2 a1) : my_data{a0, a1} {} 26*67e74705SXin Li type2 my_data[2]; 27*67e74705SXin Li }; 28*67e74705SXin Li 29*67e74705SXin Li constexpr type3 g 30*67e74705SXin Li { 31*67e74705SXin Li { 32*67e74705SXin Li {0},{0},{0},{0},{0},{0},{0},{0},{0},{0}, 33*67e74705SXin Li {0},{0},{0},{0},{0},{0},{0},{0},{0},{0}, 34*67e74705SXin Li {0},{0},{0} 35*67e74705SXin Li }, 36*67e74705SXin Li { 37*67e74705SXin Li {0},{0},{0},{0},{0},{0},{0},{0},{0},{0}, 38*67e74705SXin Li {0},{0},{0},{0},{0},{0},{0},{0},{0},{0}, 39*67e74705SXin Li {0},{0},{0} 40*67e74705SXin Li } 41*67e74705SXin Li }; 42*67e74705SXin Li 43