summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compiler/simplCore/SimplMonad.lhs6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/simplCore/SimplMonad.lhs b/compiler/simplCore/SimplMonad.lhs
index 6883b6acde..04b8c4e6d5 100644
--- a/compiler/simplCore/SimplMonad.lhs
+++ b/compiler/simplCore/SimplMonad.lhs
@@ -35,6 +35,7 @@ import DynFlags
import CoreMonad
import Outputable
import FastString
+import MonadUtils
\end{code}
%************************************************************************
@@ -153,6 +154,11 @@ instance MonadUnique SimplM where
instance HasDynFlags SimplM where
getDynFlags = SM (\st_env us sc -> return (st_flags st_env, us, sc))
+instance MonadIO SimplM where
+ liftIO m = SM $ \_ us sc -> do
+ x <- m
+ return (x, us, sc)
+
getSimplRules :: SimplM RuleBase
getSimplRules = SM (\st_env us sc -> return (st_rules st_env, us, sc))