[commit: ghc] master: Fix #13337. (e0c433c)
git at git.haskell.org
git at git.haskell.org
Tue Mar 14 19:13:08 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/e0c433c81182c934ee4c4cc5c6cf25a1b6fb8d83/ghc
>---------------------------------------------------------------
commit e0c433c81182c934ee4c4cc5c6cf25a1b6fb8d83
Author: Richard Eisenberg <rae at cs.brynmawr.edu>
Date: Tue Mar 14 13:32:00 2017 -0400
Fix #13337.
The big change is the introduction of solveSomeEqualities. This
is just like solveEqualities, but it doesn't fail if there are unsolved
equalities when it's all done. Anything unsolved is re-emitted. This
is appropriate if we are not kind-generalizing, so this new form
is used when decideKindGeneralizationPlan says not to.
We initially thought that any use of solveEqualities would be tied
to kind generalization, but this isn't true. For example, we need
to solveEqualities a bunch in the "tc" pass in TcTyClsDecls (which
is really desugaring). These equalities are all surely going to be
soluble (if they weren't the "kc" pass would fail), but we still
need to solve them again. Perhaps if the "kc" pass produced type-
checked output that is then desugared, solveEqualities really would
be tied only to kind generalization.
Updates haddock submodule.
Test Plan: ./validate, typecheck/should_compile/T13337
Reviewers: simonpj, bgamari, austin
Reviewed By: simonpj
Subscribers: RyanGlScott, rwbarton, thomie
Differential Revision: https://phabricator.haskell.org/D3315
>---------------------------------------------------------------
e0c433c81182c934ee4c4cc5c6cf25a1b6fb8d83
compiler/hsSyn/Convert.hs | 2 +-
compiler/hsSyn/HsDecls.hs | 2 +-
compiler/hsSyn/HsTypes.hs | 15 ++--
compiler/rename/RnSource.hs | 3 +-
compiler/rename/RnTypes.hs | 14 +++-
compiler/typecheck/TcBinds.hs | 3 +-
compiler/typecheck/TcForeign.hs | 2 +-
compiler/typecheck/TcHsType.hs | 79 +++++++++++++---------
compiler/typecheck/TcSimplify.hs | 62 ++++++++++++++++-
compiler/typecheck/TcTyClsDecls.hs | 3 +-
.../parser/should_compile/DumpParsedAst.stderr | 6 +-
.../parser/should_compile/DumpRenamedAst.stderr | 6 +-
.../tests/partial-sigs/should_fail/T11976.stderr | 7 ++
.../tests/partial-sigs/should_fail/T12634.stderr | 9 ++-
testsuite/tests/typecheck/should_compile/T13337.hs | 16 +++++
testsuite/tests/typecheck/should_compile/all.T | 1 +
utils/haddock | 2 +-
17 files changed, 177 insertions(+), 55 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 e0c433c81182c934ee4c4cc5c6cf25a1b6fb8d83
More information about the ghc-commits
mailing list