[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