20 lines
386 B
Plaintext
20 lines
386 B
Plaintext
//ww:run-exit 4
|
|
// Migrated from 700_e2e row 60.
|
|
package main;
|
|
fn try1(n: i64) (i64 | str) = {
|
|
if (n < 0) { return "fail"; };
|
|
return n;
|
|
};
|
|
fn try2(n: i64) (i64 | str) = {
|
|
let v: i64 = try1(n)?;
|
|
return v + 100;
|
|
};
|
|
fn main() i32 = {
|
|
let r: (i64 | str) = try2(-1);
|
|
match (r) {
|
|
case let n: i64 => return n: i32;
|
|
case let s: str => return s.len: i32;
|
|
};
|
|
return 0;
|
|
};
|