summaryrefslogtreecommitdiff
path: root/compiler/GHC/Rename/Expr.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Rename/Expr.hs')
-rw-r--r--compiler/GHC/Rename/Expr.hs15
1 files changed, 8 insertions, 7 deletions
diff --git a/compiler/GHC/Rename/Expr.hs b/compiler/GHC/Rename/Expr.hs
index d8b2436dc1..ac0de6b772 100644
--- a/compiler/GHC/Rename/Expr.hs
+++ b/compiler/GHC/Rename/Expr.hs
@@ -374,9 +374,9 @@ rnExpr (HsLam x matches)
= do { (matches', fvMatch) <- rnMatchGroup LambdaExpr rnLExpr matches
; return (HsLam x matches', fvMatch) }
-rnExpr (HsLamCase x matches)
- = do { (matches', fvs_ms) <- rnMatchGroup CaseAlt rnLExpr matches
- ; return (HsLamCase x matches', fvs_ms) }
+rnExpr (HsLamCase x lc_variant matches)
+ = do { (matches', fvs_ms) <- rnMatchGroup (LamCaseAlt lc_variant) rnLExpr matches
+ ; return (HsLamCase x lc_variant matches', fvs_ms) }
rnExpr (HsCase _ expr matches)
= do { (new_expr, e_fvs) <- rnLExpr expr
@@ -810,9 +810,10 @@ rnCmd (HsCmdCase _ expr matches)
; return (HsCmdCase noExtField new_expr new_matches
, e_fvs `plusFV` ms_fvs) }
-rnCmd (HsCmdLamCase x matches)
- = do { (new_matches, ms_fvs) <- rnMatchGroup (ArrowMatchCtxt ArrowCaseAlt) rnLCmd matches
- ; return (HsCmdLamCase x new_matches, ms_fvs) }
+rnCmd (HsCmdLamCase x lc_variant matches)
+ = do { (new_matches, ms_fvs) <-
+ rnMatchGroup (ArrowMatchCtxt $ ArrowLamCaseAlt lc_variant) rnLCmd matches
+ ; return (HsCmdLamCase x lc_variant new_matches, ms_fvs) }
rnCmd (HsCmdIf _ _ p b1 b2)
= do { (p', fvP) <- rnLExpr p
@@ -864,7 +865,7 @@ methodNamesCmd (HsCmdLam _ match) = methodNamesMatch match
methodNamesCmd (HsCmdCase _ _ matches)
= methodNamesMatch matches `addOneFV` choiceAName
-methodNamesCmd (HsCmdLamCase _ matches)
+methodNamesCmd (HsCmdLamCase _ _ matches)
= methodNamesMatch matches `addOneFV` choiceAName
--methodNamesCmd _ = emptyFVs