summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
7c7104a)
Modules that need it import it themselves instead.
118 files changed:
#define WARN(e,msg) if False && (e) then pprPanic "WARN" (msg) else
#endif
#define WARN(e,msg) if False && (e) then pprPanic "WARN" (msg) else
#endif
--- This conditional lets us switch off the "import FastString"
--- when compiling FastString itself, or when compiling modules that
--- don't use it (and would otherwise get warnings, which we treat
--- as errors). Can we do this more nicely?
-#if !defined(COMPILING_FAST_STRING) && !defined(FAST_STRING_NOT_NEEDED)
---
-import qualified FastString as FS
-#endif
-
#if defined(__GLASGOW_HASKELL__)
#if defined(__GLASGOW_HASKELL__)
-#define SLIT(x) (FS.mkLitString# (x#))
-#define FSLIT(x) (FS.mkFastString# (x#))
+#define SLIT(x) (FastString.mkLitString# (x#))
+#define FSLIT(x) (FastString.mkFastString# (x#))
-#define SLIT(x) (FS.mkLitString (x))
-#define FSLIT(x) (FS.mkFastString (x))
+#define SLIT(x) (FastString.mkLitString (x))
+#define FSLIT(x) (FastString.mkFastString (x))
#endif
-- Useful for declaring arguments to be strict
#endif
-- Useful for declaring arguments to be strict
-import FastString( FastString )
import Outputable
\end{code}
import Outputable
\end{code}
import NewDemand
import Outputable
import Module
import NewDemand
import Outputable
import Module
elemNameEnv, mapNameEnv
) where
elemNameEnv, mapNameEnv
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Name
#include "HsVersions.h"
import Name
findUses, duDefs, duUses, allUses
) where
findUses, duDefs, duUses, allUses
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Name
#include "HsVersions.h"
import Name
pprIfaceStrictSig, appIsBottom, isBottomingSig, seqStrictSig,
) where
pprIfaceStrictSig, appIsBottom, isBottomingSig, seqStrictSig,
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import StaticFlags
#include "HsVersions.h"
import StaticFlags
import Outputable
import FastTypes
import StaticFlags
import Outputable
import FastTypes
import StaticFlags
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Var
#include "HsVersions.h"
import Var
import Unique
import Maybe
import List
import Unique
import Maybe
import List
type_lit = packHalfWordsCLit cl_type srt_len
type_lit = packHalfWordsCLit cl_type srt_len
-
-_unused :: FS.FastString -- stops a warning
-_unused = undefined
import PprCmm
import Unique
import Constants
import PprCmm
import Unique
import Constants
isPicReg (CmmReg (CmmGlobal PicBaseReg)) = True
isPicReg _ = False
isPicReg (CmmReg (CmmGlobal PicBaseReg)) = True
isPicReg _ = False
-_unused :: FS.FastString -- stops a warning
-_unused = undefined
import Constants
import Outputable
import Constants
import Outputable
-- -----------------------------------------------------------------------------
-- MachRep
-- -----------------------------------------------------------------------------
-- MachRep
freshBlockId :: String -> UniqSM BlockId
freshBlockId _ = do { u <- getUniqueUs; return $ BlockId u }
freshBlockId :: String -> UniqSM BlockId
freshBlockId _ = do { u <- getUniqueUs; return $ BlockId u }
-_unused :: FS.FastString
-_unused = undefined
--- stop warnings about things that aren't used
-_unused :: {-State#-} () -> FS.FastString
-_unused = undefined panic
-
-
data FuelState = FuelState { fs_fuellimit :: OptimizationFuel, fs_lastpass :: String }
newtype FuelMonad a = FuelMonad (FuelState -> (a, FuelState))
data FuelState = FuelState { fs_fuellimit :: OptimizationFuel, fs_lastpass :: String }
newtype FuelMonad a = FuelMonad (FuelState -> (a, FuelState))
where pprBlock (Block id tail) = ppr id <> colon $$ ppr tail
blocks = postorder_dfs_from blockenv tail
where pprBlock (Block id tail) = ppr id <> colon $$ ppr tail
blocks = postorder_dfs_from blockenv tail
-_unused :: FS.FastString
-_unused = undefined
where pprFacts env = nest 2 $ vcat $ map pprFact $ ufmToList env
pprFact (id, a) = hang (ppr id <> colon) 4 (ppr a)
where pprFacts env = nest 2 $ vcat $ map pprFact $ ufmToList env
pprFact (id, a) = hang (ppr id <> colon) 4 (ppr a)
-
-_unused :: FS.FastString
-_unused = undefined
-
null_b_ft = BComp "do nothing" Nothing no2 no2 no2
where no2 _ _ = Nothing
null_b_ft = BComp "do nothing" Nothing no2 no2 no2
where no2 _ _ = Nothing
import Unique
import UniqSet
import Outputable
import Unique
import UniqSet
import Outputable
import Outputable
import ListSetOps
import Util
import Outputable
import ListSetOps
import Util
import Constants
import StaticFlags
import Outputable
import Constants
import StaticFlags
import Outputable
import Constants
import PackageConfig
import Outputable
import Constants
import PackageConfig
import Outputable
import Data.List
\end{code}
import Data.List
\end{code}
import SMRep
import Constants
import Outputable
import SMRep
import Constants
import Outputable
-- ---------------------------------------------------------------------------
-- Code generation for PrimOps
-- ---------------------------------------------------------------------------
-- Code generation for PrimOps
-Some things are unused.
-\begin{code}
-_unused :: FS.FastString
-_unused = undefined
-\end{code}
import StaticFlags
import Constants
import Outputable
import StaticFlags
import Constants
import Outputable
import Data.Word
\end{code}
import Data.Word
\end{code}
freeVarsOf -- CoreExprWithFVs -> IdSet
) where
freeVarsOf -- CoreExprWithFVs -> IdSet
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import CoreSyn
#include "HsVersions.h"
import CoreSyn
import ListSetOps
import DynFlags
import Outputable
import ListSetOps
import DynFlags
import Outputable
import Util
import Data.Maybe
\end{code}
import Util
import Data.Maybe
\end{code}
import Util
import Outputable
import MonadUtils
import Util
import Outputable
import MonadUtils
\end{code}
-- ---------------------------------------------------------------------------
\end{code}
-- ---------------------------------------------------------------------------
import Maybes
import Outputable
import PprCore () -- Instances
import Maybes
import Outputable
import PprCore () -- Instances
import Data.List
\end{code}
import Data.List
\end{code}
tidyExpr, tidyVarOcc, tidyRule, tidyRules
) where
tidyExpr, tidyVarOcc, tidyRule, tidyRules
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import CoreSyn
#include "HsVersions.h"
import CoreSyn
import PrelNames
import Bag
import FastTypes
import PrelNames
import Bag
import FastTypes
import Outputable
\end{code}
import Outputable
\end{code}
module DsGRHSs ( dsGuarded, dsGRHSs ) where
module DsGRHSs ( dsGuarded, dsGRHSs ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import {-# SOURCE #-} DsExpr ( dsLExpr, dsLocalBinds )
#include "HsVersions.h"
import {-# SOURCE #-} DsExpr ( dsLExpr, dsLocalBinds )
module DsListComp ( dsListComp, dsPArrComp ) where
module DsListComp ( dsListComp, dsPArrComp ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import {-# SOURCE #-} DsExpr ( dsLExpr, dsLocalBinds )
#include "HsVersions.h"
import {-# SOURCE #-} DsExpr ( dsLExpr, dsLocalBinds )
import DynFlags
import ErrUtils
import MonadUtils
import DynFlags
import ErrUtils
import MonadUtils
import Data.IORef
\end{code}
import Data.IORef
\end{code}
import Util
import Name
import Outputable
import Util
import Name
import Outputable
\end{code}
This function is a wrapper of @match@, it must be called from all the parts where
\end{code}
This function is a wrapper of @match@, it must be called from all the parts where
module MatchCon ( matchConFamily ) where
module MatchCon ( matchConFamily ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import {-# SOURCE #-} Match ( match )
#include "HsVersions.h"
import {-# SOURCE #-} Match ( match )
import TysWiredIn
import Outputable
import TysWiredIn
import Outputable
import Panic
#ifndef GHCI_TABLES_NEXT_TO_CODE
import Panic
#ifndef GHCI_TABLES_NEXT_TO_CODE
import Util
import Var
import Bag
import Util
import Var
import Bag
\end{code}
%************************************************************************
\end{code}
%************************************************************************
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Outputable
#include "HsVersions.h"
import Outputable
import Outputable
import SrcLoc ( Located(..) )
import Module ( Module, ModuleName )
import Outputable
import SrcLoc ( Located(..) )
import Module ( Module, ModuleName )
\end{code}
All we actually declare here is the top-level structure for a module.
\end{code}
All we actually declare here is the top-level structure for a module.
import SrcLoc
import StaticFlags
import Outputable
import SrcLoc
import StaticFlags
import Outputable
import BinIface
import Panic
import Util
import BinIface
import Panic
import Util
import Control.Monad
import Data.List
import Control.Monad
import Data.List
import SrcLoc
import DynFlags
import Util
import SrcLoc
import DynFlags
import Util
import Data.List
import Data.Maybe
\end{code}
import Data.List
import Data.Maybe
\end{code}
CmdLineP(..), getCmdLineState, putCmdLineState
) where
CmdLineP(..), getCmdLineState, putCmdLineState
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Util
#include "HsVersions.h"
import Util
-- we want; if we just hope a -I... will get the right one, we could
-- be in trouble.
-- we want; if we just hope a -I... will get the right one, we could
-- be in trouble.
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
#include "../includes/MachRegs.h"
#include "../includes/Constants.h"
#include "HsVersions.h"
#include "../includes/MachRegs.h"
#include "../includes/Constants.h"
import SrcLoc
import Data.List
import CmdLineParser
import SrcLoc
import Data.List
import CmdLineParser
import ErrUtils ( debugTraceMsg, putMsg )
import ErrUtils ( debugTraceMsg, putMsg )
import ParserCoreUtils ( getCoreModuleName )
import SrcLoc ( unLoc )
import SrcLoc ( Located(..) )
import ParserCoreUtils ( getCoreModuleName )
import SrcLoc ( unLoc )
import SrcLoc ( Located(..) )
import Control.Exception as Exception
import Data.IORef ( readIORef, writeIORef, IORef )
import Control.Exception as Exception
import Data.IORef ( readIORef, writeIORef, IORef )
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Module
#include "HsVersions.h"
import Module
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Bag ( Bag, bagToList, isEmptyBag, emptyBag )
#include "HsVersions.h"
import Bag ( Bag, bagToList, isEmptyBag, emptyBag )
import Maybes ( expectJust, mapCatMaybes )
import HaddockParse
import HaddockLex ( tokenise )
import Maybes ( expectJust, mapCatMaybes )
import HaddockParse
import HaddockLex ( tokenise )
import Control.Concurrent
import System.Directory ( getModificationTime, doesFileExist,
import Control.Concurrent
import System.Directory ( getModificationTime, doesFileExist,
\begin{code}
module HscStats ( ppSourceStats ) where
\begin{code}
module HscStats ( ppSourceStats ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import HsSyn
#include "HsVersions.h"
import HsSyn
import SrcLoc ( SrcSpan, Located )
import LazyUniqFM ( lookupUFM, eltsUFM, emptyUFM )
import UniqSupply ( UniqSupply )
import SrcLoc ( SrcSpan, Located )
import LazyUniqFM ( lookupUFM, eltsUFM, emptyUFM )
import UniqSupply ( UniqSupply )
-import FastString ( FastString )
import StringBuffer ( StringBuffer )
import System.FilePath
import StringBuffer ( StringBuffer )
import System.FilePath
import Distribution.Version
import Distribution.Compat.ReadP ( readP_to_S )
import Distribution.Version
import Distribution.Compat.ReadP ( readP_to_S )
--- warning suppression
-_unused :: FS.FastString
-_unused = FSLIT("")
-
-- -----------------------------------------------------------------------------
-- Our PackageConfig type is just InstalledPackageInfo from Cabal. Later we
-- might need to extend it with some GHC-specific stuff, but for now it's fine.
-- -----------------------------------------------------------------------------
-- Our PackageConfig type is just InstalledPackageInfo from Cabal. Later we
-- might need to extend it with some GHC-specific stuff, but for now it's fine.
import Var
import Name
import Outputable
import Var
import Name
import Outputable
-- -----------------------------------------------------------------------------
-- Pretty-printing entities that we get from the GHC API
-- -----------------------------------------------------------------------------
-- Pretty-printing entities that we get from the GHC API
import CmdLineParser
import Config
import CmdLineParser
import Config
-import FastString ( FastString, mkFastString )
import Util
import Maybes ( firstJust )
import Panic
import Util
import Maybes ( firstJust )
import Panic
import System.Process ( runInteractiveProcess, getProcessExitCode )
import Control.Concurrent( forkIO, newChan, readChan, writeChan )
import System.Process ( runInteractiveProcess, getProcessExitCode )
import Control.Concurrent( forkIO, newChan, readChan, writeChan )
-import FastString ( mkFastString )
import SrcLoc ( SrcLoc, mkSrcLoc, noSrcSpan, mkSrcSpan )
\end{code}
import SrcLoc ( SrcLoc, mkSrcLoc, noSrcSpan, mkSrcSpan )
\end{code}
import Data.List ( partition )
import Data.Maybe ( isJust )
import Data.IORef ( IORef, readIORef, writeIORef )
import Data.List ( partition )
import Data.Maybe ( isJust )
import Data.IORef ( IORef, readIORef, writeIORef )
-
-_dummy :: FS.FastString
-_dummy = FSLIT("")
import Panic ( panic )
import DynFlags
import Panic ( panic )
import DynFlags
-- The most important function here is cmmMakeDynamicReference.
-- The most important function here is cmmMakeDynamicReference.
import UniqSupply
import Outputable
import State
import UniqSupply
import Outputable
import State
import Data.Maybe
import Data.List
import Data.Maybe
import Data.List
import UniqSupply
import Bag
import State
import UniqSupply
import Bag
import State
import Data.List
import Data.Maybe
import Data.List
import Data.Maybe
-import FastString ( FastString, unpackFS )
import Char ( isAlphaNum )
import Binary
import Outputable
import Char ( isAlphaNum )
import Binary
import Outputable
import Unique ( mkAlphaTyVarUnique, pprUnique )
import PrelNames
import StaticFlags
import Unique ( mkAlphaTyVarUnique, pprUnique )
import PrelNames
import StaticFlags
-import FastString ( FastString, mkFastString )
import Outputable
import Char ( ord, chr )
import Outputable
import Char ( ord, chr )
\begin{code}
module SCCfinal ( stgMassageForProfiling ) where
\begin{code}
module SCCfinal ( stgMassageForProfiling ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import StgSyn
#include "HsVersions.h"
import StgSyn
import Digraph ( SCC(..), stronglyConnComp )
import Bag
import Outputable
import Digraph ( SCC(..), stronglyConnComp )
import Bag
import Outputable
import Maybes ( orElse )
import Util ( filterOut )
import Monad ( foldM, unless )
import Maybes ( orElse )
import Util ( filterOut )
import Monad ( foldM, unless )
import BasicTypes ( DeprecTxt, Fixity )
import DriverPhases ( isHsBoot )
import Util
import BasicTypes ( DeprecTxt, Fixity )
import DriverPhases ( isHsBoot )
import Util
import ListSetOps
import Data.List ( partition, concatMap, (\\), delete )
import IO ( openFile, IOMode(..) )
import ListSetOps
import Data.List ( partition, concatMap, (\\), delete )
import IO ( openFile, IOMode(..) )
import LazyUniqFM
import OccName
import Outputable
import LazyUniqFM
import OccName
import Outputable
import SrcLoc ( Located(..), unLoc, noLoc )
import DynFlags ( DynFlag(..) )
import Maybe ( isNothing )
import SrcLoc ( Located(..), unLoc, noLoc )
import DynFlags ( DynFlag(..) )
import Maybe ( isNothing )
import BasicTypes ( compareFixity, funTyFixity, negateFixity,
Fixity(..), FixityDirection(..) )
import Outputable
import BasicTypes ( compareFixity, funTyFixity, negateFixity,
Fixity(..), FixityDirection(..) )
import Outputable
#include "HsVersions.h"
\end{code}
#include "HsVersions.h"
\end{code}
import BasicTypes ( isAlwaysActive )
import Util ( lengthExceeds )
import UniqFM
import BasicTypes ( isAlwaysActive )
import Util ( lengthExceeds )
import UniqFM
import Data.List
\end{code}
import Data.List
\end{code}
import UniqSupply ( UniqSupply )
import List ( partition )
import Outputable
import UniqSupply ( UniqSupply )
import List ( partition )
import Outputable
\end{code}
-----------------
\end{code}
-----------------
occurAnalysePgm, occurAnalyseExpr
) where
occurAnalysePgm, occurAnalyseExpr
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import CoreSyn
#include "HsVersions.h"
import CoreSyn
import Util
import MonadUtils
import Outputable
import Util
import MonadUtils
import Outputable
import Data.List
\end{code}
import Data.List
\end{code}
import Unique ( Unique )
import Maybes ( expectJust )
import FiniteMap ( FiniteMap, emptyFM, isEmptyFM, lookupFM, addToFM, plusFM_C, fmToList )
import Unique ( Unique )
import Maybes ( expectJust )
import FiniteMap ( FiniteMap, emptyFM, isEmptyFM, lookupFM, addToFM, plusFM_C, fmToList )
-import FastString ( FastString )
import Outputable
import FastTypes
import Outputable
import FastTypes
import Util
import MonadUtils
import Outputable
import Util
import MonadUtils
import Outputable
import List( nub )
\end{code}
import List( nub )
\end{code}
import Maybes ( orElse )
import Data.List ( mapAccumL )
import Outputable
import Maybes ( orElse )
import Data.List ( mapAccumL )
import Outputable
module SRT( computeSRTs ) where
module SRT( computeSRTs ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import StgSyn
#include "HsVersions.h"
import StgSyn
\begin{code}
module SimplStg ( stg2stg ) where
\begin{code}
module SimplStg ( stg2stg ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import StgSyn
#include "HsVersions.h"
import StgSyn
module StgStats ( showStgStats ) where
module StgStats ( showStgStats ) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import StgSyn
#include "HsVersions.h"
import StgSyn
import Module
import Outputable
import MonadUtils
import Module
import Outputable
import MonadUtils
import Util ( zipEqual, equalLength )
import SrcLoc ( srcLocSpan )
import Outputable
import Util ( zipEqual, equalLength )
import SrcLoc ( srcLocSpan )
import Outputable
import Control.Monad
\end{code}
import Control.Monad
\end{code}
import Bitmap
import StaticFlags ( opt_SccProfilingOn )
import Module
import Bitmap
import StaticFlags ( opt_SccProfilingOn )
import Module
\end{code}
%************************************************************************
\end{code}
%************************************************************************
import Unique
import Util ( zipWithEqual, notNull )
import Outputable
import Unique
import Util ( zipWithEqual, notNull )
import Outputable
import List ( zipWith4 )
\end{code}
import List ( zipWith4 )
\end{code}
import Outputable
import LazyUniqFM
import FiniteMap
import Outputable
import LazyUniqFM
import FiniteMap
import Maybe
import Monad
import Maybe
import Monad
import {-# SOURCE #-} TcExpr( tcPolyExpr )
import {-# SOURCE #-} TcUnify( boxyUnify, unifyType )
import {-# SOURCE #-} TcExpr( tcPolyExpr )
import {-# SOURCE #-} TcUnify( boxyUnify, unifyType )
-import FastString(FastString)
import HsSyn
import TcHsSyn
import TcRnMonad
import HsSyn
import TcHsSyn
import TcRnMonad
import SrcLoc
import Outputable
import SrcLoc
import Outputable
import Util
import Control.Monad
import Util
import Control.Monad
import Util
import BasicTypes
import Outputable
import Util
import BasicTypes
import Outputable
import Control.Monad
\end{code}
import Control.Monad
\end{code}
import SrcLoc
import Maybe
import Outputable
import SrcLoc
import Maybe
import Outputable
import Util
import ListSetOps
import Outputable
import Util
import ListSetOps
import Outputable
import SrcLoc
import Outputable
import Maybes
import SrcLoc
import Outputable
import Maybes
import SrcLoc
import Bag
import Unique
import SrcLoc
import Bag
import Unique
import TcType
import Unique
import UniqFM
import TcType
import Unique
import UniqFM
import Util
import Bag
import Outputable
import Util
import Bag
import Outputable
import SrcLoc
import UniqSupply
import Outputable
import SrcLoc
import UniqSupply
import Outputable
import Control.Monad
\end{code}
import Control.Monad
\end{code}
import UniqSupply
import SrcLoc
import Outputable
import UniqSupply
import SrcLoc
import Outputable
import Control.Monad ( when, unless )
import Data.List ( (\\) )
import Control.Monad ( when, unless )
import Data.List ( (\\) )
import Outputable
import Util
import SrcLoc
import Outputable
import Util
import SrcLoc
import Control.Monad
\end{code}
import Control.Monad
\end{code}
import Outputable
import ListSetOps
import FiniteMap
import Outputable
import ListSetOps
import FiniteMap
import Data.Maybe
import Data.List
import Data.Maybe
import Data.List
import Name
import SrcLoc
import Outputable
import Name
import SrcLoc
import Outputable
import UniqSet
import SrcLoc
import DynFlags
import UniqSet
import SrcLoc
import DynFlags
import Control.Monad
import Data.List
import Control.Monad
import Data.List
import ListSetOps
import Digraph
import DynFlags
import ListSetOps
import Digraph
import DynFlags
import Data.List
import Control.Monad ( mplus )
import Data.List
import Control.Monad ( mplus )
import Outputable
import SrcLoc ( Located(..) )
import Maybes
import Outputable
import SrcLoc ( Located(..) )
import Maybes
-- standard
import Data.List
-- standard
import Data.List
import Maybes
import ListSetOps
import Outputable
import Maybes
import ListSetOps
import Outputable
import Data.List
import Data.IORef
import Data.List
import Data.IORef
import Util
import Outputable
import Unique
import Util
import Outputable
import Unique
import Control.Monad
\end{code}
import Control.Monad
\end{code}
import BasicTypes
import Unique
import Outputable
import BasicTypes
import Unique
import Outputable
\end{code}
%************************************************************************
\end{code}
%************************************************************************
import Unique
import BasicTypes
import Outputable
import Unique
import BasicTypes
import Outputable
type Coercion = Type
type CoercionKind = Kind -- A CoercionKind is always of form (ty1 :=: ty2)
type Coercion = Type
type CoercionKind = Kind -- A CoercionKind is always of form (ty1 :=: ty2)
--------------------------------------
-- ...and their names
--------------------------------------
-- ...and their names
-mkCoConName :: FS.FastString -> Unique -> TyCon -> Name
+mkCoConName :: FastString -> Unique -> TyCon -> Name
mkCoConName occ key coCon = mkWiredInName gHC_PRIM (mkOccNameFS tcName occ)
key (ATyCon coCon) BuiltInSyntax
mkCoConName occ key coCon = mkWiredInName gHC_PRIM (mkOccNameFS tcName occ)
key (ATyCon coCon) BuiltInSyntax
import Outputable
import Maybes
import Util
import Outputable
import Maybes
import Util
import VarEnv
import Outputable
import Util
import VarEnv
import Outputable
import Util
import Data.Maybe ( isJust )
\end{code}
import Data.Maybe ( isJust )
\end{code}
import BasicTypes
import UniqFM
import Id
import BasicTypes
import UniqFM
import Id
import Data.Maybe ( isJust, isNothing )
\end{code}
import Data.Maybe ( isJust, isNothing )
\end{code}
import StaticFlags
import Util
import Outputable
import StaticFlags
import Util
import Outputable
import Data.List
import Data.Maybe ( isJust )
import Data.List
import Data.Maybe ( isJust )
dataConCannotMatch
) where
dataConCannotMatch
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Var
#include "HsVersions.h"
import Var
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
------------------------------------------------------------------------------
#include "HsVersions.h"
------------------------------------------------------------------------------
-#define COMPILING_FAST_STRING
#include "HsVersions.h"
import Foreign
import Data.Char ( ord, chr, isDigit, digitToInt, intToDigit,
#include "HsVersions.h"
import Foreign
import Data.Char ( ord, chr, isDigit, digitToInt, intToDigit,
-#define COMPILING_FAST_STRING
#include "HsVersions.h"
import FastTypes
#include "HsVersions.h"
import FastTypes
--- This #define suppresses the "import FastString" that
--- HsVersions otherwise produces
-#define COMPILING_FAST_STRING
#include "HsVersions.h"
import Encoding
#include "HsVersions.h"
import Encoding
FastPtr, pBox, pUnbox, castFastPtr
) where
FastPtr, pBox, pUnbox, castFastPtr
) where
-#define COMPILING_FAST_STRING
#include "HsVersions.h"
#if defined(__GLASGOW_HASKELL__)
#include "HsVersions.h"
#if defined(__GLASGOW_HASKELL__)
rev_app [] xs = xs
rev_app (y:ys) xs = rev_app ys (y:xs)
rev_app [] xs = xs
rev_app (y:ys) xs = rev_app ys (y:xs)
-
-_unused :: FS.FastString
_unused = undefined i_min i_lim overlaps contains
_unused = undefined i_min i_lim overlaps contains
installSignalHandlers, interruptTargetThread
) where
installSignalHandlers, interruptTargetThread
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Config
#include "HsVersions.h"
import Config
use_snd _ b = b
\end{code}
use_snd _ b = b
\end{code}
-\begin{code}
-_unused :: FS.FastString
-_unused = undefined
-\end{code}
Direction(..), reslash,
) where
Direction(..), reslash,
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import Panic
#include "HsVersions.h"
import Panic
vCaseDEFAULT, vCaseProd
) where
vCaseDEFAULT, vCaseProd
) where
--- XXX This define is a bit of a hack, and should be done more nicely
-#define FAST_STRING_NOT_NEEDED 1
#include "HsVersions.h"
import CoreSyn
#include "HsVersions.h"
import CoreSyn
import Digraph ( SCC(..), stronglyConnComp )
import Outputable
import Digraph ( SCC(..), stronglyConnComp )
import Outputable
import Control.Monad ( liftM, liftM2, zipWithM, zipWithM_, mapAndUnzipM )
import Data.List ( inits, tails, zipWith4, zipWith5 )
import Control.Monad ( liftM, liftM2, zipWithM, zipWithM_, mapAndUnzipM )
import Data.List ( inits, tails, zipWith4, zipWith5 )