ref: c5a85da300fa7d5ade3df6b27a2872872379c9b5
dir: /test/matchexhaust.myr/
use std type u = union `Foo (bool, v, bool) `Bar (bool, bool) `Baz bool `Quux ;; type v = union `A `B ;; const main = { match `Quux | `Foo (true, `A, true): | `Foo (true, `A, false): | `Foo (true, `B, true): | `Foo (true, `B, false): | `Foo (false, `A, true): | `Foo (false, `A, false): | `Foo (false, `B, true): | `Foo (false, `B, false): | `Bar (false, false): | `Bar (false, true): | `Bar (true, false): | `Bar (true, true): | `Baz false: | `Baz true: | `Quux: ;; std.put("worked\n") }