contract C { struct S { u256 a; u64 b; u256 c; } u256[137] unused; S[] s; fn f(S[] c) -> (u256, u64, u256) { s = c; return (s[2].a, s[1].b, s[0].c); } } // ==== // compileViaYul: true // ---- // f((u256,u64,u256)[]): 0x20, 3, 0, 0, 12, 0, 11, 0, 10, 0, 0 -> 10, 11, 12 // gas irOptimized: 121019