Merge pull request #148 from anka-213/fix-ghc-7.10-build

Fix ghc-7.10 build
This commit is contained in:
Inari Listenmaa
2022-10-04 16:59:53 +02:00
committed by GitHub
3 changed files with 14 additions and 1 deletions

View File

@@ -85,6 +85,8 @@ library
if impl(ghc<8.0) if impl(ghc<8.0)
build-depends: build-depends:
-- We need this in order for ghc-7.10 to build
transformers-compat >= 0.6.3 && < 0.7,
fail >= 4.9.0 && < 4.10 fail >= 4.9.0 && < 4.10
hs-source-dirs: src/runtime/haskell hs-source-dirs: src/runtime/haskell

View File

@@ -38,6 +38,10 @@ import GF.Server(server)
#endif #endif
import GF.Command.Messages(welcome) import GF.Command.Messages(welcome)
#if !(MIN_VERSION_base(4,9,0))
-- Needed to make it compile on GHC < 8
import Control.Monad.Trans.Instances ()
#endif
-- | Run the GF Shell in quiet mode (@gf -run@). -- | Run the GF Shell in quiet mode (@gf -run@).
mainRunGFI :: Options -> [FilePath] -> IO () mainRunGFI :: Options -> [FilePath] -> IO ()

View File

@@ -1,3 +1,5 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE DeriveFunctor #-}
-- BNF Converter: Error Monad -- BNF Converter: Error Monad
-- Copyright (C) 2004 Author: Aarne Ranta -- Copyright (C) 2004 Author: Aarne Ranta
@@ -6,12 +8,17 @@ module GFCC.ErrM where
-- Control.Monad.Fail import will become redundant in GHC 8.8+ -- Control.Monad.Fail import will become redundant in GHC 8.8+
import qualified Control.Monad.Fail as Fail import qualified Control.Monad.Fail as Fail
import Control.Monad (ap)
-- the Error monad: like Maybe type with error msgs -- the Error monad: like Maybe type with error msgs
data Err a = Ok a | Bad String data Err a = Ok a | Bad String
deriving (Read, Show, Eq) deriving (Read, Show, Eq, Functor)
instance Applicative Err where
pure = Ok
(<*>) = ap
instance Monad Err where instance Monad Err where
return = Ok return = Ok