[Pkg-haskell-commits] darcs: haskell-strict-concurrency: Add debian/patches/use-new-exception to use Control.Exception instead of Control.OldException, resolving a build failure with GHC 7.6.

Iain Lane laney at debian.org
Fri Apr 12 12:27:55 UTC 2013


Fri Apr 12 12:01:39 UTC 2013  Iain Lane <laney at debian.org>
  * Add debian/patches/use-new-exception to use Control.Exception instead of Control.OldException, resolving a build failure with GHC 7.6.
  Ignore-this: 621ad96e6c0934456e8bccb1a5c68d74

    M ./changelog -1 +6
    A ./patches/
    A ./patches/series
    A ./patches/use-new-exception

Fri Apr 12 12:01:39 UTC 2013  Iain Lane <laney at debian.org>
  * Add debian/patches/use-new-exception to use Control.Exception instead of Control.OldException, resolving a build failure with GHC 7.6.
  Ignore-this: 621ad96e6c0934456e8bccb1a5c68d74
diff -rN -u old-haskell-strict-concurrency//changelog new-haskell-strict-concurrency//changelog
--- old-haskell-strict-concurrency//changelog	2013-04-12 12:27:55.410021740 +0000
+++ new-haskell-strict-concurrency//changelog	2013-04-12 12:27:55.422025373 +0000
@@ -1,10 +1,15 @@
 haskell-strict-concurrency (0.2.4.1-3) UNRELEASED; urgency=low
 
+  [ Joachim Breitner ]
   * Depend on haskell-devscripts 0.8.13 to ensure this packages is built
     against experimental
   * Bump standards version, no change
 
- -- Joachim Breitner <nomeata at debian.org>  Sat, 13 Oct 2012 14:13:11 +0200
+  [ Iain Lane ]
+  * Add debian/patches/use-new-exception to use Control.Exception instead of
+    Control.OldException, resolving a build failure with GHC 7.6. 
+
+ -- Iain Lane <laney at debian.org>  Fri, 12 Apr 2013 13:00:52 +0100
 
 haskell-strict-concurrency (0.2.4.1-2) unstable; urgency=low
 
diff -rN -u old-haskell-strict-concurrency//patches/series new-haskell-strict-concurrency//patches/series
--- old-haskell-strict-concurrency//patches/series	1970-01-01 00:00:00.000000000 +0000
+++ new-haskell-strict-concurrency//patches/series	2013-04-12 12:27:55.414024107 +0000
@@ -0,0 +1 @@
+use-new-exception
diff -rN -u old-haskell-strict-concurrency//patches/use-new-exception new-haskell-strict-concurrency//patches/use-new-exception
--- old-haskell-strict-concurrency//patches/use-new-exception	1970-01-01 00:00:00.000000000 +0000
+++ new-haskell-strict-concurrency//patches/use-new-exception	2013-04-12 12:27:55.418027971 +0000
@@ -0,0 +1,52 @@
+Description: Compile with GHC 7.6 (don't use Control.OldException)
+Forwarded: yes (private email)
+Author: Iain Lane <laney at debian.org>
+
+Index: haskell-strict-concurrency-0.2.4.1/Control/Concurrent/MVar/Strict.hs
+===================================================================
+--- haskell-strict-concurrency-0.2.4.1.orig/Control/Concurrent/MVar/Strict.hs	2010-08-12 00:01:17.000000000 +0000
++++ haskell-strict-concurrency-0.2.4.1/Control/Concurrent/MVar/Strict.hs	2013-04-12 11:49:08.322626389 +0000
+@@ -43,9 +43,9 @@
+ import GHC.IOBase
+ 
+ import Prelude
+-import Control.OldException as Exception
+ -- import Control.Parallel.Strategies
+ import Control.DeepSeq
++import Control.Exception
+ 
+ -- |Put a value into an 'MVar'.  If the 'MVar' is currently full,
+ -- 'putMVar' will wait until it becomes empty.
+@@ -121,8 +121,8 @@
+ withMVar :: NFData a => MVar a -> (a -> IO b) -> IO b
+ withMVar m io = block $ do
+     a <- takeMVar m
+-    b <- Exception.catch (unblock (io a))
+-            (\e -> do putMVar m a; throw e)
++    b <- catch (unblock (io a))
++            (\ (e :: IOException) -> do putMVar m a; throw e)
+     putMVar m a
+     return b
+ 
+@@ -135,8 +135,8 @@
+ modifyMVar_ :: NFData a => MVar a -> (a -> IO a) -> IO ()
+ modifyMVar_ m io = block $ do
+     a  <- takeMVar m
+-    a' <- Exception.catch (unblock (io a))
+-            (\e -> do putMVar m a; throw e)
++    a' <- catch (unblock (io a))
++            (\ (e :: IOException) -> do putMVar m a; throw e)
+     putMVar m a'
+ 
+ {-|
+@@ -147,8 +147,8 @@
+ modifyMVar :: NFData a => MVar a -> (a -> IO (a,b)) -> IO b
+ modifyMVar m io = block $ do
+     a      <- takeMVar m
+-    (a',b) <- Exception.catch (unblock (io a))
+-                (\e -> do putMVar m a; throw e)
++    (a',b) <- catch (unblock (io a))
++                (\ (e :: IOException) -> do putMVar m a; throw e)
+     putMVar m a'
+     return b
+ 





More information about the Pkg-haskell-commits mailing list