//ww:run-exit 99 // Migrated from 700_e2e row 49. package main; fn try1(n: i64) (i64 | i32) = { if (n < 0) { return 99: i32; }; return n; }; fn try2(n: i64) (i64 | i32) = { let v: i64 = try1(n)?; return v + 100; }; fn main() i32 = { let r: (i64 | i32) = try2(-1); let s: i64 = 0; match (r) { case let v: i64 => s = v; case let e: i32 => s = e: i64; }; return s: i32; };