diff --git a/cabal-install/Distribution/Client/Compat/Exception.hs b/cabal-install/Distribution/Client/Compat/Exception.hs deleted file mode 100644 index 86b271da3c9f1566c8a7bc832c3a44b1dc95f564..0000000000000000000000000000000000000000 --- a/cabal-install/Distribution/Client/Compat/Exception.hs +++ /dev/null @@ -1,26 +0,0 @@ -{-# LANGUAGE CPP #-} -module Distribution.Client.Compat.Exception ( - mask, - mask_ - ) where - --- We can't move these functions to Distribution.Compat.Exception because the --- usage of the MIN_VERSION_base macro breaks bootstrapping. - -#if MIN_VERSION_base(4,3,0) --- it's much less of a headache if we re-export the "real" mask and mask_ --- so there's never more than one definition to conflict -import Control.Exception (mask, mask_) -#else -import Control.Exception (block, unblock) -#endif - -#if !MIN_VERSION_base(4,3,0) --- note: less polymorphic than 'real' mask, to avoid RankNTypes --- we don't need the full generality where we use it -mask :: ((IO a -> IO a) -> IO b) -> IO b -mask handler = block (handler unblock) - -mask_ :: IO a -> IO a -mask_ = block -#endif diff --git a/cabal-install/Distribution/Client/Compat/Semaphore.hs b/cabal-install/Distribution/Client/Compat/Semaphore.hs index 71e4c818c73f149b656515d0baaf5f8ae573d2a6..ca0edbe48b727b052c09297cb6571bd1d6fd5c32 100644 --- a/cabal-install/Distribution/Client/Compat/Semaphore.hs +++ b/cabal-install/Distribution/Client/Compat/Semaphore.hs @@ -9,12 +9,10 @@ module Distribution.Client.Compat.Semaphore import Control.Concurrent.STM (TVar, atomically, newTVar, readTVar, retry, writeTVar) -import Control.Exception (onException) +import Control.Exception (mask_, onException) import Control.Monad (join, when) import Data.Typeable (Typeable) -import Distribution.Client.Compat.Exception (mask_) - -- | 'QSem' is a quantity semaphore in which the resource is aqcuired -- and released in units of one. It provides guaranteed FIFO ordering -- for satisfying blocked `waitQSem` calls. diff --git a/cabal-install/Distribution/Client/JobControl.hs b/cabal-install/Distribution/Client/JobControl.hs index 4f8229c00af211443c80314424d14fa7fec8e5a9..a4d227f307c04978e0ca8886156003f9f6ad98c0 100644 --- a/cabal-install/Distribution/Client/JobControl.hs +++ b/cabal-install/Distribution/Client/JobControl.hs @@ -28,8 +28,7 @@ module Distribution.Client.JobControl ( import Control.Monad import Control.Concurrent hiding (QSem, newQSem, waitQSem, signalQSem) -import Control.Exception (SomeException, bracket_, throw, try) -import Distribution.Client.Compat.Exception (mask) +import Control.Exception (SomeException, bracket_, mask, throw, try) import Distribution.Client.Compat.Semaphore data JobControl m a = JobControl { diff --git a/cabal-install/cabal-install.cabal b/cabal-install/cabal-install.cabal index d905b83e8e14a0ce03b180e621eec8abd238453a..d3edd34cab903c1d0e8675e778b4691d440999d4 100644 --- a/cabal-install/cabal-install.cabal +++ b/cabal-install/cabal-install.cabal @@ -106,7 +106,6 @@ executable cabal Distribution.Client.World Distribution.Client.Win32SelfUpgrade Distribution.Client.Compat.Environment - Distribution.Client.Compat.Exception Distribution.Client.Compat.FilePerms Distribution.Client.Compat.Semaphore Distribution.Client.Compat.Time