X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcType.lhs;h=b60936d71f421590fa9d0703a79191de14d844ae;hb=61d2625ae2e6a4cdae2ffc92df828905e81c24cc;hp=4ebeeb726cc0bcd2037676722d34bdb948a715cb;hpb=ae08a1e6d7b2ed19d312f035fa69c4297dd1756a;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcType.lhs b/compiler/typecheck/TcType.lhs index 4ebeeb7..b60936d 100644 --- a/compiler/typecheck/TcType.lhs +++ b/compiler/typecheck/TcType.lhs @@ -52,7 +52,7 @@ module TcType ( tcEqType, tcEqTypes, tcEqPred, tcCmpType, tcCmpTypes, tcCmpPred, tcEqTypeX, isSigmaTy, isOverloadedTy, isRigidTy, isBoxyTy, isDoubleTy, isFloatTy, isIntTy, isStringTy, - isIntegerTy, isAddrTy, isBoolTy, isUnitTy, + isIntegerTy, isBoolTy, isUnitTy, isTauTy, isTauTyCon, tcIsTyVarTy, tcIsForAllTy, --------------------------------- @@ -88,7 +88,8 @@ module TcType ( -------------------------------- -- Rexported from Type Kind, -- Stuff to do with kinds is insensitive to pre/post Tc - unliftedTypeKind, liftedTypeKind, openTypeKind, mkArrowKind, mkArrowKinds, + unliftedTypeKind, liftedTypeKind, unboxedTypeKind, + openTypeKind, mkArrowKind, mkArrowKinds, isLiftedTypeKind, isUnliftedTypeKind, isOpenTypeKind, isArgTypeKind, isSubKind, defaultKind, @@ -131,7 +132,7 @@ import TypeRep ( Type(..), funTyCon ) -- friend import Type ( -- Re-exports tyVarsOfType, tyVarsOfTypes, tyVarsOfPred, tyVarsOfTheta, Kind, PredType(..), - ThetaType, unliftedTypeKind, + ThetaType, unliftedTypeKind, unboxedTypeKind, liftedTypeKind, openTypeKind, mkArrowKind, isLiftedTypeKind, isUnliftedTypeKind, mkArrowKinds, mkForAllTy, mkForAllTys, @@ -813,8 +814,8 @@ mkDictTy clas tys = mkPredTy (ClassP clas tys) isDictTy :: Type -> Bool isDictTy ty | Just ty' <- tcView ty = isDictTy ty' -isDictTy (PredTy p) = isClassPred p -isDictTy other = False +isDictTy (PredTy p) = isClassPred p +isDictTy other = False \end{code} --------------------- Implicit parameters --------------------------------- @@ -898,7 +899,6 @@ isFloatTy = is_tc floatTyConKey isDoubleTy = is_tc doubleTyConKey isIntegerTy = is_tc integerTyConKey isIntTy = is_tc intTyConKey -isAddrTy = is_tc addrTyConKey isBoolTy = is_tc boolTyConKey isUnitTy = is_tc unitTyConKey @@ -1069,17 +1069,17 @@ isFFIExportResultTy ty = checkRepTyCon legalFEResultTyCon ty isFFIDynArgumentTy :: Type -> Bool -- The argument type of a foreign import dynamic must be Ptr, FunPtr, Addr, -- or a newtype of either. -isFFIDynArgumentTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey, addrTyConKey] +isFFIDynArgumentTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey] isFFIDynResultTy :: Type -> Bool -- The result type of a foreign export dynamic must be Ptr, FunPtr, Addr, -- or a newtype of either. -isFFIDynResultTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey, addrTyConKey] +isFFIDynResultTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey] isFFILabelTy :: Type -> Bool -- The type of a foreign label must be Ptr, FunPtr, Addr, -- or a newtype of either. -isFFILabelTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey, addrTyConKey] +isFFILabelTy = checkRepTyConKey [ptrTyConKey, funPtrTyConKey] isFFIDotnetTy :: DynFlags -> Type -> Bool isFFIDotnetTy dflags ty @@ -1130,7 +1130,6 @@ toDNType ty , (word64TyConKey, DNWord64) , (floatTyConKey, DNFloat) , (doubleTyConKey, DNDouble) - , (addrTyConKey, DNPtr) , (ptrTyConKey, DNPtr) , (funPtrTyConKey, DNPtr) , (charTyConKey, DNChar) @@ -1194,7 +1193,7 @@ boxedMarshalableTyCon tc , wordTyConKey, word8TyConKey, word16TyConKey , word32TyConKey, word64TyConKey , floatTyConKey, doubleTyConKey - , addrTyConKey, ptrTyConKey, funPtrTyConKey + , ptrTyConKey, funPtrTyConKey , charTyConKey , stablePtrTyConKey , boolTyConKey