X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Ftypecheck%2FTcType.lhs;h=7f4e0df433b3233743549a18ceaa4a21c678d135;hb=9e93335020e64a811dbbb223e1727c76933a93ae;hp=4d6d761ab3b55ed8fe0b27b9865c21ebfa0689e4;hpb=51f8f0f50c1a709ed898d149f458f781279fa4c6;p=ghc-hetmet.git diff --git a/ghc/compiler/typecheck/TcType.lhs b/ghc/compiler/typecheck/TcType.lhs index 4d6d761..7f4e0df 100644 --- a/ghc/compiler/typecheck/TcType.lhs +++ b/ghc/compiler/typecheck/TcType.lhs @@ -89,7 +89,7 @@ module TcType ( isPrimitiveType, tidyTopType, tidyType, tidyPred, tidyTypes, tidyFreeTyVars, tidyOpenType, tidyOpenTypes, - tidyTyVar, tidyTyVars, + tidyTyVarBndr, tidyOpenTyVar, tidyOpenTyVars, typeKind, eqKind, eqUsage, tyVarsOfType, tyVarsOfTypes, tyVarsOfPred, tyVarsOfTheta @@ -115,7 +115,7 @@ import Type ( -- Re-exports isUnLiftedType, isUnboxedTupleType, isPrimitiveType, splitNewType_maybe, splitTyConApp_maybe, tidyTopType, tidyType, tidyPred, tidyTypes, tidyFreeTyVars, tidyOpenType, tidyOpenTypes, - tidyTyVar, tidyTyVars, eqKind, eqUsage, + tidyTyVarBndr, tidyOpenTyVar, tidyOpenTyVars, eqKind, eqUsage, hasMoreBoxityInfo, liftedBoxity, superBoxity, typeKind, superKind ) import TyCon ( TyCon, isUnLiftedTyCon ) @@ -130,13 +130,12 @@ import CmdLineOpts ( DynFlags, DynFlag( Opt_GlasgowExts ), dopt ) import Name ( Name, NamedThing(..), mkLocalName ) import OccName ( OccName, mkDictOcc ) import NameSet -import PrelNames -- Lots (e.g. in isFFIArgumentTy +import PrelNames -- Lots (e.g. in isFFIArgumentTy) import TysWiredIn ( ptrTyCon, funPtrTyCon, addrTyCon, unitTyCon ) -import Unique ( Unique, Uniquable(..), mkTupleTyConUnique ) +import Unique ( Unique, Uniquable(..) ) import SrcLoc ( SrcLoc ) -import Util ( cmpList, thenCmp ) +import Util ( cmpList, thenCmp, equalLength ) import Maybes ( maybeToBool, expectJust ) -import BasicTypes ( Boxity(..) ) import Outputable \end{code} @@ -559,7 +558,7 @@ isIntegerTy = is_tc integerTyConKey isIntTy = is_tc intTyConKey isAddrTy = is_tc addrTyConKey isBoolTy = is_tc boolTyConKey -isUnitTy = is_tc (mkTupleTyConUnique Boxed 0) +isUnitTy = is_tc unitTyConKey is_tc :: Unique -> Type -> Bool -- Newtypes are opaque to this @@ -858,7 +857,7 @@ uTysX (FunTy fun1 arg1) (FunTy fun2 arg2) k subst -- Type constructors must match uTysX (TyConApp con1 tys1) (TyConApp con2 tys2) k subst - | (con1 == con2 && length tys1 == length tys2) + | (con1 == con2 && equalLength tys1 tys2) = uTyListsX tys1 tys2 k subst -- Applications need a bit of care!