@@ -188,7 +188,7 @@ composeContext :: (MonadIO m, MonadPlus m) => Context -> m a
188composeContext Context { currentm = m
188composeContext Context { currentm = m
189 , fstack = fs
189 , fstack = fs
191− unsafeCoerce m >>= composefStack (unsafeCoerce fs)
191+ unsafeCoerce m >>= composefStack fs
@@ -201,7 +201,7 @@ composeContext Context { currentm = m
202 -- composefStack :: Monad m => [a -> AsyncT m a] -> a -> AsyncT m b
202 -- composefStack :: Monad m => [a -> AsyncT m a] -> a -> AsyncT m b
203 composefStack [] _ = error "Bug: this should never be reached"
203 composefStack [] _ = error "Bug: this should never be reached"
204− composefStack (f:ff) x = f x >>= composefStack ff
204+ composefStack (f:ff) x = (unsafeCoerce f) x >>= composefStack ff
206setContextMailBox :: Context -> a -> Context
206setContextMailBox :: Context -> a -> Context
207setContextMailBox ctx mbdata = ctx { mailBox = Just $ unsafeCoerce mbdata }
207setContextMailBox ctx mbdata = ctx { mailBox = Just $ unsafeCoerce mbdata }