summaryrefslogtreecommitdiff
path: root/compiler/main/Hooks.hs
diff options
context:
space:
mode:
authorTamar Christina <tamar@zhox.com>2016-12-19 19:09:18 +0000
committerTamar Christina <tamar@zhox.com>2016-12-19 19:09:18 +0000
commitf1dfce1cb2a823696d6d3a9ea41c2bc73d949f12 (patch)
treeb14692ca8e33e8f925a1fa47542eb3499fc79f0e /compiler/main/Hooks.hs
parentbb74bc79daf8b91b21a1b68b0a406828d188ed92 (diff)
downloadhaskell-f1dfce1cb2a823696d6d3a9ea41c2bc73d949f12.tar.gz
Revert "Allow use of the external interpreter in stage1."
This reverts commit 52ba9470a7e85d025dc84a6789aa809cdd68b566.
Diffstat (limited to 'compiler/main/Hooks.hs')
-rw-r--r--compiler/main/Hooks.hs14
1 files changed, 14 insertions, 0 deletions
diff --git a/compiler/main/Hooks.hs b/compiler/main/Hooks.hs
index eefdde4b88..8d706d8fa5 100644
--- a/compiler/main/Hooks.hs
+++ b/compiler/main/Hooks.hs
@@ -15,14 +15,18 @@ module Hooks ( Hooks
, tcForeignImportsHook
, tcForeignExportsHook
, hscFrontendHook
+#ifdef GHCI
, hscCompileCoreExprHook
+#endif
, ghcPrimIfaceHook
, runPhaseHook
, runMetaHook
, linkHook
, runRnSpliceHook
+#ifdef GHCI
, getValueSafelyHook
, createIservProcessHook
+#endif
) where
import DynFlags
@@ -38,10 +42,12 @@ import TcRnTypes
import Bag
import RdrName
import CoreSyn
+#ifdef GHCI
import GHCi.RemoteTypes
import SrcLoc
import Type
import System.Process
+#endif
import BasicTypes
import Data.Maybe
@@ -64,14 +70,18 @@ emptyHooks = Hooks
, tcForeignImportsHook = Nothing
, tcForeignExportsHook = Nothing
, hscFrontendHook = Nothing
+#ifdef GHCI
, hscCompileCoreExprHook = Nothing
+#endif
, ghcPrimIfaceHook = Nothing
, runPhaseHook = Nothing
, runMetaHook = Nothing
, linkHook = Nothing
, runRnSpliceHook = Nothing
+#ifdef GHCI
, getValueSafelyHook = Nothing
, createIservProcessHook = Nothing
+#endif
}
data Hooks = Hooks
@@ -79,14 +89,18 @@ data Hooks = Hooks
, tcForeignImportsHook :: Maybe ([LForeignDecl Name] -> TcM ([Id], [LForeignDecl Id], Bag GlobalRdrElt))
, tcForeignExportsHook :: Maybe ([LForeignDecl Name] -> TcM (LHsBinds TcId, [LForeignDecl TcId], Bag GlobalRdrElt))
, hscFrontendHook :: Maybe (ModSummary -> Hsc FrontendResult)
+#ifdef GHCI
, hscCompileCoreExprHook :: Maybe (HscEnv -> SrcSpan -> CoreExpr -> IO ForeignHValue)
+#endif
, ghcPrimIfaceHook :: Maybe ModIface
, runPhaseHook :: Maybe (PhasePlus -> FilePath -> DynFlags -> CompPipeline (PhasePlus, FilePath))
, runMetaHook :: Maybe (MetaHook TcM)
, linkHook :: Maybe (GhcLink -> DynFlags -> Bool -> HomePackageTable -> IO SuccessFlag)
, runRnSpliceHook :: Maybe (HsSplice Name -> RnM (HsSplice Name))
+#ifdef GHCI
, getValueSafelyHook :: Maybe (HscEnv -> Name -> Type -> IO (Maybe HValue))
, createIservProcessHook :: Maybe (CreateProcess -> IO ProcessHandle)
+#endif
}
getHooked :: (Functor f, HasDynFlags f) => (Hooks -> Maybe a) -> a -> f a