ref: aee3a905c030959ffcf3b2cc9e2b1b9ba83e1f7d
dir: /test/matchunion_sl.myr/
use std
/* checks pattern matching on unions with arguments.
exits with 42. */
type u = union
`Int int
`Str byte[:]
`Nil
;;
const main = {
var v
v = `Str "foo"
match v
| `Int 127: std.exit(42)
| `Str s: std.put("{}\n", s)
| `Nil:
| _: std.die("Impossible match failure\n")
;;
}