@@ -89,6 +89,7 @@ import GHCJS.Nullable (Nullable(..))
8989import GHCJS.Prim.Internal (JSVal(..), JSValueRef)
9090import Data.JSString.Internal.Type (JSString(..))
9191import Control.DeepSeq (NFData(..))
92+import Control.Monad.Catch (MonadThrow, MonadCatch, MonadMask)
9293import Control.Monad.Trans.Cont (ContT(..))
9394import Control.Monad.Trans.Error (Error(..), ErrorT(..))
9495import Control.Monad.Trans.Except (ExceptT(..))
@@ -157,7 +158,7 @@ data JSContextRef = JSContextRef {
157158type JSM = IO
158159#else
159160newtype JSM a = JSM { unJSM :: ReaderT JSContextRef IO a }
160− deriving (Functor, Applicative, Monad, MonadIO, MonadFix)
161+ deriving (Functor, Applicative, Monad, MonadIO, MonadFix, MonadCatch, MonadThrow, MonadMask)
161162#endif
162163
163164