gienah      14/12/23 04:20:21

  Added:                lifted-async-0.2.0.2-monad-control-1.1.patch
  Log:
  Apply patch by Roman Cheplyaka to allow lifted-async 0.2.0.2-r1 to build with 
monad-control-1.0.0.1
  
  (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 
618E971F)

Revision  Changes    Path
1.1                  
dev-haskell/lifted-async/files/lifted-async-0.2.0.2-monad-control-1.1.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/lifted-async/files/lifted-async-0.2.0.2-monad-control-1.1.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/lifted-async/files/lifted-async-0.2.0.2-monad-control-1.1.patch?rev=1.1&content-type=text/plain

Index: lifted-async-0.2.0.2-monad-control-1.1.patch
===================================================================
commit 448176aa98e03a31121501af004d8159e92b2f66
Author: Roman Cheplyaka <[email protected]>
Date:   Tue Dec 16 12:09:52 2014 +0200

    Make lifted-async build with monad-control-1.0

diff --git a/src/Control/Concurrent/Async/Lifted.hs 
b/src/Control/Concurrent/Async/Lifted.hs
index fa5a158..e5034c1 100644
--- a/src/Control/Concurrent/Async/Lifted.hs
+++ b/src/Control/Concurrent/Async/Lifted.hs
@@ -2,6 +2,7 @@
 {-# LANGUAGE KindSignatures #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE ScopedTypeVariables #-}
 
 {- |
 Module      : Control.Concurrent.Async.Lifted
@@ -47,7 +48,7 @@ module Control.Concurrent.Async.Lifted
 
 import Control.Applicative
 import Control.Concurrent (threadDelay)
-import Control.Monad ((>=>), forever, liftM, void)
+import Control.Monad ((>=>), forever, liftM)
 import Data.Traversable (Traversable(..))
 import GHC.IO (unsafeUnmask)
 import Prelude hiding (mapM)
@@ -180,11 +181,11 @@ waitCatch
 waitCatch a = liftBase (A.waitCatch a) >>= sequenceEither
 
 -- | Generalized version of 'A.cancel'.
-cancel :: MonadBase IO m => Async (StM m a) -> m ()
+cancel :: MonadBase IO m => Async a -> m ()
 cancel = liftBase . A.cancel
 
 -- | Generalized version of 'A.cancelWith'.
-cancelWith :: (MonadBase IO m, Exception e) => Async (StM m a) -> e -> m ()
+cancelWith :: (MonadBase IO m, Exception e) => Async a -> e -> m ()
 cancelWith = (liftBase .) . A.cancelWith
 
 -- | Generalized version of 'A.waitAny'.
@@ -261,10 +262,10 @@ waitEitherCatchCancel a b =
 -- | Generalized version of 'A.waitEither_'.
 waitEither_
   :: MonadBaseControl IO m
-  => Async (StM m a)
-  -> Async (StM m b)
+  => Async a
+  -> Async b
   -> m ()
-waitEither_ = (void .) . waitEither
+waitEither_ a b = liftBase (A.waitEither_ a b)
 
 -- | Generalized version of 'A.waitBoth'.
 waitBoth
@@ -280,11 +281,11 @@ waitBoth a b = do
 {-# INLINABLE waitBoth #-}
 
 -- | Generalized version of 'A.link'.
-link :: MonadBase IO m => Async (StM m a) -> m ()
+link :: MonadBase IO m => Async a -> m ()
 link = liftBase . A.link
 
 -- | Generalized version of 'A.link2'.
-link2 :: MonadBase IO m => Async (StM m a) -> Async (StM m b) -> m ()
+link2 :: MonadBase IO m => Async a -> Async a -> m ()
 link2 = (liftBase .) . A.link2
 
 -- | Generalized version of 'A.race'.




Reply via email to