summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2018-02-20 10:45:21 +0000
committerSimon Peyton Jones <simonpj@microsoft.com>2018-02-27 08:44:45 +0000
commit8c1d6b7d196f41669f052f16151423f7ce9842f8 (patch)
tree638eb971e6bab5d173fd5ba1af6b2617f0bfc896
parentda4766c313bf33e5f0790583af204935f62699a0 (diff)
downloadhaskell-8c1d6b7d196f41669f052f16151423f7ce9842f8.tar.gz
Tiny refactor in Core Lint
-rw-r--r--compiler/coreSyn/CoreLint.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/coreSyn/CoreLint.hs b/compiler/coreSyn/CoreLint.hs
index b0d2ac35c1..4fa342508f 100644
--- a/compiler/coreSyn/CoreLint.hs
+++ b/compiler/coreSyn/CoreLint.hs
@@ -1457,7 +1457,7 @@ lintCoreRule _ _ (BuiltinRule {})
lintCoreRule fun fun_ty rule@(Rule { ru_name = name, ru_bndrs = bndrs
, ru_args = args, ru_rhs = rhs })
= lintBinders LambdaBind bndrs $ \ _ ->
- do { lhs_ty <- foldM lintCoreArg fun_ty args
+ do { lhs_ty <- lintCoreArgs fun_ty args
; rhs_ty <- case isJoinId_maybe fun of
Just join_arity
-> do { checkL (args `lengthIs` join_arity) $
@@ -1467,7 +1467,8 @@ lintCoreRule fun fun_ty rule@(Rule { ru_name = name, ru_bndrs = bndrs
_ -> markAllJoinsBad $ lintCoreExpr rhs
; ensureEqTys lhs_ty rhs_ty $
(rule_doc <+> vcat [ text "lhs type:" <+> ppr lhs_ty
- , text "rhs type:" <+> ppr rhs_ty ])
+ , text "rhs type:" <+> ppr rhs_ty
+ , text "fun_ty:" <+> ppr fun_ty ])
; let bad_bndrs = filter is_bad_bndr bndrs
; checkL (null bad_bndrs)