GHC 6.6 GADT type unification vs GHC 6.8
dagit at codersbase.com
Tue Jul 29 10:14:09 EDT 2008
On Tue, Jul 29, 2008 at 1:07 AM, Simon Peyton-Jones
<simonpj at microsoft.com>wrote:
> GHC 6.6 was a bit more generous than GHC 6.8, but erroneously so.
> Specifically, GHC 6.8 and all subsequent versions require that when you
> pattern match on a value of GADT type,
> · the type of the scrutinee
> · the type of the result of the case
> · the types of any free variables used inside the case
> are all completely known ("rigid" in GHC's terminology) at the case
Thanks, this makes sense and helps. Is this described in the wobbly types
paper, or is paper covering a different topics? I would like to have a
> The easiest way to make a variable have a rigid type is to give it a type
> I don't expect to revert to GHC 6.6's behaviour because I don't know how to
> do (robust, complete) type inference for that.
In that case, good thing I finally figured out what changes to make to darcs
so that our type witness code compiles in both 6.6 and 6.8. My changes
match what you describe.
> I'll add these remarks to the user manual.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Glasgow-haskell-users