1 // { dg-do run { target c++11 } }
4 typedef int V __attribute__((vector_size (4 * sizeof (int))));
5 V a = (V) { 1, 2, 3, 4 };
6 __complex__ double b = 5.0 + 6.0i;
7 __complex__ int c = 7 + 8i;
12 auto & [ d, e, f, g ] = a; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
13 auto [ h, i, j, k ] = a; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
14 auto [ l, m ] = b; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
15 auto & [ n, o ] = b; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
16 auto & [ p, q ] = c; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
17 auto [ r, s ] = c; // { dg-warning "structured bindings only available with" "" { target c++14_down } }
34 if (d != 11 || &d != &a[0]
35 || e != 13 || &e != &a[1]
36 || f != 15 || &f != &a[2]
37 || g != 17 || &g != &a[3]
38 || h != 15 || &h == &a[0]
39 || i != 17 || &i == &a[1]
40 || j != 19 || &j == &a[2]
41 || k != 21 || &k == &a[3]
42 || l != 10.0 || &l == &__real__ b
43 || m != 18.0 || &m == &__imag__ b
44 || n != 15.0 || &n != &__real__ b
45 || o != 12.0 || &o != &__imag__ b
46 || p != 25 || &p != &__real__ c
47 || q != 27 || &q != &__imag__ c
48 || r != 29 || &r == &__real__ c
49 || s != 31 || &s == &__imag__ c
50 || a[0] != 11 || a[1] != 13 || a[2] != 15 || a[3] != 17