1 // P0614R1 2 // { dg-do run } 3 // { dg-options "-std=c++2a" } 4 5 struct A { int i; long long j; } a[64]; 6 7 int main()8main () 9 { 10 A b = { 1, 2 }; 11 for (auto & [ u, v ] : a) 12 { 13 u = 2; 14 v = 3; 15 } 16 17 for (auto [x, y] = b; auto [ u, v ] : a) 18 if (y + u != x + v) 19 __builtin_abort (); 20 21 for (auto [x, y] = b; auto & [ u, v ] : a) 22 if (y + u != x + v) 23 __builtin_abort (); 24 } 25