summaryrefslogtreecommitdiff
path: root/ghc/compiler/rename/RnIfaces.lhs
diff options
context:
space:
mode:
Diffstat (limited to 'ghc/compiler/rename/RnIfaces.lhs')
-rw-r--r--ghc/compiler/rename/RnIfaces.lhs14
1 files changed, 8 insertions, 6 deletions
diff --git a/ghc/compiler/rename/RnIfaces.lhs b/ghc/compiler/rename/RnIfaces.lhs
index f7276b8ba7..c5018a4c81 100644
--- a/ghc/compiler/rename/RnIfaces.lhs
+++ b/ghc/compiler/rename/RnIfaces.lhs
@@ -537,10 +537,7 @@ getInterfaceExports mod_name from
\begin{code}
getImportedInstDecls :: NameSet -> RnMG [(Module,RdrNameHsDecl)]
getImportedInstDecls gates
- = -- First, ensure that the home module of each gate is loaded
- mapRn_ load_home gate_list `thenRn_`
-
- -- Next, load any orphan-instance modules that aren't aready loaded
+ = -- First, load any orphan-instance modules that aren't aready loaded
-- Orphan-instance modules are recorded in the module dependecnies
getIfacesRn `thenRn` \ ifaces ->
let
@@ -560,8 +557,8 @@ getImportedInstDecls gates
traceRn (sep [text "getImportedInstDecls:",
nest 4 (fsep (map ppr gate_list)),
- text "Slurped" <+> int (length decls)
- <+> text "instance declarations"]) `thenRn_`
+ text "Slurped" <+> int (length decls) <+> text "instance declarations",
+ nest 4 (vcat (map ppr_brief_inst_decl decls))]) `thenRn_`
returnRn decls
where
gate_list = nameSetToList gates
@@ -572,6 +569,11 @@ getImportedInstDecls gates
= loadHomeInterface (ppr gate <+> text "is an instance gate") gate `thenRn_`
returnRn ()
+ppr_brief_inst_decl (mod, InstD (InstDecl inst_ty _ _ _ _))
+ = case inst_ty of
+ HsForAllTy _ _ tau -> ppr tau
+ other -> ppr inst_ty
+
getImportedRules :: RnMG [(Module,RdrNameHsDecl)]
getImportedRules
= getIfacesRn `thenRn` \ ifaces ->