X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Ftypecheck%2FTcMatches.lhs;h=76933c4fc0870cbef7d5106400bb35d8dfc63ab6;hb=10ab808b4c8575f62bcc7998e5ab45fa0e0d33c5;hp=05797f5426e333c8a3e9371c9f6628bc125834e4;hpb=f714e6b642fd614a9971717045ae47c3d871275e;p=ghc-hetmet.git diff --git a/ghc/compiler/typecheck/TcMatches.lhs b/ghc/compiler/typecheck/TcMatches.lhs index 05797f5..76933c4 100644 --- a/ghc/compiler/typecheck/TcMatches.lhs +++ b/ghc/compiler/typecheck/TcMatches.lhs @@ -559,7 +559,7 @@ tcStmtAndThen combine ctxt (L src_loc (RecStmt stmts laterNames recNames _)) thi in tcExtendLocalValEnv rec_ids $ tcStmtsAndThen combine_rec ctxt stmts ( - mappM tc_ret (recNames `zip` recTys) `thenM` \ rec_rets -> + zipWithM tc_ret recNames recTys `thenM` \ rec_rets -> tcLookupLocalIds laterNames `thenM` \ later_ids -> returnM ([], (later_ids, rec_rets)) ) `thenM` \ (stmts', (later_ids, rec_rets)) -> @@ -574,7 +574,7 @@ tcStmtAndThen combine ctxt (L src_loc (RecStmt stmts laterNames recNames _)) thi combine_rec stmt (stmts, thing) = (stmt:stmts, thing) -- Unify the types of the "final" Ids with those of "knot-tied" Ids - tc_ret (rec_name, mono_ty) + tc_ret rec_name mono_ty = tcLookupId rec_name `thenM` \ poly_id -> -- poly_id may have a polymorphic type -- but mono_ty is just a monomorphic type variable