type option<`a> = None | Some (`a)

let x : int = match (Some<int>(42)) { Some<int>((_ : int)) | None<string> -> 0 }