• simonpj@microsoft.com's avatar
    Fix Trac #959: a long-standing bug in instantiating otherwise-unbound type variables · 388e3356
    simonpj@microsoft.com authored
       DO NOT MERGE TO GHC 6.12 branch
       (Reason: interface file format change.)
    The typechecker needs to instantiate otherwise-unconstraint type variables to
    an appropriately-kinded constant type, but we didn't have a supply of 
    arbitrarily-kinded tycons for this purpose.  Now we do.
    The details are described in Note [Any types] in TysPrim.  The
    fundamental change is that there is a new sort of TyCon, namely
    AnyTyCon, defined in TyCon.
    Ter's a small change to interface-file binary format, because the new
    AnyTyCons have to be serialised.
    I tided up the handling of uniques a bit too, so that mkUnique is not
    exported, so that we can see all the different name spaces in one module.
VectUtils.hs 14.5 KB