summaryrefslogtreecommitdiff
path: root/compiler/deSugar/DsGRHSs.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/deSugar/DsGRHSs.hs')
-rw-r--r--compiler/deSugar/DsGRHSs.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/deSugar/DsGRHSs.hs b/compiler/deSugar/DsGRHSs.hs
index 352534bb17..6b1b342058 100644
--- a/compiler/deSugar/DsGRHSs.hs
+++ b/compiler/deSugar/DsGRHSs.hs
@@ -19,12 +19,12 @@ import HsSyn
import MkCore
import CoreSyn
import Var
-import Type
import DsMonad
import DsUtils
import TysWiredIn
import PrelNames
+import Type ( Type )
import Module
import Name
import Util
@@ -140,7 +140,8 @@ isTrueLHsExpr (L _ (HsVar (L _ v))) | v `hasKey` otherwiseIdKey
-- trueDataConId doesn't have the same unique as trueDataCon
isTrueLHsExpr (L _ (HsTick tickish e))
| Just ticks <- isTrueLHsExpr e
- = Just (\x -> ticks x >>= return . (Tick tickish))
+ = Just (\x -> do wrapped <- ticks x
+ return (Tick tickish wrapped))
-- This encodes that the result is constant True for Hpc tick purposes;
-- which is specifically what isTrueLHsExpr is trying to find out.
isTrueLHsExpr (L _ (HsBinTick ixT _ e))