diff options
Diffstat (limited to 'compiler/GHC/Data/IOEnv.hs')
-rw-r--r-- | compiler/GHC/Data/IOEnv.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/GHC/Data/IOEnv.hs b/compiler/GHC/Data/IOEnv.hs index 33cd0ed61e..836ca856d0 100644 --- a/compiler/GHC/Data/IOEnv.hs +++ b/compiler/GHC/Data/IOEnv.hs @@ -61,7 +61,8 @@ import Control.Concurrent (forkIO, killThread) newtype IOEnv env a = IOEnv' (env -> IO a) - deriving (MonadThrow, MonadCatch, MonadMask) via (ReaderT env IO) + deriving (MonadThrow, MonadCatch, MonadMask, MonadFix) via (ReaderT env IO) + -- See Note [The one-shot state monad trick] in GHC.Utils.Monad instance Functor (IOEnv env) where |