diff options
Diffstat (limited to 'compiler/stgSyn/StgLint.hs')
-rw-r--r-- | compiler/stgSyn/StgLint.hs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/compiler/stgSyn/StgLint.hs b/compiler/stgSyn/StgLint.hs index bb2064ab48..30b2b991a3 100644 --- a/compiler/stgSyn/StgLint.hs +++ b/compiler/stgSyn/StgLint.hs @@ -36,6 +36,8 @@ module StgLint ( lintStgTopBindings ) where import GhcPrelude +import BasicTypes (BranchWeight) + import StgSyn import DynFlags @@ -184,18 +186,20 @@ lintStgExpr (StgCase scrut bndr alts_type alts) = do addInScopeVars [bndr | in_scope] (mapM_ lintAlt alts) -lintAlt :: (AltCon, [Id], StgExpr) -> LintM () +lintAlt :: (AltCon, [Id], StgExpr, BranchWeight) -> LintM () -lintAlt (DEFAULT, _, rhs) = +lintAlt (DEFAULT, _, rhs, _) = lintStgExpr rhs -lintAlt (LitAlt _, _, rhs) = +lintAlt (LitAlt _, _, rhs, _) = lintStgExpr rhs -lintAlt (DataAlt _, bndrs, rhs) = do +lintAlt (DataAlt _, bndrs, rhs, _) = do mapM_ checkPostUnariseBndr bndrs addInScopeVars bndrs (lintStgExpr rhs) + + {- ************************************************************************ * * |