@@ -119,7 +119,7 @@ import GHC.Core.TyCo.Ppr( debugPprType )
119119import GHC.Core.TyCo.Tidy ( tidyTopType )
120120import GHC.Core.FamInstEnv
121121 ( FamInst , pprFamInst , famInstsRepTyCons , orphNamesOfFamInst
122- , famInstEnvElts , extendFamInstEnvList , normaliseType , emptyFamInstEnv , unionFamInstEnv )
122+ , famInstEnvElts , extendFamInstEnvList , normaliseType )
123123
124124import GHC.Parser.Header ( mkPrelImports )
125125
@@ -464,8 +464,8 @@ tcRnImports hsc_env import_decls
464464 = do { (rn_imports, imp_user_spec, rdr_env, imports) <- rnImports import_decls
465465 -- Get the default declarations for the classes imported by this module
466466 -- and group them by class.
467- ; tc_defaults <- NE. groupBy ((==) `on` cd_class) . (concatMap defaultList)
468- <$> tcGetClsDefaults (M. keys $ imp_mods imports)
467+ ; tc_defaults <- ( NE. groupBy ((==) `on` cd_class) . (concatMap defaultList) )
468+ <$> tcGetClsDefaults (M. keys $ imp_mods imports)
469469 ; this_mod <- getModule
470470 ; gbl_env <- getGblEnv
471471 ; let unitId = homeUnitId $ hsc_home_unit hsc_env
@@ -477,10 +477,8 @@ tcRnImports hsc_env import_decls
477477 -- filtering also ensures that we don't see instances from
478478 -- modules batch (@--make@) compiled before this one, but
479479 -- which are not below this one.
480- ; (home_insts, home_mod_fam_inst_env ) <- liftIO $
480+ ; (home_insts, home_fam_insts ) <- liftIO $
481481 hugInstancesBelow hsc_env unitId mnwib
482- ; let home_fam_inst_env = foldl' unionFamInstEnv emptyFamInstEnv $ snd <$> home_mod_fam_inst_env
483- ; let hpt_fam_insts = mkModuleEnv home_mod_fam_inst_env
484482
485483 -- We use 'unsafeInterleaveIO' to avoid redundant memory allocations
486484 -- See Note [Lazily loading COMPLETE pragmas] from GHC.HsToCore.Monad
@@ -506,7 +504,8 @@ tcRnImports hsc_env import_decls
506504 tcg_rn_imports = rn_imports,
507505 tcg_default = foldMap subsume tc_defaults,
508506 tcg_inst_env = tcg_inst_env gbl `unionInstEnv` home_insts,
509- tcg_fam_inst_env = unionFamInstEnv (tcg_fam_inst_env gbl) home_fam_inst_env
507+ tcg_fam_inst_env = extendFamInstEnvList (tcg_fam_inst_env gbl)
508+ home_fam_insts
510509 }) $ do {
511510
512511 ; traceRn " rn1" (ppr (imp_direct_dep_mods imports))
@@ -536,7 +535,7 @@ tcRnImports hsc_env import_decls
536535 $ imports }
537536 ; logger <- getLogger
538537 ; withTiming logger (text " ConsistencyCheck" <+> brackets (ppr this_mod)) (const () )
539- $ checkFamInstConsistency hpt_fam_insts dir_imp_mods
538+ $ checkFamInstConsistency dir_imp_mods
540539 ; traceRn " rn1: } checking family instance consistency" empty
541540
542541 ; gbl_env <- getGblEnv
0 commit comments