Update Foreign.* for Safe Haskell now that they're safe by default
authorDavid Terei <code@davidterei.com>
Thu, 20 Nov 2014 02:00:11 +0000 (18:00 -0800)
committerDavid Terei <code@davidterei.com>
Fri, 21 Nov 2014 21:03:38 +0000 (13:03 -0800)
15 files changed:
compiler/ghci/RtClosureInspect.hs
compiler/main/InteractiveEval.hs
compiler/utils/FastString.lhs
compiler/utils/StringBuffer.lhs
ghc/InteractiveUI.hs
libraries/base/Foreign.hs
libraries/base/Foreign/ForeignPtr.hs
libraries/base/Foreign/ForeignPtr/Safe.hs
libraries/base/Foreign/Marshal.hs
libraries/base/Foreign/Marshal/Safe.hs
libraries/base/Foreign/Safe.hs
libraries/base/GHC/IO/Encoding/Iconv.hs
libraries/base/GHC/IO/Handle/Internals.hs
libraries/base/System/CPUTime.hsc
libraries/base/System/Environment.hs

index 953f9b5..fa97743 100644 (file)
@@ -69,7 +69,11 @@ import qualified Data.Sequence as Seq
 import Data.Monoid (mappend)
 #endif
 import Data.Sequence (viewl, ViewL(..))
+#if __GLASGOW_HASKELL__ >= 709
+import Foreign
+#else
 import Foreign.Safe
+#endif
 import System.IO.Unsafe
 
 ---------------------------------------------
index f25ed75..b22e10e 100644 (file)
@@ -83,7 +83,11 @@ import Data.Dynamic
 import Data.Either
 import Data.List (find)
 import Control.Monad
+#if __GLASGOW_HASKELL__ >= 709
+import Foreign
+#else
 import Foreign.Safe
+#endif
 import Foreign.C
 import GHC.Exts
 import Data.Array
index 4d98b2b..c1f7973 100644 (file)
@@ -118,7 +118,11 @@ import Data.List        ( elemIndex )
 
 import GHC.IO           ( IO(..), unsafeDupablePerformIO )
 
+#if __GLASGOW_HASKELL__ >= 709
+import Foreign
+#else
 import Foreign.Safe
+#endif
 
 #if STAGE >= 2
 import GHC.Conc.Sync    (sharedCAF)
index d298457..9e6e6c1 100644 (file)
@@ -57,7 +57,11 @@ import System.IO.Unsafe         ( unsafePerformIO )
 
 import GHC.Exts
 
+#if __GLASGOW_HASKELL__ >= 709
+import Foreign
+#else
 import Foreign.Safe
+#endif
 
 -- -----------------------------------------------------------------------------
 -- The StringBuffer type
index 7fdda0b..5038117 100644 (file)
@@ -81,7 +81,11 @@ import Data.Maybe
 import Exception hiding (catch)
 
 import Foreign.C
+#if __GLASGOW_HASKELL__ >= 709
+import Foreign
+#else
 import Foreign.Safe
+#endif
 
 import System.Directory
 import System.Environment
