Complete the evidence generation for GADTs
[ghc-hetmet.git] / compiler / typecheck / TcEnv.lhs
index 936ec5b..1d093e2 100644 (file)
@@ -45,19 +45,19 @@ module TcEnv(
 
 import HsSyn           ( LRuleDecl, LHsBinds, LSig, 
                          LHsTyVarBndr, HsTyVarBndr(..), pprLHsBinds,
-                         ExprCoFn(..), idCoercion, (<.>) )
+                         idCoercion, (<.>) )
 import TcIface         ( tcImportDecl )
 import IfaceEnv                ( newGlobalBinder )
 import TcRnMonad
 import TcMType         ( zonkTcType, zonkTcTyVarsAndFV )
-import TcType          ( Type, TcKind, TcTyVar, TcTyVarSet, TcType, TvSubst,
-                         substTy, substTyVar, tyVarsOfType, tcTyVarsOfTypes, mkTyConApp,
+import TcType          ( Type, TcKind, TcTyVar, TcTyVarSet, TcType, 
+                         substTy, tyVarsOfType, tcTyVarsOfTypes, mkTyConApp,
                          getDFunTyKey, tcTyConAppTyCon, tcGetTyVar, mkTyVarTy,
                          tidyOpenType, isRefineableTy
                        )
 import TcGadt          ( Refinement, refineType )
 import qualified Type  ( getTyVar_maybe )
-import Id              ( idName, isLocalId, setIdType )
+import Id              ( idName, isLocalId )
 import Var             ( TyVar, Id, idType, tyVarName )
 import VarSet
 import VarEnv
@@ -566,7 +566,7 @@ data InstBindings
                                -- specialised instances
 
   | NewTypeDerived             
-        (Maybe TyCon)           -- maybe a coercion for the newtype
+        TyCon                   -- tycon for the newtype
                                 -- Used for deriving instances of newtypes, where the
        [Type]                  -- witness dictionary is identical to the argument 
                                -- dictionary.  Hence no bindings, no pragmas