From eb5ba64de7cbef6c541d87e3afb644c1115ce103 Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Fri, 3 Sep 2010 09:35:56 +0000 Subject: [PATCH] Give seqId the right type --- compiler/basicTypes/MkId.lhs | 8 ++++---- compiler/prelude/TysPrim.lhs | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/compiler/basicTypes/MkId.lhs b/compiler/basicTypes/MkId.lhs index b7c442b..6d6a835 100644 --- a/compiler/basicTypes/MkId.lhs +++ b/compiler/basicTypes/MkId.lhs @@ -945,10 +945,10 @@ seqId = pcMiscPrelId seqName ty info `setSpecInfo` mkSpecInfo [seq_cast_rule] - ty = mkForAllTys [alphaTyVar,openBetaTyVar] - (mkFunTy alphaTy (mkFunTy openBetaTy openBetaTy)) - [x,y] = mkTemplateLocals [alphaTy, openBetaTy] - rhs = mkLams [alphaTyVar,openBetaTyVar,x,y] (Case (Var x) x openBetaTy [(DEFAULT, [], Var y)]) + ty = mkForAllTys [alphaTyVar,argBetaTyVar] + (mkFunTy alphaTy (mkFunTy argBetaTy argBetaTy)) + [x,y] = mkTemplateLocals [alphaTy, argBetaTy] + rhs = mkLams [alphaTyVar,argBetaTyVar,x,y] (Case (Var x) x argBetaTy [(DEFAULT, [], Var y)]) -- See Note [Built-in RULES for seq] seq_cast_rule = BuiltinRule { ru_name = fsLit "seq of cast" diff --git a/compiler/prelude/TysPrim.lhs b/compiler/prelude/TysPrim.lhs index efeced2..ac3a528 100644 --- a/compiler/prelude/TysPrim.lhs +++ b/compiler/prelude/TysPrim.lhs @@ -12,7 +12,7 @@ module TysPrim( alphaTyVars, betaTyVars, alphaTyVar, betaTyVar, gammaTyVar, deltaTyVar, alphaTy, betaTy, gammaTy, deltaTy, openAlphaTy, openBetaTy, openAlphaTyVar, openBetaTyVar, openAlphaTyVars, - argAlphaTy, argAlphaTyVar, + argAlphaTy, argAlphaTyVar, argBetaTy, argBetaTyVar, primTyCons, @@ -183,10 +183,11 @@ openAlphaTy, openBetaTy :: Type openAlphaTy = mkTyVarTy openAlphaTyVar openBetaTy = mkTyVarTy openBetaTyVar -argAlphaTyVar :: TyVar -(argAlphaTyVar : _) = tyVarList argTypeKind -argAlphaTy :: Type +argAlphaTyVar, argBetaTyVar :: TyVar +(argAlphaTyVar : argBetaTyVar : _) = tyVarList argTypeKind +argAlphaTy, argBetaTy :: Type argAlphaTy = mkTyVarTy argAlphaTyVar +argBetaTy = mkTyVarTy argBetaTyVar \end{code} -- 1.7.10.4