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
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