summaryrefslogtreecommitdiff
path: root/compiler/GHC/HsToCore/Monad.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/HsToCore/Monad.hs')
-rw-r--r--compiler/GHC/HsToCore/Monad.hs21
1 files changed, 8 insertions, 13 deletions
diff --git a/compiler/GHC/HsToCore/Monad.hs b/compiler/GHC/HsToCore/Monad.hs
index f17018492c..bdb275e5aa 100644
--- a/compiler/GHC/HsToCore/Monad.hs
+++ b/compiler/GHC/HsToCore/Monad.hs
@@ -86,11 +86,10 @@ import GHC.Builtin.Names
import GHC.Data.Bag
import GHC.Data.FastString
+import GHC.Unit.Env
import GHC.Unit.External
import GHC.Unit.Module
import GHC.Unit.Module.ModGuts
-import GHC.Unit.Home
-import GHC.Unit.State
import GHC.Types.Name.Reader
import GHC.Types.Basic ( Origin )
@@ -229,9 +228,7 @@ mkDsEnvsFromTcGbl :: MonadIO m
mkDsEnvsFromTcGbl hsc_env msg_var tcg_env
= do { cc_st_var <- liftIO $ newIORef newCostCentreState
; eps <- liftIO $ hscEPS hsc_env
- ; let dflags = hsc_dflags hsc_env
- home_unit = hsc_home_unit hsc_env
- unit_state = unitState dflags
+ ; let unit_env = hsc_unit_env hsc_env
this_mod = tcg_mod tcg_env
type_env = tcg_type_env tcg_env
rdr_env = tcg_rdr_env tcg_env
@@ -239,7 +236,7 @@ mkDsEnvsFromTcGbl hsc_env msg_var tcg_env
complete_matches = hptCompleteSigs hsc_env -- from the home package
++ tcg_complete_matches tcg_env -- from the current module
++ eps_complete_matches eps -- from imports
- ; return $ mkDsEnvs unit_state home_unit this_mod rdr_env type_env fam_inst_env
+ ; return $ mkDsEnvs unit_env this_mod rdr_env type_env fam_inst_env
msg_var cc_st_var complete_matches
}
@@ -262,9 +259,7 @@ initDsWithModGuts hsc_env guts thing_inside
= do { cc_st_var <- newIORef newCostCentreState
; msg_var <- newIORef emptyMessages
; eps <- liftIO $ hscEPS hsc_env
- ; let dflags = hsc_dflags hsc_env
- home_unit = hsc_home_unit hsc_env
- unit_state = unitState dflags
+ ; let unit_env = hsc_unit_env hsc_env
type_env = typeEnvFromEntities ids (mg_tcs guts) (mg_fam_insts guts)
rdr_env = mg_rdr_env guts
fam_inst_env = mg_fam_inst_env guts
@@ -277,7 +272,7 @@ initDsWithModGuts hsc_env guts thing_inside
bindsToIds (Rec binds) = map fst binds
ids = concatMap bindsToIds (mg_binds guts)
- envs = mkDsEnvs unit_state home_unit this_mod rdr_env type_env
+ envs = mkDsEnvs unit_env this_mod rdr_env type_env
fam_inst_env msg_var cc_st_var
complete_matches
; runDs hsc_env envs thing_inside
@@ -313,10 +308,10 @@ initTcDsForSolver thing_inside
, tcg_rdr_env = rdr_env }) $
thing_inside }
-mkDsEnvs :: UnitState -> HomeUnit -> Module -> GlobalRdrEnv -> TypeEnv -> FamInstEnv
+mkDsEnvs :: UnitEnv -> Module -> GlobalRdrEnv -> TypeEnv -> FamInstEnv
-> IORef Messages -> IORef CostCentreState -> CompleteMatches
-> (DsGblEnv, DsLclEnv)
-mkDsEnvs unit_state home_unit mod rdr_env type_env fam_inst_env msg_var cc_st_var
+mkDsEnvs unit_env mod rdr_env type_env fam_inst_env msg_var cc_st_var
complete_matches
= let if_genv = IfGblEnv { if_doc = text "mkDsEnvs",
if_rec_types = Just (mod, return type_env) }
@@ -327,7 +322,7 @@ mkDsEnvs unit_state home_unit mod rdr_env type_env fam_inst_env msg_var cc_st_va
, ds_fam_inst_env = fam_inst_env
, ds_gbl_rdr_env = rdr_env
, ds_if_env = (if_genv, if_lenv)
- , ds_unqual = mkPrintUnqualified unit_state home_unit rdr_env
+ , ds_unqual = mkPrintUnqualified unit_env rdr_env
, ds_msgs = msg_var
, ds_complete_matches = complete_matches
, ds_cc_st = cc_st_var