18 lines
363 B
Plaintext
18 lines
363 B
Plaintext
//ww:run-exit 7
|
|
// Migrated from 700_e2e row 56.
|
|
package main;
|
|
type invalid = !i32;
|
|
type overflow = !void;
|
|
type error = !(invalid | overflow);
|
|
fn errcode(e: error) i32 = {
|
|
match (e) {
|
|
case let v: invalid => return v: i32;
|
|
case let v: overflow => return 99;
|
|
};
|
|
return 0;
|
|
};
|
|
fn main() i32 = {
|
|
let e: error = 7: invalid;
|
|
return errcode(e);
|
|
};
|