[commit: ghc] master: Do not discard insolubles in implications (452755d)
git at git.haskell.org
git at git.haskell.org
Fri Jul 28 08:56:38 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/452755de717fad5d8fbfc6330cb42a3335c8912d/ghc
>---------------------------------------------------------------
commit 452755de717fad5d8fbfc6330cb42a3335c8912d
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Thu Jul 27 14:52:38 2017 +0100
Do not discard insolubles in implications
Trac #14000 showed up two errors
* In TcRnTypes.dropInsolubles we dropped all implications, which
might contain the very insolubles we wanted to keep. This was
an outright error, and is why the out-of-scope error was actually
lost altogether in Trac #14000
* In TcSimplify.simplifyInfer, if there are definite (insoluble)
errors, it's better to suppress the following ambiguity test,
because the type may be bogus anyway. See TcSimplify
Note [Quantification with errors]. This fix seems a bit clunky,
but it'll do for now.
>---------------------------------------------------------------
452755de717fad5d8fbfc6330cb42a3335c8912d
compiler/typecheck/TcBinds.hs | 22 ++--
compiler/typecheck/TcExpr.hs | 2 +-
compiler/typecheck/TcPatSyn.hs | 4 +-
compiler/typecheck/TcRnDriver.hs | 6 +-
compiler/typecheck/TcRnTypes.hs | 8 +-
compiler/typecheck/TcSimplify.hs | 124 ++++++++++++++-------
testsuite/tests/parser/should_fail/T7848.hs | 2 +-
testsuite/tests/parser/should_fail/T7848.stderr | 13 +--
testsuite/tests/th/T5358.stderr | 20 ++++
testsuite/tests/typecheck/should_fail/T14000.hs | 8 ++
.../tests/typecheck/should_fail/T14000.stderr | 2 +
testsuite/tests/typecheck/should_fail/T8142.stderr | 26 +++--
testsuite/tests/typecheck/should_fail/all.T | 1 +
13 files changed, 161 insertions(+), 77 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 452755de717fad5d8fbfc6330cb42a3335c8912d
More information about the ghc-commits
mailing list