//ww:run-exit 5 package main; type pair = struct { x: i64, y: i64, z: i64 }; type tag = (str | pair); type holder = struct { e: tag, mark: i32 }; fn main() i32 = { let h: holder; h.mark = 99; h.e = ("hello": tag); match (h.e) { case let s: str => return s.len: i32; case let v: pair => return -1; }; };