X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fprelude%2FTysWiredIn.lhs;h=598fa420321f58750bcd1ffbce5a504d3dc33ab5;hp=ed7da333c4ff6e8e85a83e0283f858f706c3e288;hb=9da4639011348fb6c318e3cba4b08622f811d9c4;hpb=8e2c0b76cd426ae794bd0ff046b95c437cef6e4a diff --git a/compiler/prelude/TysWiredIn.lhs b/compiler/prelude/TysWiredIn.lhs index ed7da33..598fa42 100644 --- a/compiler/prelude/TysWiredIn.lhs +++ b/compiler/prelude/TysWiredIn.lhs @@ -67,7 +67,8 @@ import OccName ( mkOccNameFS, tcName, dataName, mkTupleOcc, import DataCon ( DataCon, mkDataCon, dataConWorkId, dataConSourceArity ) import Var ( TyVar, tyVarKind ) import TyCon ( TyCon, AlgTyConRhs(DataTyCon), tyConDataCons, - mkTupleTyCon, mkAlgTyCon, tyConName ) + mkTupleTyCon, mkAlgTyCon, tyConName, + AlgTyConParent(NoParentTyCon) ) import BasicTypes ( Arity, RecFlag(..), Boxity(..), isBoxed, StrictnessMark(..) ) @@ -195,16 +196,16 @@ funKindTyCon_RDR = nameRdrName funKindTyConName pcNonRecDataTyCon = pcTyCon False NonRecursive pcRecDataTyCon = pcTyCon False Recursive -pcTyCon is_enum is_rec name tyvars argvrcs cons +pcTyCon is_enum is_rec name tyvars cons = tycon where tycon = mkAlgTyCon name (mkArrowKinds (map tyVarKind tyvars) liftedTypeKind) tyvars - argvrcs [] -- No stupid theta (DataTyCon cons is_enum) [] -- No record selectors + NoParentTyCon is_rec True -- All the wired-in tycons have generics False -- Not in GADT syntax @@ -328,7 +329,7 @@ voidTy = unitTy \begin{code} charTy = mkTyConTy charTyCon -charTyCon = pcNonRecDataTyCon charTyConName [] [] [charDataCon] +charTyCon = pcNonRecDataTyCon charTyConName [] [charDataCon] charDataCon = pcDataCon charDataConName [] [charPrimTy] charTyCon stringTy = mkListTy charTy -- convenience only @@ -337,21 +338,21 @@ stringTy = mkListTy charTy -- convenience only \begin{code} intTy = mkTyConTy intTyCon -intTyCon = pcNonRecDataTyCon intTyConName [] [] [intDataCon] +intTyCon = pcNonRecDataTyCon intTyConName [] [intDataCon] intDataCon = pcDataCon intDataConName [] [intPrimTy] intTyCon \end{code} \begin{code} floatTy = mkTyConTy floatTyCon -floatTyCon = pcNonRecDataTyCon floatTyConName [] [] [floatDataCon] +floatTyCon = pcNonRecDataTyCon floatTyConName [] [floatDataCon] floatDataCon = pcDataCon floatDataConName [] [floatPrimTy] floatTyCon \end{code} \begin{code} doubleTy = mkTyConTy doubleTyCon -doubleTyCon = pcNonRecDataTyCon doubleTyConName [] [] [doubleDataCon] +doubleTyCon = pcNonRecDataTyCon doubleTyConName [] [doubleDataCon] doubleDataCon = pcDataCon doubleDataConName [] [doublePrimTy] doubleTyCon \end{code} @@ -408,7 +409,7 @@ primitive counterpart. boolTy = mkTyConTy boolTyCon boolTyCon = pcTyCon True NonRecursive boolTyConName - [] [] [falseDataCon, trueDataCon] + [] [falseDataCon, trueDataCon] falseDataCon = pcDataCon falseDataConName [] [] boolTyCon trueDataCon = pcDataCon trueDataConName [] [] boolTyCon @@ -436,8 +437,7 @@ data (,) a b = (,,) a b mkListTy :: Type -> Type mkListTy ty = mkTyConApp listTyCon [ty] -listTyCon = pcRecDataTyCon listTyConName - alpha_tyvar [(True,False)] [nilDataCon, consDataCon] +listTyCon = pcRecDataTyCon listTyConName alpha_tyvar [nilDataCon, consDataCon] nilDataCon = pcDataCon nilDataConName alpha_tyvar [] listTyCon consDataCon = pcDataConWithFixity True {- Declared infix -} @@ -525,7 +525,7 @@ mkPArrTy ty = mkTyConApp parrTyCon [ty] -- `PrelPArr'. -- parrTyCon :: TyCon -parrTyCon = pcNonRecDataTyCon parrTyConName alpha_tyvar [(True, False)] [parrDataCon] +parrTyCon = pcNonRecDataTyCon parrTyConName alpha_tyvar [parrDataCon] parrDataCon :: DataCon parrDataCon = pcDataCon