The IO type has moved to GHC.Types in ghc-prim
authorIan Lynagh <igloo@earth.li>
Sat, 20 Jun 2009 15:52:08 +0000 (15:52 +0000)
committerIan Lynagh <igloo@earth.li>
Sat, 20 Jun 2009 15:52:08 +0000 (15:52 +0000)
Foreign/C/String.hs
Foreign/Marshal/Alloc.hs
Foreign/Marshal/Array.hs
Foreign/Marshal/Utils.hs
Foreign/Ptr.hs
Foreign/Storable.hs
GHC/IO.hs
GHC/Storable.lhs

index 6d46a9e..2fb14d0 100644 (file)
@@ -99,7 +99,6 @@ import Data.Word
 import GHC.List
 import GHC.Real
 import GHC.Num
-import GHC.IO
 import GHC.Base
 #else
 import Data.Char ( chr, ord )
index 574e6a4..108058a 100644 (file)
@@ -40,7 +40,6 @@ import Foreign.Ptr              ( Ptr, nullPtr, FunPtr )
 
 #ifdef __GLASGOW_HASKELL__
 import Foreign.ForeignPtr       ( FinalizerPtr )
-import GHC.IO
 import GHC.IO.Exception
 import GHC.Real
 import GHC.Ptr
index bac13cd..89859d4 100644 (file)
@@ -68,7 +68,6 @@ import Foreign.Marshal.Alloc (mallocBytes, allocaBytes, reallocBytes)
 import Foreign.Marshal.Utils (copyBytes, moveBytes)
 
 #ifdef __GLASGOW_HASKELL__
-import GHC.IO
 import GHC.Num
 import GHC.List
 import GHC.Err
index 85d802e..d800afe 100644 (file)
@@ -53,7 +53,6 @@ import Foreign.C.Types          ( CSize )
 import Foreign.Marshal.Alloc    ( malloc, alloca )
 
 #ifdef __GLASGOW_HASKELL__
-import GHC.IO
 import GHC.Real                 ( fromIntegral )
 import GHC.Num
 import GHC.Base
index f6fac7d..564bb1c 100644 (file)
@@ -50,7 +50,6 @@ module Foreign.Ptr (
 
 #ifdef __GLASGOW_HASKELL__
 import GHC.Ptr
-import GHC.IO
 import GHC.Base
 import GHC.Num
 import GHC.Read
index 65b4193..832efb3 100644 (file)
@@ -47,7 +47,6 @@ import GHC.Int
 import GHC.Word
 import GHC.Ptr
 import GHC.Err
-import GHC.IO
 import GHC.Base
 #else
 import Data.Int
index fef57da..865a09c 100644 (file)
--- a/GHC/IO.hs
+++ b/GHC/IO.hs
@@ -1,3 +1,4 @@
+{-# OPTIONS_GHC -fno-warn-orphans #-}
 {-# OPTIONS_GHC -fno-implicit-prelude -funbox-strict-fields #-}
 {-# OPTIONS_HADDOCK hide #-}
 -----------------------------------------------------------------------------
@@ -64,21 +65,6 @@ Libraries - parts of hslibs/lang.
 --SDM
 -}
 
-{-|
-A value of type @'IO' a@ is a computation which, when performed,
-does some I\/O before returning a value of type @a@.  
-
-There is really only one way to \"perform\" an I\/O action: bind it to
-@Main.main@ in your program.  When your program is run, the I\/O will
-be performed.  It isn't possible to perform I\/O from an arbitrary
-function, unless that function is itself in the 'IO' monad and called
-at some point, directly or indirectly, from @Main.main@.
-
-'IO' is a monad, so 'IO' actions can be combined using either the do-notation
-or the '>>' and '>>=' operations from the 'Monad' class.
--}
-newtype IO a = IO (State# RealWorld -> (# State# RealWorld, a #))
-
 unIO :: IO a -> (State# RealWorld -> (# State# RealWorld, a #))
 unIO (IO a) = a
 
index 5aecb5e..982230c 100644 (file)
@@ -55,7 +55,6 @@ import GHC.Stable       ( StablePtr(..) )
 import GHC.Int
 import GHC.Word
 import GHC.Ptr
-import GHC.IO
 import GHC.Base
 \end{code}