forked from GitHub/gf-core
Fix warnings in 16 modules, mostly forward compatibility warnings from GHC 7.8
This commit is contained in:
@@ -19,10 +19,11 @@ module GF.Infra.SIO(
|
||||
restricted,restrictedSystem
|
||||
) where
|
||||
import Prelude hiding (putStrLn,print)
|
||||
import Control.Monad(liftM)
|
||||
import Control.Applicative(Applicative(..))
|
||||
import Control.Monad(liftM,ap)
|
||||
import System.IO(hPutStrLn,hFlush,stdout)
|
||||
import GF.System.Catch(try)
|
||||
import System.Cmd(system)
|
||||
import System.Process(system)
|
||||
import System.Environment(getEnv)
|
||||
import Control.Concurrent.Chan(newChan,writeChan,getChanContents)
|
||||
import qualified System.CPUTime as IO(getCPUTime)
|
||||
@@ -39,6 +40,10 @@ newtype SIO a = SIO {unS::PutStrLn->IO a}
|
||||
|
||||
instance Functor SIO where fmap = liftM
|
||||
|
||||
instance Applicative SIO where
|
||||
pure = return
|
||||
(<*>) = ap
|
||||
|
||||
instance Monad SIO where
|
||||
return x = SIO (const (return x))
|
||||
SIO m1 >>= xm2 = SIO $ \ h -> m1 h >>= \ x -> unS (xm2 x) h
|
||||
|
||||
Reference in New Issue
Block a user