//ww:run-exit 30 package main; type point = struct { a: i64, b: i64 }; fn make(flag: i32) point = { if (flag == 0) { return point { a = 10i64, b = 20i64 }; }; return point { a = 100i64, b = 200i64 }; }; fn sum(p: point, which: i32) i32 = { if (which == 0) { return (p.a + p.b): i32; }; return (p.a - p.b): i32; }; fn main() i32 = { let p = make(0); return sum(p, 0); };