//ww:run-exit 0 // Run leg of the retired 926_tagged_sret_run.c row boundary_s3_register. package main; type s3 = struct { a: i64, b: i64, c: i64 }; fn mk(ok: bool) (s3 | bool) = { if (!ok) { return false; }; return s3 { a = 7, b = 8, c = 9 }; }; export fn main() i32 = { match (mk(true)) { case let v: s3 => { if (v.c != 9) { return 1; }; }; case let b: bool => return 2; }; match (mk(false)) { case let v: s3 => return 3; case let b: bool => { if (b) { return 4; }; }; }; return 0; };