[Git][haskell-team/DHG_packages][master] haskell-presburger: patch for new ghc 8.6.5
Gianfranco Costamagna
gitlab at salsa.debian.org
Sun Aug 25 09:09:38 BST 2019
Gianfranco Costamagna pushed to branch master at Debian Haskell Group / DHG_packages
Commits:
f029ffcc by Gianfranco Costamagna at 2019-08-25T08:09:22Z
haskell-presburger: patch for new ghc 8.6.5
- - - - -
5 changed files:
- p/haskell-presburger/debian/changelog
- + p/haskell-presburger/debian/patches/0b7ab4518debdd36add6bb967ef55e6be5dedfb9.patch
- + p/haskell-presburger/debian/patches/fd7746dbc63d427ab5670341cd0fd13cb2c087b6.patch
- − p/haskell-presburger/debian/patches/fix-build-with-ghc-8.4.patch
- p/haskell-presburger/debian/patches/series
Changes:
=====================================
p/haskell-presburger/debian/changelog
=====================================
@@ -1,3 +1,11 @@
+haskell-presburger (1.3.1-7) unstable; urgency=medium
+
+ * Upstream fixes for new ghc
+ - debian/patches/0b7ab4518debdd36add6bb967ef55e6be5dedfb9.patch:
+ - debian/patches/fd7746dbc63d427ab5670341cd0fd13cb2c087b6.patch:
+
+ -- Gianfranco Costamagna <locutusofborg at debian.org> Sun, 25 Aug 2019 10:04:46 +0200
+
haskell-presburger (1.3.1-6) unstable; urgency=medium
* Patch to build with ghc-8.4
=====================================
p/haskell-presburger/debian/patches/0b7ab4518debdd36add6bb967ef55e6be5dedfb9.patch
=====================================
@@ -0,0 +1,44 @@
+## Description: add some description
+## Origin/Author: add some origin or author
+## Bug: bug URL
+From 9d73e3d55fb44c81ce22a2d60bf7ad38ad1910a7 Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars at archlinux.org>
+Date: Mon, 15 Oct 2018 04:02:43 +0800
+Subject: [PATCH] Fix compatibility with containers 0.6
+
+---
+ src/Data/Integer/SAT.hs | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/src/Data/Integer/SAT.hs b/src/Data/Integer/SAT.hs
+index f10aba1..3fbf9a4 100644
+--- a/src/Data/Integer/SAT.hs
++++ b/src/Data/Integer/SAT.hs
+@@ -1,4 +1,4 @@
+-{-# LANGUAGE BangPatterns, PatternGuards, Trustworthy #-}
++{-# LANGUAGE BangPatterns, PatternGuards, Trustworthy, CPP #-}
+ {-|
+ This module implements a decision procedure for quantifier-free linear
+ arithmetic. The algorithm is based on the following paper:
+@@ -48,6 +48,9 @@ import Control.Monad (MonadPlus (..), ap, guard, liftM)
+ import Data.List (partition)
+ import Data.Map (Map)
+ import qualified Data.Map as Map
++#if MIN_VERSION_containers(0,6,0)
++import qualified Data.Map.Strict as MapStrict
++#endif
+ import Data.Maybe (fromMaybe, mapMaybe, maybeToList)
+ import Prelude hiding ((<>))
+ import Text.PrettyPrint
+@@ -955,7 +958,11 @@ tFactor (T c m) =
+
+ -- | Extract a variable with a coefficient whose absolute value is minimal.
+ tLeastAbsCoeff :: Term -> Maybe (Integer, Name, Term)
++#if MIN_VERSION_containers(0,6,0)
++tLeastAbsCoeff (T c m) = do (xc,x,m1) <- MapStrict.foldrWithKey step Nothing m
++#else
+ tLeastAbsCoeff (T c m) = do (xc,x,m1) <- Map.foldWithKey step Nothing m
++#endif
+ return (xc, x, T c m1)
+ where
+ step x xc Nothing = Just (xc, x, Map.delete x m)
=====================================
p/haskell-presburger/debian/patches/fd7746dbc63d427ab5670341cd0fd13cb2c087b6.patch
=====================================
@@ -0,0 +1,97 @@
+## Description: add some description
+## Origin/Author: add some origin or author
+## Bug: bug URL
+From fd7746dbc63d427ab5670341cd0fd13cb2c087b6 Mon Sep 17 00:00:00 2001
+From: Hiromi ISHII <konn.jinro at gmail.com>
+Date: Fri, 22 Dec 2017 17:03:17 +0900
+Subject: [PATCH] Workaround for GHC 8.4 (hides Semigroup.<>)
+
+---
+ src/Data/Integer/SAT.hs | 39 ++++++++++++++++++++-------------------
+ 1 file changed, 20 insertions(+), 19 deletions(-)
+
+diff --git a/src/Data/Integer/SAT.hs b/src/Data/Integer/SAT.hs
+index cfe3950..f10aba1 100644
+--- a/src/Data/Integer/SAT.hs
++++ b/src/Data/Integer/SAT.hs
+@@ -1,4 +1,4 @@
+-{-# LANGUAGE Trustworthy, PatternGuards, BangPatterns #-}
++{-# LANGUAGE BangPatterns, PatternGuards, Trustworthy #-}
+ {-|
+ This module implements a decision procedure for quantifier-free linear
+ arithmetic. The algorithm is based on the following paper:
+@@ -43,12 +43,13 @@ module Data.Integer.SAT
+
+ import Debug.Trace
+
+-import Data.Map (Map)
+-import qualified Data.Map as Map
+-import Data.List(partition)
+-import Data.Maybe(maybeToList,fromMaybe,mapMaybe)
+-import Control.Applicative(Applicative(..), Alternative(..), (<$>))
+-import Control.Monad(liftM,ap,MonadPlus(..),guard)
++import Control.Applicative (Alternative (..), Applicative (..), (<$>))
++import Control.Monad (MonadPlus (..), ap, guard, liftM)
++import Data.List (partition)
++import Data.Map (Map)
++import qualified Data.Map as Map
++import Data.Maybe (fromMaybe, mapMaybe, maybeToList)
++import Prelude hiding ((<>))
+ import Text.PrettyPrint
+
+ infixr 2 :||
+@@ -85,9 +86,9 @@ assert p (State rws) = State $ fmap snd $ m =<< rws
+ checkSat :: PropSet -> Maybe [(Int,Integer)]
+ checkSat (State m) = go m
+ where
+- go None = mzero
+- go (One rw) = return [ (x,v) | (UserName x, v) <- iModel (inerts rw) ]
+- go (Choice m1 m2) = mplus (go m1) (go m2)
++ go None = mzero
++ go (One rw) = return [ (x,v) | (UserName x, v) <- iModel (inerts rw) ]
++ go (Choice m1 m2) = mplus (go m1) (go m2)
+
+ allInerts :: PropSet -> [Inerts]
+ allInerts (State m) = map inerts (toList m)
+@@ -432,7 +433,7 @@ slnNextValWith f (TopVar x v lb ub is) =
+ return $ TopVar x v1 lb ub is
+
+ slnNextVar :: Solutions -> Maybe Solutions
+-slnNextVar Done = Nothing
++slnNextVar Done = Nothing
+ slnNextVar (TopVar x v _ _ is) = Just $ FixedVar x v $ startIter $ iLet x v is
+ slnNextVar (FixedVar x v i) = FixedVar x v `fmap` slnNextVar i
+
+@@ -716,9 +717,9 @@ instance Alternative Answer where
+
+ instance MonadPlus Answer where
+ mzero = None
+- mplus None x = x
++ mplus None x = x
+ -- mplus (Choice x y) z = mplus x (mplus y z)
+- mplus x y = Choice x y
++ mplus x y = Choice x y
+
+ instance Functor Answer where
+ fmap _ None = None
+@@ -881,14 +882,14 @@ instance Show Term where
+ ppTerm :: Term -> Doc
+ ppTerm (T k m) =
+ case Map.toList m of
+- [] -> integer k
+- xs | k /= 0 -> hsep (integer k : map ppProd xs)
+- x : xs -> hsep (ppFst x : map ppProd xs)
++ [] -> integer k
++ xs | k /= 0 -> hsep (integer k : map ppProd xs)
++ x : xs -> hsep (ppFst x : map ppProd xs)
+
+ where
+- ppFst (x,1) = ppName x
+- ppFst (x,-1) = text "-" <> ppName x
+- ppFst (x,n) = ppMul n x
++ ppFst (x,1) = ppName x
++ ppFst (x,-1) = text "-" <> ppName x
++ ppFst (x,n) = ppMul n x
+
+ ppProd (x,1) = text "+" <+> ppName x
+ ppProd (x,-1) = text "-" <+> ppName x
=====================================
p/haskell-presburger/debian/patches/fix-build-with-ghc-8.4.patch deleted
=====================================
@@ -1,12 +0,0 @@
-Index: haskell-presburger/src/Data/Integer/SAT.hs
-===================================================================
---- haskell-presburger.orig/src/Data/Integer/SAT.hs
-+++ haskell-presburger/src/Data/Integer/SAT.hs
-@@ -43,6 +43,7 @@ module Data.Integer.SAT
-
- import Debug.Trace
-
-+import Prelude hiding ((<>))
- import Data.Map (Map)
- import qualified Data.Map as Map
- import Data.List(partition)
=====================================
p/haskell-presburger/debian/patches/series
=====================================
@@ -1 +1,2 @@
-fix-build-with-ghc-8.4.patch
+fd7746dbc63d427ab5670341cd0fd13cb2c087b6.patch
+0b7ab4518debdd36add6bb967ef55e6be5dedfb9.patch
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/commit/f029ffcc1bdde6ac38c87cb396476b74d16dea77
--
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/commit/f029ffcc1bdde6ac38c87cb396476b74d16dea77
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-haskell-commits/attachments/20190825/0b90e576/attachment-0001.html>
More information about the Pkg-haskell-commits
mailing list