[commit: ghc] master: Check family instance consistency of hs-boot families later, fixes #11062. (25b70a2)

git at git.haskell.org git at git.haskell.org
Sun Dec 18 03:41:04 UTC 2016


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/25b70a29f6236b591252bf5a361a1547f0ffee51/ghc

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

commit 25b70a29f6236b591252bf5a361a1547f0ffee51
Author: Edward Z. Yang <ezyang at cs.stanford.edu>
Date:   Thu Dec 15 18:05:33 2016 -0800

    Check family instance consistency of hs-boot families later, fixes #11062.
    
    Summary:
    With hs-boot files, some type families may be defined in the
    module we are typechecking.  In this case, we are not allowed
    to poke these families until after we typecheck our local
    declarations.  So we first check everything involving non-recursive
    families, and then check the recursive families as we finish
    kind-checking them.
    
    Signed-off-by: Edward Z. Yang <ezyang at cs.stanford.edu>
    
    Test Plan: validate
    
    Reviewers: goldfire, austin, simonpj, bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D2859
    
    GHC Trac Issues: #11062


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

25b70a29f6236b591252bf5a361a1547f0ffee51
 compiler/typecheck/FamInst.hs                      | 73 ++++++++++++++++++++--
 compiler/typecheck/TcRnDriver.hs                   |  4 +-
 compiler/typecheck/TcRnMonad.hs                    |  1 +
 compiler/typecheck/TcRnTypes.hs                    |  7 +++
 compiler/typecheck/TcTyClsDecls.hs                 |  4 ++
 testsuite/driver/extra_files.py                    |  1 +
 .../A.hs => typecheck/should_compile/T11062.hs}    |  4 +-
 .../should_compile/T11062.hs-boot}                 |  3 +-
 .../A.hs => typecheck/should_compile/T11062a.hs}   |  4 +-
 testsuite/tests/typecheck/should_compile/all.T     |  2 +
 10 files changed, 89 insertions(+), 14 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 25b70a29f6236b591252bf5a361a1547f0ffee51


More information about the ghc-commits mailing list