Skip to content

Commit f26c4ab

Browse files
authored
Preserve envImportPaths in GhcSessionDeps (#862)
1 parent bfe2563 commit f26c4ab

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

src/Development/IDE/Core/Rules.hs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,8 @@ loadGhcSession = do
665665

666666
ghcSessionDepsDefinition :: NormalizedFilePath -> Action (IdeResult HscEnvEq)
667667
ghcSessionDepsDefinition file = do
668-
hsc <- hscEnv <$> use_ GhcSession file
668+
env <- use_ GhcSession file
669+
let hsc = hscEnv env
669670
(deps,_) <- useWithStale_ GetDependencies file
670671
let tdeps = transitiveModuleDeps deps
671672
ifaces <- uses_ GetModIface tdeps
@@ -679,7 +680,7 @@ ghcSessionDepsDefinition file = do
679680
setupFinderCache (map hirModSummary ifaces)
680681
mapM_ loadDepModule inLoadOrder
681682

682-
res <- liftIO $ newHscEnvEq "" session' []
683+
res <- liftIO $ newHscEnvEqWithImportPaths (envImportPaths env) session' []
683684
return ([], Just res)
684685

685686
getModIfaceFromDiskRule :: Rules ()

src/Development/IDE/GHC/Util.hs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ module Development.IDE.GHC.Util(
3131
setHieDir,
3232
dontWriteHieFiles,
3333
disableWarningsAsErrors,
34-
newHscEnvEqPreserveImportPaths) where
34+
newHscEnvEqPreserveImportPaths,
35+
newHscEnvEqWithImportPaths) where
3536

3637
import Control.Concurrent
3738
import Data.List.Extra
@@ -193,6 +194,11 @@ newHscEnvEq cradlePath hscEnv0 deps = do
193194
hscEnv = removeImportPaths hscEnv0
194195
return HscEnvEq{..}
195196

197+
newHscEnvEqWithImportPaths :: Maybe [String] -> HscEnv -> [(InstalledUnitId, DynFlags)] -> IO HscEnvEq
198+
newHscEnvEqWithImportPaths envImportPaths hscEnv deps = do
199+
envUnique <- newUnique
200+
return HscEnvEq{..}
201+
196202
-- | Wrap an 'HscEnv' into an 'HscEnvEq'.
197203
newHscEnvEqPreserveImportPaths
198204
:: HscEnv -> [(InstalledUnitId, DynFlags)] -> IO HscEnvEq

0 commit comments

Comments
 (0)