summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-haskell/pcre-light/files/pcre-light-0.4-ghc-7.7.patch')
-rw-r--r--dev-haskell/pcre-light/files/pcre-light-0.4-ghc-7.7.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/dev-haskell/pcre-light/files/pcre-light-0.4-ghc-7.7.patch b/dev-haskell/pcre-light/files/pcre-light-0.4-ghc-7.7.patch
new file mode 100644
index 000000000000..2b4181929f60
--- /dev/null
+++ b/dev-haskell/pcre-light/files/pcre-light-0.4-ghc-7.7.patch
@@ -0,0 +1,39 @@
+diff --git a/Text/Regex/PCRE/Light.hs b/Text/Regex/PCRE/Light.hs
+index 80c28a0..7fc9581 100644
+--- a/Text/Regex/PCRE/Light.hs
++++ b/Text/Regex/PCRE/Light.hs
+@@ -77,6 +77,7 @@ import qualified Data.ByteString as S
+ #if __GLASGOW_HASKELL__ >= 608
+ import qualified Data.ByteString.Internal as S
+ import qualified Data.ByteString.Unsafe as S
++import qualified System.IO.Unsafe as U
+ #else
+ import qualified Data.ByteString.Base as S
+ #endif
+@@ -193,7 +194,7 @@ compile s o = case compileM s o of
+ -- > Left "nothing to repeat"
+ --
+ compileM :: S.ByteString -> [PCREOption] -> Either String Regex
+-compileM str os = unsafePerformIO $
++compileM str os = U.unsafePerformIO $
+ S.useAsCString str $ \pattern -> do
+ alloca $ \errptr -> do
+ alloca $ \erroffset -> do
+@@ -263,7 +264,7 @@ compileM str os = unsafePerformIO $
+ -- is returned.
+ --
+ match :: Regex -> S.ByteString -> [PCREExecOption] -> Maybe [S.ByteString]
+-match (Regex pcre_fp _) subject os = unsafePerformIO $ do
++match (Regex pcre_fp _) subject os = U.unsafePerformIO $ do
+ withForeignPtr pcre_fp $ \pcre_ptr -> do
+ n_capt <- captureCount' pcre_ptr
+
+@@ -324,7 +325,7 @@ match (Regex pcre_fp _) subject os = unsafePerformIO $ do
+
+
+ captureCount :: Regex -> Int
+-captureCount (Regex pcre_fp _) = unsafePerformIO $ do
++captureCount (Regex pcre_fp _) = U.unsafePerformIO $ do
+ withForeignPtr pcre_fp $ \pcre_ptr -> do
+ captureCount' pcre_ptr
+