//ww:error "over-cap (sret) aggregate field receive" // #11c/#234 tripwire: an OVER-cap (>24B, sret-returning) CALL into an aggregate // field of an indexed element. The result is written via a dest pointer, not the // AX/DX/CX cursor, so the in-cap materialise cannot handle it -> both stages // LOUD-STOP until the const-idx sret-into-field path is wired (task #8, rule 7). // SUCCESS = the over-cap stop regressed to a 1-word silent drop (cs!=ww). package main; type big = struct { a:i64, b:i64, c:i64, d:i64 }; type s = struct { f: big, g: i64 }; fn mk() big = { return big{a=1i64,b=2i64,c=3i64,d=4i64}; }; export fn main() i32 = { let arr: [2]s; arr[1].f = mk(); return 0; };