doctest 0.9.9 → 0.9.10
raw patch · 2 files changed
+15/−8 lines, 2 filesdep −base-compatdep ~base
Dependencies removed: base-compat
Dependency ranges changed: base
Files
- doctest.cabal +2/−2
- src/GhcUtil.hs +13/−6
doctest.cabal view
@@ -1,5 +1,5 @@ name: doctest-version: 0.9.9+version: 0.9.10 synopsis: Test interactive Haskell examples description: The doctest program checks examples in source code comments. It is modeled after doctest for Python@@ -82,7 +82,7 @@ c-sources: test/integration/with-cbits/foo.c build-depends:- base-compat >= 0.2.1+ base , ghc , syb , deepseq
src/GhcUtil.hs view
@@ -1,9 +1,9 @@ {-# LANGUAGE CPP #-} module GhcUtil (withGhc) where -import Control.Exception import GHC.Paths (libdir) #if __GLASGOW_HASKELL__ < 707+import Control.Exception import GHC hiding (flags) import DynFlags (dopt_set) #else@@ -14,12 +14,14 @@ import MonadUtils (liftIO) import System.Exit (exitFailure)-import StaticFlags (v_opt_C_ready)-import Data.IORef (writeIORef) #if __GLASGOW_HASKELL__ < 702-#else+import StaticFlags (v_opt_C_ready)+import Data.IORef (writeIORef)+#elif __GLASGOW_HASKELL__ < 707 import StaticFlags (saveStaticFlagGlobals, restoreStaticFlagGlobals)+#else+import StaticFlags (discardStaticFlags) #endif @@ -29,8 +31,10 @@ -- GHC < 7.2 does not provide saveStaticFlagGlobals/restoreStaticFlagGlobals, -- so we need to modifying v_opt_C_ready directly bracketStaticFlags action = action `finally` writeIORef v_opt_C_ready False-#else+#elif __GLASGOW_HASKELL__ < 707 bracketStaticFlags action = bracket saveStaticFlagGlobals restoreStaticFlagGlobals (const action)+#else+bracketStaticFlags action = action #endif -- Catch GHC source errors, print them and exit.@@ -46,14 +50,17 @@ -- | Run a GHC action in Haddock mode withGhc :: [String] -> ([String] -> Ghc a) -> IO a withGhc flags action = bracketStaticFlags $ do- writeIORef v_opt_C_ready False flags_ <- handleStaticFlags flags runGhc (Just libdir) $ do handleDynamicFlags flags_ >>= handleSrcErrors . action handleStaticFlags :: [String] -> IO [Located String]+#if __GLASGOW_HASKELL__ < 707 handleStaticFlags flags = fst `fmap` parseStaticFlags (map noLoc flags)+#else+handleStaticFlags flags = return $ map noLoc $ discardStaticFlags flags+#endif handleDynamicFlags :: GhcMonad m => [Located String] -> m [String] handleDynamicFlags flags = do