diff options
Diffstat (limited to 'dev-haskell/haskell-src-meta/files/haskell-src-meta-0.6.0.8-ghc-7.10.patch')
-rw-r--r-- | dev-haskell/haskell-src-meta/files/haskell-src-meta-0.6.0.8-ghc-7.10.patch | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/dev-haskell/haskell-src-meta/files/haskell-src-meta-0.6.0.8-ghc-7.10.patch b/dev-haskell/haskell-src-meta/files/haskell-src-meta-0.6.0.8-ghc-7.10.patch deleted file mode 100644 index e023b53d3401..000000000000 --- a/dev-haskell/haskell-src-meta/files/haskell-src-meta-0.6.0.8-ghc-7.10.patch +++ /dev/null @@ -1,70 +0,0 @@ -commit 24e6f45408083745080ff2f3710f58209041113c -Author: Luite Stegeman <stegeman@gmail.com> -Date: Sun Dec 28 21:33:22 2014 +0100 - - updates for GHC 7.10 and Template Haskell 2.10 - -diff --git a/haskell-src-meta.cabal b/haskell-src-meta.cabal -index de6a022..42d9619 100644 ---- a/haskell-src-meta.cabal -+++ b/haskell-src-meta.cabal -@@ -18,14 +18,14 @@ description: The translation from haskell-src-exts abstract syntax - extra-source-files: ChangeLog README examples/*.hs - - library -- build-depends: base >= 4.2 && < 4.8, -+ build-depends: base >= 4.2 && < 4.9, - haskell-src-exts == 1.16.*, - pretty >= 1.0 && < 1.2, - syb >= 0.1 && < 0.5, - th-orphans >= 0.5 && < 0.9 - - if impl(ghc >= 7.4) -- Build-depends: template-haskell >= 2.7 && < 2.10 -+ Build-depends: template-haskell >= 2.7 && < 2.11 - else - Build-depends: template-haskell >= 2.4 && < 2.7, - uniplate >= 1.3 && < 1.7 -diff --git a/src/Language/Haskell/Meta/Syntax/Translate.hs b/src/Language/Haskell/Meta/Syntax/Translate.hs -index 189d32e..36a08f1 100644 ---- a/src/Language/Haskell/Meta/Syntax/Translate.hs -+++ b/src/Language/Haskell/Meta/Syntax/Translate.hs -@@ -384,9 +384,15 @@ a .->. b = AppT (AppT ArrowT a) b - toCxt :: Hs.Context -> Cxt - toCxt = fmap toPred - where -+#if MIN_VERSION_template_haskell(2,10,0) -+ toPred (Hs.ClassA n ts) = foldl' AppT (ConT (toName n)) (fmap toType ts) -+ toPred (Hs.InfixA t1 n t2) = foldl' AppT (ConT (toName n)) (fmap toType [t1,t2]) -+ toPred (Hs.EqualP t1 t2) = foldl' AppT EqualityT (fmap toType [t1,t2]) -+#else - toPred (Hs.ClassA n ts) = ClassP (toName n) (fmap toType ts) - toPred (Hs.InfixA t1 n t2) = ClassP (toName n) (fmap toType [t1, t2]) - toPred (Hs.EqualP t1 t2) = EqualP (toType t1) (toType t2) -+#endif - toPred a@Hs.IParam{} = noTH "toCxt" a - - foldAppT :: Type -> [Type] -> Type -diff --git a/src/Language/Haskell/Meta/Utils.hs b/src/Language/Haskell/Meta/Utils.hs -index 36f7e96..d194f3e 100644 ---- a/src/Language/Haskell/Meta/Utils.hs -+++ b/src/Language/Haskell/Meta/Utils.hs -@@ -166,6 +166,9 @@ renameT env new (ForallT ns cxt t) = - unVarT (VarT n) = PlainTV n - renamePreds = renameThings renamePred - -+#if MIN_VERSION_template_haskell(2,10,0) -+ renamePred = renameT -+#else - renamePred env new (ClassP n ts) = let - (ts', env', new') = renameTs env new [] ts - in (ClassP (normaliseName n) ts', env', new') -@@ -174,7 +177,7 @@ renameT env new (ForallT ns cxt t) = - (t1', env1, new1) = renameT env new t1 - (t2', env2, new2) = renameT env1 new1 t2 - in (EqualP t1' t2', env2, new2) -- -+#endif - - -- | Remove qualification, etc. - normaliseName :: Name -> Name |