// PR c++/90996 | |
// { dg-do run { target c++14 } } | |
struct S | |
{ | |
int &&a = 2; | |
int b[1] {a}; | |
}; | |
S c[2][2] {{{5}}}; | |
struct T | |
{ | |
S c[2][2] {{{7}}}; | |
}; | |
T d {}; | |
int | |
main() | |
{ | |
if (++c[0][0].b[0] != 6 | |
|| ++c[0][1].b[0] != 3 | |
|| ++c[1][0].b[0] != 3 | |
|| ++c[1][1].b[0] != 3) | |
__builtin_abort(); | |
auto& e = d.c; | |
if (++e[0][0].b[0] != 8 | |
|| ++e[0][1].b[0] != 3 | |
|| ++e[1][0].b[0] != 3 | |
|| ++e[1][1].b[0] != 3) | |
__builtin_abort(); | |
} |