contract C { struct S { u256 x; u256 y; u32 z; u256[3] a1; u256[] a2; } u32 b = 23; S[] s; u32 a = 17; fn f() { s.push(); assert(s[0].x == 0); assert(s[0].y == 0); assert(s[0].z == 0); assert(s[0].a1[0] == 0); assert(s[0].a1[1] == 0); assert(s[0].a1[2] == 0); assert(s[0].a2.length == 0); assert(b == 23); assert(a == 17); } } // ==== // compileViaYul: also // ---- // f() ->