1 // PR c++/48911
2 // { dg-do compile }
3 // { dg-options "-std=c++0x" }
4 
5 #define SA(X) static_assert((X),#X)
6 
7 struct A
8 {
AA9   constexpr A () : a (6) {}
10   int a;
11 };
12 
13 int
main()14 main ()
15 {
16   constexpr int a[2] = { 42 };
17   constexpr int i = a[1];
18   SA(i==0);
19   constexpr int b[1] = { };
20   constexpr int j = b[0];
21   SA(j==0);
22   constexpr char c[2] = "a";
23   constexpr char k = c[1];
24   SA(k==0);
25   constexpr char d[2] = "";
26   constexpr char l = d[1];
27   SA(l==0);
28   constexpr wchar_t e[2] = L"a";
29   constexpr wchar_t m = e[1];
30   SA(m==0);
31   constexpr wchar_t f[2] = L"";
32   constexpr wchar_t n = f[1];
33   SA(n==0);
34   constexpr A g[2] = { A () };
35   constexpr A o = g[0];
36   SA(o.a == 6);
37   constexpr A p = g[1];
38   SA(p.a == 6);
39 }
40