diff options
| -rw-r--r-- | compiler/simplCore/SimplMonad.lhs | 6 |
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)) |
