Viewing file: flexary40.C (1.48 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// PR c++/102295 // { dg-do run } // { dg-options "" }
struct A { int a; int b[]; }; struct B { B (); int k; }; struct C { int l; B m[]; };
int x[4]; A c = { 42, { ++x[0], ++x[1], ++x[2], ++x[3] } }; A d = { 43, { 0, ++x[0], ++x[1], ++x[2], ++x[3] } }; A e = { 44, { ++x[0], ++x[1], ++x[2], 17 } }; A f = { 45 }; C n = { 50, { B (), B () } }; C o = { 51, {} };
int main () { static A g = { 46, { ++x[0], ++x[1], ++x[2], ++x[3] } }; static A h = { 47, { 0, ++x[0], ++x[1], ++x[2], ++x[3] } }; static A i = { 48, { ++x[0], ++x[1], ++x[2], 18 } }; static A j = { 49 }; if (c.a != 42 || c.b[0] != 1 || c.b[1] != 1 || c.b[2] != 1 || c.b[3] != 1) __builtin_abort (); if (d.a != 43 || d.b[0] != 0 || d.b[1] != 2 || d.b[2] != 2 || d.b[3] != 2 || d.b[4] != 2) __builtin_abort (); if (e.a != 44 || e.b[0] != 3 || e.b[1] != 3 || e.b[2] != 3 || e.b[3] != 17) __builtin_abort (); if (f.a != 45) __builtin_abort (); if (g.a != 46 || g.b[0] != 4 || g.b[1] != 4 || g.b[2] != 4 || g.b[3] != 3) __builtin_abort (); if (h.a != 47 || h.b[0] != 0 || h.b[1] != 5 || h.b[2] != 5 || h.b[3] != 5 || h.b[4] != 4) __builtin_abort (); if (i.a != 48 || i.b[0] != 6 || i.b[1] != 6 || i.b[2] != 6 || i.b[3] != 18) __builtin_abort (); if (j.a != 49) __builtin_abort (); if (n.l != 50 || n.m[0].k != 42 || n.m[1].k != 42) __builtin_abort (); if (o.l != 51) __builtin_abort (); if (x[0] != 6 || x[1] != 6 || x[2] != 6 || x[3] != 4) __builtin_abort (); }
B::B () : k (42) { }
|