aboutsummaryrefslogtreecommitdiff
path: root/haddock-api/src
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2018-08-21 08:34:50 +0100
committerAlex Biehl <alex.biehl@target.com>2018-08-21 09:37:34 +0200
commite6aa8fb47b9477cc5ef5e46097524fe83e080f6d (patch)
treeb300be09970bdb658a43e7852acdcc32425a712f /haddock-api/src
parent9765c10a27013b5c9168ee507d1f3b34cb4be26f (diff)
Load plugins when starting a GHC session (#905)
Fixes #900
Diffstat (limited to 'haddock-api/src')
-rw-r--r--haddock-api/src/Haddock.hs6
1 files changed, 5 insertions, 1 deletions
diff --git a/haddock-api/src/Haddock.hs b/haddock-api/src/Haddock.hs
index 00eb50f6..86a65901 100644
--- a/haddock-api/src/Haddock.hs
+++ b/haddock-api/src/Haddock.hs
@@ -75,6 +75,7 @@ import Packages
import Panic (handleGhcException)
import Module
import FastString
+import qualified DynamicLoading
--------------------------------------------------------------------------------
-- * Exception handling
@@ -437,7 +438,10 @@ withGhc' libDir flags ghcActs = runGhc (Just libDir) $ do
-- that may need to be re-linked: Haddock doesn't do any
-- dynamic or static linking at all!
_ <- setSessionDynFlags dynflags''
- ghcActs dynflags''
+ hscenv <- GHC.getSession
+ dynflags''' <- liftIO (DynamicLoading.initializePlugins hscenv dynflags'')
+ _ <- setSessionDynFlags dynflags'''
+ ghcActs dynflags'''
where
-- ignore sublists of flags that start with "+RTS" and end in "-RTS"