1 // PR c++/77553 2 // { dg-do compile { target c++14 } } 3 4 constexpr void bar(int * x)5bar (int *x) 6 { 7 int i = 0; 8 x[i++] = 1; 9 x[3] = i; 10 } 11 12 constexpr int foo()13foo () 14 { 15 int a[] = { 0, 0, 0, 0 }; 16 bar (a); 17 18 return a[0] + 8 * a[1] + 64 * a[2] + 512 * a[3]; 19 } 20 21 constexpr int b = foo (); 22 23 int main()24main () 25 { 26 static_assert (b == 513, ""); 27 if (foo () != 513) 28 __builtin_abort (); 29 } 30