diff options
author | Edward Z. Yang <ezyang@cs.stanford.edu> | 2016-10-17 14:06:18 -0700 |
---|---|---|
committer | Edward Z. Yang <ezyang@cs.stanford.edu> | 2016-10-17 23:41:25 -0700 |
commit | 8fa2cdb16c4db8141b889f2364d8e5fccc62cde3 (patch) | |
tree | 9c23367c8239311feaf835d331b8790f3ef742af /compiler/rename | |
parent | cf5eec3eaa638719fd9768c20271f8aa2b2eac1f (diff) | |
download | haskell-8fa2cdb16c4db8141b889f2364d8e5fccc62cde3.tar.gz |
Track dep_finsts in exports hash, as it affects downstream deps.
Summary:
I also added some more comments about the orphan and family instance
hashing business.
Fixes #12723.
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Test Plan: validate
Reviewers: bgamari, austin
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2607
GHC Trac Issues: #12723
Diffstat (limited to 'compiler/rename')
-rw-r--r-- | compiler/rename/RnNames.hs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rename/RnNames.hs b/compiler/rename/RnNames.hs index 3b37b18cc2..a57c9952fc 100644 --- a/compiler/rename/RnNames.hs +++ b/compiler/rename/RnNames.hs @@ -350,6 +350,11 @@ calculateAvails dflags iface mod_safe' want_boot = -- Compute new transitive dependencies + -- + -- 'dep_orphs' and 'dep_finsts' do NOT include the imported module + -- itself, but we DO need to include this module in 'imp_orphs' and + -- 'imp_finsts' if it defines an orphan or instance family; thus the + -- orph_iface/has_iface tests. orphans | orph_iface = ASSERT( not (imp_mod `elem` dep_orphs deps) ) imp_mod : dep_orphs deps |