From: simonpj Date: Wed, 27 Feb 2002 15:53:46 +0000 (+0000) Subject: [project @ 2002-02-27 15:53:46 by simonpj] X-Git-Tag: Approx_11550_changesets_converted~2340 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=b34291eae148f41933c30f0551d0d3e34dc5a0c3;p=ghc-hetmet.git [project @ 2002-02-27 15:53:46 by simonpj] comments --- diff --git a/ghc/compiler/main/MkIface.lhs b/ghc/compiler/main/MkIface.lhs index 7055df9..bce2bb3 100644 --- a/ghc/compiler/main/MkIface.lhs +++ b/ghc/compiler/main/MkIface.lhs @@ -139,8 +139,11 @@ isOrphanModule :: Module -> ModDetails -> Bool isOrphanModule this_mod (ModDetails {md_insts = insts, md_rules = rules}) = any orphan_inst insts || any orphan_rule rules where + -- A rule is an orphan if the LHS mentions nothing defined locally orphan_inst dfun_id = no_locals (namesOfDFunHead (idType dfun_id)) + -- A instance is an orphan if its head mentions nothing defined locally orphan_rule rule = no_locals (ruleLhsFreeNames rule) + no_locals names = isEmptyNameSet (filterNameSet (nameIsLocalOrFrom this_mod) names) \end{code}