aboutsummaryrefslogtreecommitdiff
path: root/CabalHelper/Compiletime/Log.hs
diff options
context:
space:
mode:
authorDaniel Gröber <dxld@darkboxed.org>2017-09-25 11:10:25 +0200
committerDaniel Gröber <dxld@darkboxed.org>2017-09-25 13:11:28 +0200
commit77afb51613df5777582627e8c505fde57b0be188 (patch)
tree4fa0da681316b42286ef888ed6ab1a781867933c /CabalHelper/Compiletime/Log.hs
parentb42f9095993f5862d4450a84f6cf535b7a252d48 (diff)
Add support for running Cabal's Setup.hs directly
cabal-install 1.24 broke installing older Cabal versions which use build-type:custom. See https://github.com/haskell/cabal/pull/4787. This still breaks with HEAD on GHC<8. See https://github.com/haskell/cabal/pull/4786.
Diffstat (limited to 'CabalHelper/Compiletime/Log.hs')
-rw-r--r--CabalHelper/Compiletime/Log.hs10
1 files changed, 6 insertions, 4 deletions
diff --git a/CabalHelper/Compiletime/Log.hs b/CabalHelper/Compiletime/Log.hs
index 6931fa9..ec38f88 100644
--- a/CabalHelper/Compiletime/Log.hs
+++ b/CabalHelper/Compiletime/Log.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE ScopedTypeVariables #-}
+
module CabalHelper.Compiletime.Log where
import Control.Monad
@@ -14,8 +16,8 @@ vLog Options { verbose = True } msg =
liftIO $ hPutStrLn stderr msg
vLog _ _ = return ()
-logSomeError :: Options -> String -> IO (Maybe a) -> IO (Maybe a)
-logSomeError opts label a = do
- a `E.catch` \se@(SomeException _) -> do
- vLog opts $ label ++ ": " ++ show se
+logIOError :: Options -> String -> IO (Maybe a) -> IO (Maybe a)
+logIOError opts label a = do
+ a `E.catch` \(ex :: IOError) -> do
+ vLog opts $ label ++ ": " ++ E.displayException ex
return Nothing