Remove legacy code that isn't used now that we require GHC >= 6.8
authorIan Lynagh <igloo@earth.li>
Sun, 24 May 2009 20:44:12 +0000 (20:44 +0000)
committerIan Lynagh <igloo@earth.li>
Sun, 24 May 2009 20:44:12 +0000 (20:44 +0000)
compiler/basicTypes/UniqSupply.lhs
compiler/simplCore/CoreMonad.lhs
compiler/utils/FastFunctions.lhs
compiler/utils/IOEnv.hs

index 774d2d2..cb1a1fc 100644 (file)
@@ -31,13 +31,7 @@ import FastTypes
 import MonadUtils
 import Control.Monad
 import Control.Monad.Fix
-#if __GLASGOW_HASKELL__ >= 607
 import GHC.IOBase (unsafeDupableInterleaveIO)
-#else
-import System.IO.Unsafe ( unsafeInterleaveIO )
-unsafeDupableInterleaveIO :: IO a -> IO a
-unsafeDupableInterleaveIO = unsafeInterleaveIO
-#endif
 
 \end{code}
 
index 90b062f..ae45ba4 100644 (file)
@@ -125,12 +125,9 @@ instance Applicative CoreM where
 
 -- For use if the user has imported Control.Monad.Error from MTL
 -- Requires UndecidableInstances
-#if __GLASGOW_HASKELL__ > 606
--- see instance MonadPlus IOEnv
 instance MonadPlus IO => MonadPlus CoreM where
     mzero = CoreM (const mzero)
     m `mplus` n = CoreM (\rs -> unCoreM m rs `mplus` unCoreM n rs)
-#endif
 
 instance MonadUnique CoreM where
     getUniqueSupplyM = do
index aca5344..86c89bd 100644 (file)
@@ -23,17 +23,9 @@ import System.IO.Unsafe
 import GHC.Exts
 import GHC.Word
 import GHC.IOBase (IO(..))
---why not import it at __GLASGOW_HASKELL__==606 ?
-#if __GLASGOW_HASKELL__ >= 607
 import GHC.IOBase (unsafeDupableInterleaveIO)
-#endif
 import GHC.Base (unsafeChr)
 
-#if __GLASGOW_HASKELL__ < 607
-unsafeDupableInterleaveIO :: IO a -> IO a
-unsafeDupableInterleaveIO = unsafeInterleaveIO
-#endif
-
 -- Just like unsafePerformIO, but we inline it.
 {-# INLINE inlinePerformIO #-}
 inlinePerformIO :: IO a -> a
index 5f354f0..305e30e 100644 (file)
@@ -139,15 +139,9 @@ unsafeInterleaveM (IOEnv m) = IOEnv (\ env -> unsafeInterleaveIO (m env))
 
 -- For use if the user has imported Control.Monad.Error from MTL
 -- Requires UndecidableInstances
-#if __GLASGOW_HASKELL__ > 606
--- for some reason, this doesn't compile with GHC 6.6:
--- utils/IOEnv.hs:144:33:
---     No instance for (MonadPlus IO)
---       arising from use of `mplus' at utils/IOEnv.hs:144:33-67
 instance MonadPlus IO => MonadPlus (IOEnv env) where
     mzero = IOEnv (const mzero)
     m `mplus` n = IOEnv (\env -> unIOEnv m env `mplus` unIOEnv n env)
-#endif
 
 ----------------------------------------------------------------------
 -- Accessing input/output