File tree Expand file tree Collapse file tree 2 files changed +7
-2
lines changed
ghcide/src/Development/IDE Expand file tree Collapse file tree 2 files changed +7
-2
lines changed Original file line number Diff line number Diff line change @@ -106,7 +106,7 @@ import Data.Map (Map)
106
106
import Data.Tuple.Extra (dupe )
107
107
import Data.Unique as Unique
108
108
import Development.IDE.Core.Tracing (withTrace )
109
- import Development.IDE.GHC.Compat.Util (emptyUDFM , plusUDFM )
109
+ import Development.IDE.GHC.Compat.Util (emptyUDFM , plusUDFM_C )
110
110
import qualified Language.LSP.Server as LSP
111
111
import qualified Language.LSP.Types as LSP
112
112
import Unsafe.Coerce
@@ -702,11 +702,15 @@ mergeEnvs env extraModSummaries extraMods envs = do
702
702
(\ fc (im, ifr) -> Compat. extendInstalledModuleEnv fc im ifr) prevFinderCache
703
703
$ zip ims ifrs
704
704
return $ loadModulesHome extraMods $ env{
705
- hsc_HPT = foldMapBy plusUDFM emptyUDFM hsc_HPT envs,
705
+ hsc_HPT = foldMapBy mergeUDFM emptyUDFM hsc_HPT envs,
706
706
hsc_FC = newFinderCache,
707
707
hsc_mod_graph = mkModuleGraph $ extraModSummaries ++ nubOrdOn ms_mod (concatMap (mgModSummaries . hsc_mod_graph) envs)
708
708
}
709
709
where
710
+ mergeUDFM = plusUDFM_C combineModules
711
+ combineModules a b
712
+ | HsSrcFile <- mi_hsc_src (hm_iface a) = a
713
+ | otherwise = b
710
714
-- required because 'FinderCache':
711
715
-- 1) doesn't have a 'Monoid' instance,
712
716
-- 2) is abstract and doesn't export constructors
Original file line number Diff line number Diff line change @@ -62,6 +62,7 @@ module Development.IDE.GHC.Compat.Util (
62
62
-- * UniqDFM
63
63
emptyUDFM ,
64
64
plusUDFM ,
65
+ plusUDFM_C ,
65
66
-- * String Buffer
66
67
StringBuffer (.. ),
67
68
hGetStringBuffer ,
You can’t perform that action at this time.
0 commit comments