X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcExpr.lhs;h=70592af07f84e65d60d0c43b9f81bf1940b1d5ce;hp=8b907d212c8f00a37641deffea2345fd30c53b07;hb=41cecc14547b049cec20e827ceae8ff312c9ff4f;hpb=b2524b3960999fffdb3767900f58825903f6560f diff --git a/compiler/typecheck/TcExpr.lhs b/compiler/typecheck/TcExpr.lhs index 8b907d2..70592af 100644 --- a/compiler/typecheck/TcExpr.lhs +++ b/compiler/typecheck/TcExpr.lhs @@ -48,7 +48,7 @@ import Var import VarSet import VarEnv import TysWiredIn -import TysPrim( intPrimTy ) +import TysPrim( intPrimTy, ecKind ) import PrimOp( tagToEnumKey ) import PrelNames import Module @@ -173,18 +173,18 @@ tcExpr (HsHetMetBrak _ e) res_ty = ; expr' <- updHetMetLevel (\old_lev -> (fresh_ec_name:old_lev)) $ tcPolyExpr e elt_ty ; unifyType (TyVarTy fresh_ec_name) inferred_name - ; return $ mkHsWrapCoI coi (HsHetMetBrak (TyVarTy fresh_ec_name) expr') } + ; return $ mkHsWrapCo coi (HsHetMetBrak (TyVarTy fresh_ec_name) expr') } tcExpr (HsHetMetEsc _ _ e) res_ty = do { cur_level <- getHetMetLevel ; expr' <- updHetMetLevel (\old_lev -> tail old_lev) $ tcExpr (unLoc e) (mkTyConApp hetMetCodeTypeTyCon [(TyVarTy $ head cur_level),res_ty]) ; ty' <- zonkTcType res_ty - ; return $ mkHsWrapCoI (ACo res_ty) (HsHetMetEsc (TyVarTy $ head cur_level) ty' (noLoc expr')) } + ; return $ HsHetMetEsc (TyVarTy $ head cur_level) ty' (noLoc expr') } tcExpr (HsHetMetCSP _ e) res_ty = do { cur_level <- getHetMetLevel ; expr' <- updHetMetLevel (\old_lev -> tail old_lev) $ tcExpr (unLoc e) res_ty - ; return $ mkHsWrapCoI (ACo res_ty) (HsHetMetCSP (TyVarTy $ head cur_level) (noLoc expr')) } + ; return $ HsHetMetCSP (TyVarTy $ head cur_level) (noLoc expr') } tcExpr (HsApp e1 e2) res_ty = tcApp e1 [e2] res_ty