Commit e761a777 authored by Ian Lynagh's avatar Ian Lynagh

Remove code that isn't used now that we assume that GHC >= 6.4

parent d78ab147
/* Grab rawSystem from the library sources iff we're bootstrapping with an
* old version of GHC.
*/
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
#include "../../libraries/base/cbits/rawSystem.c"
#endif
......@@ -86,11 +86,7 @@ errMsgTc :: TyCon
errMsgTc = mkTyCon "ErrMsg"
{-# NOINLINE errMsgTc #-}
instance Typeable ErrMsg where
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 603
typeOf _ = mkAppTy errMsgTc []
#else
typeOf _ = mkTyConApp errMsgTc []
#endif
type WarnMsg = ErrMsg
......
......@@ -46,17 +46,6 @@ import System.Exit
import System.IO
import Data.List
#if !defined(__GLASGOW_HASKELL__) || __GLASGOW_HASKELL__ >= 601
-- already imported above
--import System.IO ( openBinaryFile )
#else
import IOExts ( openFileEx, IOModeEx(..) )
#endif
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
openBinaryFile fp mode = openFileEx fp (BinaryMode mode)
#endif
getImports :: DynFlags -> StringBuffer -> FilePath -> FilePath
-> IO ([Located ModuleName], [Located ModuleName], Located ModuleName)
getImports dflags buf filename source_filename = do
......
......@@ -428,9 +428,6 @@ xs `isContainedIn` ys = any (xs `isPrefixOf`) (tails ys)
-- binaries (see bug #1110).
getGccEnv :: [Option] -> IO (Maybe [(String,String)])
getGccEnv opts =
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 603
return Nothing
#else
if null b_dirs
then return Nothing
else do env <- getEnvironment
......@@ -444,7 +441,6 @@ getGccEnv opts =
mangle_path (path,paths) | map toUpper path == "PATH"
= (path, '\"' : head b_dirs ++ "\";" ++ paths)
mangle_path other = other
#endif
runMangle :: DynFlags -> [Option] -> IO ()
runMangle dflags args = do
......@@ -681,11 +677,6 @@ runSomethingFiltered dflags filter_fn phase_name pgm args mb_env = do
-- to test for this in general.)
(\ err ->
if IO.isDoesNotExistError err
#if defined(mingw32_HOST_OS) && __GLASGOW_HASKELL__ < 604
-- the 'compat' version of rawSystem under mingw32 always
-- maps 'errno' to EINVAL to failure.
|| case (ioeGetErrorType err ) of { InvalidArgument{} -> True ; _ -> False}
#endif
then return (ExitFailure 1, True)
else IO.ioError err)
case (doesn'tExist, exit_code) of
......@@ -696,10 +687,6 @@ runSomethingFiltered dflags filter_fn phase_name pgm args mb_env = do
builderMainLoop :: DynFlags -> (String -> String) -> FilePath
-> [String] -> Maybe [(String, String)]
-> IO ExitCode
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 603
builderMainLoop dflags filter_fn pgm real_args mb_env = do
rawSystem pgm real_args
#else
builderMainLoop dflags filter_fn pgm real_args mb_env = do
chan <- newChan
(hStdIn, hStdOut, hStdErr, hProcess) <- runInteractiveProcess pgm real_args Nothing mb_env
......@@ -810,7 +797,6 @@ data BuildMessage
= BuildMsg !SDoc
| BuildError !SrcLoc !SDoc
| EOF
#endif
showOpt :: Option -> String
showOpt (FileOption pre f) = pre ++ f
......
......@@ -79,17 +79,7 @@ import GHC.Real ( Ratio(..) )
import GHC.Exts
import GHC.IOBase ( IO(..) )
import GHC.Word ( Word8(..) )
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
-- openFileEx is available from the lang package, but we want to
-- be independent of hslibs libraries.
import GHC.Handle ( openFileEx, IOModeEx(..) )
#else
import System.IO ( openBinaryFile )
#endif
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
openBinaryFile f mode = openFileEx f (BinaryMode mode)
#endif
type BinArray = ForeignPtr Word8
......
......@@ -573,10 +573,6 @@ pokeCAString ptr str =
in
go str 0
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ <= 602
peekCAStringLen = peekCStringLen
#endif
{-# NOINLINE sLit #-}
sLit :: String -> LitString
sLit x = mkLitString x
......
......@@ -31,7 +31,7 @@ import FastTypes
import System.Posix.Signals
#endif /* mingw32_HOST_OS */
#if defined(mingw32_HOST_OS) && __GLASGOW_HASKELL__ >= 603
#if defined(mingw32_HOST_OS)
import GHC.ConsoleHandler
#endif
......@@ -116,18 +116,11 @@ showGhcException (Panic s)
++ s ++ "\n\n"
++ "Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug\n")
myMkTyConApp :: TyCon -> [TypeRep] -> TypeRep
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 603
myMkTyConApp = mkAppTy
#else
myMkTyConApp = mkTyConApp
#endif
ghcExceptionTc :: TyCon
ghcExceptionTc = mkTyCon "GhcException"
{-# NOINLINE ghcExceptionTc #-}
instance Typeable GhcException where
typeOf _ = myMkTyConApp ghcExceptionTc []
typeOf _ = mkTyConApp ghcExceptionTc []
\end{code}
Panics and asserts.
......@@ -198,7 +191,7 @@ installSignalHandlers = do
installHandler sigQUIT (Catch interrupt) Nothing
installHandler sigINT (Catch interrupt) Nothing
return ()
#elif __GLASGOW_HASKELL__ >= 603
#else
-- GHC 6.3+ has support for console events on Windows
-- NOTE: running GHCi under a bash shell for some reason requires
-- you to press Ctrl-Break rather than Ctrl-C to provoke
......@@ -210,8 +203,6 @@ installSignalHandlers = do
installHandler (Catch sig_handler)
return ()
#else
return () -- nothing
#endif
{-# NOINLINE interruptTargetThread #-}
......
......@@ -49,15 +49,7 @@ import System.IO ( hGetBuf, hFileSize,IOMode(ReadMode), hClose
import GHC.Exts
#if !defined(__GLASGOW_HASKELL__) || __GLASGOW_HASKELL__ >= 601
import System.IO ( openBinaryFile )
#else
import IOExts ( openFileEx, IOModeEx(..) )
#endif
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
openBinaryFile fp mode = openFileEx fp (BinaryMode mode)
#endif
-- -----------------------------------------------------------------------------
-- The StringBuffer type
......
......@@ -405,16 +405,6 @@ isn'tIn msg x ys
# endif /* DEBUG */
\end{code}
foldl1' was added in GHC 6.4
\begin{code}
#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 604
foldl1' :: (a -> a -> a) -> [a] -> a
foldl1' f (x:xs) = foldl' f x xs
foldl1' _ [] = panic "foldl1'"
#endif
\end{code}
%************************************************************************
%* *
\subsubsection[Utils-Carsten-mergesort]{A mergesort from Carsten}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment