summaryrefslogtreecommitdiff
path: root/src/compiler/GF
diff options
context:
space:
mode:
authorThomas Hallgren <th-github@altocumulus.org>2017-08-18 11:55:44 +0200
committerThomas Hallgren <th-github@altocumulus.org>2017-08-18 11:55:44 +0200
commit0a0eaa01bcbe9574bb86a6470ca5139fbd32a9d3 (patch)
tree6589f7ab9c1abbadf5d054f3c47f5b056e875af8 /src/compiler/GF
parent5ab8b7082cbe6039a952b7f8bd31c16f6a5f3375 (diff)
Bump version requirements to base>=4.6, Cabal>=1.20
Cabal>=1.20 allows control over parallelism when compiling grammars from Setup.hs and WebSetup.hs. base>=4.6 allows conditional compilation with CPP to be eliminated from a few modules. base-4.6 corresponds to GHC 7.6.3, which is what you get in Debian 8 (aka jessie, aka oldstable) from 2015.
Diffstat (limited to 'src/compiler/GF')
-rw-r--r--src/compiler/GF/System/Catch.hs8
-rw-r--r--src/compiler/GF/System/Concurrency.hs10
2 files changed, 3 insertions, 15 deletions
diff --git a/src/compiler/GF/System/Catch.hs b/src/compiler/GF/System/Catch.hs
index f69934af5..11fae1a7b 100644
--- a/src/compiler/GF/System/Catch.hs
+++ b/src/compiler/GF/System/Catch.hs
@@ -1,13 +1,7 @@
--- | Isolate backwards incompatible library changes to 'catch' and 'try'
-{-# LANGUAGE CPP #-}
+-- | Backwards compatible 'catch' and 'try'
module GF.System.Catch where
import qualified System.IO.Error as S
-- ** Backwards compatible try and catch
-#if MIN_VERSION_base(4,4,0)
catch = S.catchIOError
try = S.tryIOError
-#else
-catch = S.catch
-try = S.try
-#endif
diff --git a/src/compiler/GF/System/Concurrency.hs b/src/compiler/GF/System/Concurrency.hs
index 41f318c7a..514eab649 100644
--- a/src/compiler/GF/System/Concurrency.hs
+++ b/src/compiler/GF/System/Concurrency.hs
@@ -1,7 +1,6 @@
-{-# LANGUAGE CPP,ForeignFunctionInterface #-}
+{-# LANGUAGE ForeignFunctionInterface #-}
-- | A variant of 'Control.Concurrent.setNumCapabilities' that automatically
--- detects the number of processors in the system, and is available
--- even when compiling with GHC<7.6.
+-- detects the number of processors in the system.
module GF.System.Concurrency(
-- * Controlling parallelism
setNumCapabilities,getNumberOfProcessors) where
@@ -16,13 +15,8 @@ import Foreign.C.Types(CInt(..))
-- hasn't already been set with @+RTS -N/n/ -RTS@.
setNumCapabilities opt_n =
do n <- maybe getNumberOfProcessors return opt_n
-#if MIN_VERSION_base(4,6,0)
C.setNumCapabilities n
return True
-#else
- n_now <- C.getNumCapabilities
- return (n==n_now)
-#endif
-- | Returns the number of processors in the system.
getNumberOfProcessors = fmap fromEnum c_getNumberOfProcessors