summaryrefslogtreecommitdiff
path: root/compiler/prelude
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/prelude')
-rw-r--r--compiler/prelude/PrelRules.hs10
1 files changed, 4 insertions, 6 deletions
diff --git a/compiler/prelude/PrelRules.hs b/compiler/prelude/PrelRules.hs
index 2a174b13fc..13e271bc66 100644
--- a/compiler/prelude/PrelRules.hs
+++ b/compiler/prelude/PrelRules.hs
@@ -656,13 +656,11 @@ instance MonadFail.MonadFail RuleM where
#endif
instance Alternative RuleM where
- empty = mzero
- (<|>) = mplus
+ empty = RuleM $ \_ _ _ -> Nothing
+ RuleM f1 <|> RuleM f2 = RuleM $ \dflags iu args ->
+ f1 dflags iu args <|> f2 dflags iu args
-instance MonadPlus RuleM where
- mzero = RuleM $ \_ _ _ -> Nothing
- mplus (RuleM f1) (RuleM f2) = RuleM $ \dflags iu args ->
- f1 dflags iu args `mplus` f2 dflags iu args
+instance MonadPlus RuleM
instance HasDynFlags RuleM where
getDynFlags = RuleM $ \dflags _ _ -> Just dflags