diff options
Diffstat (limited to 'compiler/iface/LoadIface.hs')
| -rw-r--r-- | compiler/iface/LoadIface.hs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/iface/LoadIface.hs b/compiler/iface/LoadIface.hs index ca11c6f59b..6005ba5053 100644 --- a/compiler/iface/LoadIface.hs +++ b/compiler/iface/LoadIface.hs @@ -533,12 +533,12 @@ computeInterface doc_str hi_boot_file mod0 = do MASSERT( not (isHoleModule mod0) ) dflags <- getDynFlags case splitModuleInsts mod0 of - (imod, Just insts) | not (unitIdIsDefinite (thisPackage dflags)) -> do + (imod, Just indef) | not (unitIdIsDefinite (thisPackage dflags)) -> do r <- findAndReadIface doc_str imod hi_boot_file case r of Succeeded (iface0, path) -> do hsc_env <- getTopEnv - r <- liftIO (rnModIface hsc_env insts Nothing iface0) + r <- liftIO (rnModIface hsc_env (indefUnitIdInsts (indefModuleUnitId indef)) Nothing iface0) return (Succeeded (r, path)) Failed err -> return (Failed err) (mod, _) -> @@ -560,7 +560,8 @@ moduleFreeHolesPrecise doc_str mod | moduleIsDefinite mod = return (Succeeded emptyUniqDSet) | otherwise = case splitModuleInsts mod of - (imod, Just insts) -> do + (imod, Just indef) -> do + let insts = indefUnitIdInsts (indefModuleUnitId indef) traceIf (text "Considering whether to load" <+> ppr mod <+> text "to compute precise free module holes") (eps, hpt) <- getEpsAndHpt |