index 43ee102..b25e456 100644 (file)
@@ -1,4 +1,4 @@
-{-# LANGUAGE Unsafe #-}
+{-# LANGUAGE Safe #-}
 {-# LANGUAGE NoImplicitPrelude #-}
 
 -----------------------------------------------------------------------------
index 2e9b9ec..cedfba7 100644 (file)
@@ -1,4 +1,4 @@
-{-# LANGUAGE Unsafe #-}
+{-# LANGUAGE Trustworthy #-}
 {-# LANGUAGE NoImplicitPrelude #-}
 
 -----------------------------------------------------------------------------
@@ -43,5 +43,5 @@ module Foreign.ForeignPtr (
         , mallocForeignPtrArray0
     ) where
 
-import Foreign.ForeignPtr.Safe
+import Foreign.ForeignPtr.Imp
 
index 190e8b6..d8a7c53 100644 (file)
@@ -19,7 +19,7 @@
 --
 -----------------------------------------------------------------------------
 
-module Foreign.ForeignPtr.Safe (
+module Foreign.ForeignPtr.Safe {-# DEPRECATED "Safe is now the default, please use Foreign.ForeignPtr instead" #-} (
         -- * Finalised data pointers
           ForeignPtr
         , FinalizerPtr
index 9336549..15bed17 100644 (file)
@@ -1,4 +1,4 @@
-{-# LANGUAGE Unsafe #-}
+{-# LANGUAGE Safe #-}
 {-# LANGUAGE NoImplicitPrelude #-}
 
 -----------------------------------------------------------------------------
 
 module Foreign.Marshal
         (
-         -- | The module "Foreign.Marshal" re-exports the safe content in the
-         -- @Foreign.Marshal@ hierarchy:
-          module Foreign.Marshal.Safe
+         -- | The module "Foreign.Marshal.Safe" re-exports the other modules in the
+         -- @Foreign.Marshal@ hierarchy (except for @Foreign.Marshal.Unsafe@):
+          module Foreign.Marshal.Alloc
+        , module Foreign.Marshal.Array
+        , module Foreign.Marshal.Error
+        , module Foreign.Marshal.Pool
+        , module Foreign.Marshal.Utils
         ) where
 
-import Foreign.Marshal.Safe
+import Foreign.Marshal.Alloc
+import Foreign.Marshal.Array
+import Foreign.Marshal.Error
+import Foreign.Marshal.Pool
+import Foreign.Marshal.Utils
 
index 85bad2b..5cc2982 100644 (file)
@@ -17,7 +17,7 @@
 --
 -----------------------------------------------------------------------------
 
-module Foreign.Marshal.Safe
+module Foreign.Marshal.Safe {-# DEPRECATED "Safe is now the default, please use Foreign.Marshal instead" #-}
         (
          -- | The module "Foreign.Marshal.Safe" re-exports the other modules in the
          -- @Foreign.Marshal@ hierarchy:
index 9809aff..6b84d17 100644 (file)
 --
 -----------------------------------------------------------------------------
 
-module Foreign.Safe
+module Foreign.Safe {-# DEPRECATED "Safe is now the default, please use Foreign instead" #-}
         ( module Data.Bits
         , module Data.Int
         , module Data.Word
         , module Foreign.Ptr
-        , module Foreign.ForeignPtr.Safe
+        , module Foreign.ForeignPtr
         , module Foreign.StablePtr
         , module Foreign.Storable
-        , module Foreign.Marshal.Safe
+        , module Foreign.Marshal
         ) where
 
 import Data.Bits
 import Data.Int
 import Data.Word
 import Foreign.Ptr
-import Foreign.ForeignPtr.Safe
+import Foreign.ForeignPtr
 import Foreign.StablePtr
 import Foreign.Storable
-import Foreign.Marshal.Safe
+import Foreign.Marshal
 
index 892f844..89ca71e 100644 (file)
@@ -33,7 +33,7 @@ module GHC.IO.Encoding.Iconv (
 import GHC.Base () -- For build ordering
 #else
 
-import Foreign.Safe
+import Foreign
 import Foreign.C
 import Data.Maybe
 import GHC.Base
index 2865136..99cfb31 100644 (file)
@@ -74,7 +74,7 @@ import GHC.IORef
 import GHC.MVar
 import Data.Typeable
 import Data.Maybe
-import Foreign.Safe
+import Foreign
 import System.Posix.Internals hiding (FD)
 
 import Foreign.C
index 1d2f341..e09439c 100644 (file)
@@ -26,7 +26,7 @@ module System.CPUTime
 
 import Data.Ratio
 
-import Foreign.Safe
+import Foreign
 import Foreign.C
 
 -- For struct rusage
index ee91b78..9beefc4 100644 (file)
@@ -29,7 +29,7 @@ module System.Environment
       getEnvironment,
   ) where
 
-import Foreign.Safe
+import Foreign
 import Foreign.C
 import System.IO.Error (mkIOError)
 import Control.Exception.Base (bracket, throwIO)