Followup question:
Given I have:
type foo = [`A | `B of int | `C of char]
type bar = [`B of int | `C of char| `D]
and a function
let f (x : foo) : bar =
match x with
`A -> `D
|`B _
|`C _ -> (x : bar)
Is there any way to properly coerce this using the restricted variant
information of x? Or do I have to duplicate code and reconstruct x?
--
Seth Fogarty sfogarty@[gmail.com|rice.edu|livejournal]
Neep-neep at large AIM: Sorrath
"I know there are people in this world who do not love their fellow
human beings - and I hate people like that" --Tom Lehrer.