//ww:run-exit 63 package main; type capture = struct { content: str, start: size, end: size }; type t = struct { pc: size, cap: capture }; fn bump(cp: *capture) void = { cp.end += 100; }; export fn main() i32 = { let ts: []t = []; append(ts, t { pc = 5, cap = capture { content = "abc", start = 11, end = 13 } }); append(ts, t { pc = 6, cap = capture { content = "wy", start = 21, end = 23 } }); let cp: *capture = &ts[1].cap; if (cp.start != 21) { return 1; }; bump(cp); if (ts[1].cap.end != 123) { return 2; }; let pp: *[]t = &ts; let dp: *capture = &(*pp)[0].cap; if (dp.end != 13) { return 3; }; return 63; };