[commit: ghc] master: Fix recompilation avoidance bug for implementor of hsig. (5fb485a)

git at git.haskell.org git at git.haskell.org
Sun Apr 2 23:49:32 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/5fb485a3e1e83a1f5c6acf989be292940229e1a4/ghc

>---------------------------------------------------------------

commit 5fb485a3e1e83a1f5c6acf989be292940229e1a4
Author: Edward Z. Yang <ezyang at cs.stanford.edu>
Date:   Sat Mar 25 22:50:55 2017 -0700

    Fix recompilation avoidance bug for implementor of hsig.
    
    Summary:
    I observed a bug where if I modified the module which implemented
    an hsig in another package, GHC would not recompile the signature
    in this situation.
    
    The root cause was that we were conflating modules from user
    imports, and "system" module dependencies (from signature
    merging and instantiation.) So this patch handles them separately.
    
    Signed-off-by: Edward Z. Yang <ezyang at cs.stanford.edu>
    
    Test Plan: validate
    
    Reviewers: simonpj, bgamari, austin
    
    Subscribers: rwbarton, thomie, snowleopard
    
    Differential Revision: https://phabricator.haskell.org/D3381


>---------------------------------------------------------------

5fb485a3e1e83a1f5c6acf989be292940229e1a4
 compiler/deSugar/DsUsage.hs                        | 19 ++++++++++++-----
 compiler/iface/MkIface.hs                          | 10 +++++++--
 compiler/main/HscMain.hs                           |  3 ++-
 compiler/main/HscTypes.hs                          | 17 +++++++++++++--
 compiler/rename/RnEnv.hs                           |  2 +-
 compiler/rename/RnNames.hs                         |  9 ++++----
 compiler/typecheck/TcBackpack.hs                   |  6 +++---
 compiler/typecheck/TcRnExports.hs                  |  3 ++-
 .../tests/backpack/cabal/bkpcabal06/.gitignore     |  1 +
 .../cabal/{bkpcabal05 => bkpcabal06}/Makefile      |  9 ++++----
 .../cabal/{bkpcabal01 => bkpcabal06}/Setup.hs      |  0
 testsuite/tests/backpack/cabal/bkpcabal06/all.T    |  9 ++++++++
 .../backpack/cabal/bkpcabal06/bkpcabal06.cabal     | 24 ++++++++++++++++++++++
 .../backpack/cabal/bkpcabal06/bkpcabal06.stderr    |  4 ++++
 .../cabal/bkpcabal06/impl/P.hs.in1}                |  2 +-
 .../cabal/bkpcabal06/impl/P.hs.in2}                |  1 -
 .../tests/backpack/cabal/bkpcabal06/sig/P.hsig     |  2 ++
 17 files changed, 94 insertions(+), 27 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 5fb485a3e1e83a1f5c6acf989be292940229e1a4


More information about the ghc-commits mailing list