Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Patch from upstream for epic build with ghc 7.6.1

  • Loading branch information...
commit 41cbc459f5cf3b499b564bbecd288f7251b1ac47 1 parent 948b15c
@markwright markwright authored
View
4 dev-lang/epic/epic-0.9.3.ebuild
@@ -7,7 +7,7 @@
EAPI=4
CABAL_FEATURES="bin lib profile haddock hoogle hscolour"
-inherit haskell-cabal
+inherit base haskell-cabal
DESCRIPTION="Compiler for a simple functional language"
HOMEPAGE="http://www.dcs.st-and.ac.uk/~eb/epic.php"
@@ -25,3 +25,5 @@ RDEPEND="dev-haskell/cabal
DEPEND="${RDEPEND}
>=dev-haskell/cabal-1.8.0.4
dev-haskell/happy"
+
+PATCHES=("${FILESDIR}/${PN}-0.9.3-ghc-7.6.patch")
View
53 dev-lang/epic/files/epic-0.9.3-ghc-7.6.patch
@@ -0,0 +1,53 @@
+--- epic-0.9.3-orig/Epic/Language.lhs 2012-02-28 10:44:29.000000000 +1100
++++ epic-0.9.3/Epic/Language.lhs 2012-09-14 16:20:29.841939337 +1000
+@@ -1,9 +1,14 @@
+-> {-# LANGUAGE FlexibleInstances, MultiParamTypeClasses,
++> {-# LANGUAGE FlexibleInstances, MultiParamTypeClasses, CPP,
+ > FunctionalDependencies #-}
+
+ > module Epic.Language where
+
+ > import Control.Monad
++#if MIN_VERSION_base(4,6,0)
++> import Control.Exception.Base
++#endif
++
++
+ > import System.IO
+ > import System.Directory
+ > import System.Environment
+@@ -379,7 +384,13 @@
+ > environment :: String -> IO (Maybe String)
+ > environment x = catch (do e <- getEnv x
+ > return (Just e))
+-> (\_ -> return Nothing)
++#if MIN_VERSION_base(4,6,0)
++> (\y-> do return (y::SomeException); return Nothing)
++#endif
++>
++#if !MIN_VERSION_base(4,6,0)
++> (\_-> return Nothing)
++#endif
+
+ Some tests
+
+--- epic-0.9.3-orig/Epic/CodegenC.lhs 2012-02-28 10:44:29.000000000 +1100
++++ epic-0.9.3/Epic/CodegenC.lhs 2012-09-14 16:13:48.061329048 +1000
+@@ -1,3 +1,4 @@
++> {-#LANGUAGE FlexibleContexts#-}
+ > module Epic.CodegenC where
+
+ > import Control.Monad.State
+@@ -98,10 +99,11 @@
+ > if (x>max) then put x else return ()
+
+ > cgs [] = return ""
++
+ > cgs (x:xs) = do xc <- cg x
+ > xsc <- cgs xs
+ > return $ xc ++ "\n" ++ xsc
+-
++> cg:: (MonadState Int m) => ByteOp -> m [Char]
+ > cg (CALL t fn args) = return $ tmp t ++ " = " ++ quickcall fn ++
+ > targs "(" args ++ ");"
+ > cg (TAILCALL t fn args)
Please sign in to comment.
Something went wrong with that request. Please try again.