[commit: ghc] master: Remove wc_insol from WantedConstraints (f20cf98)
git at git.haskell.org
git at git.haskell.org
Wed Oct 11 12:30:27 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/f20cf982f126aea968ed6a482551550ffb6650cf/ghc
>---------------------------------------------------------------
commit f20cf982f126aea968ed6a482551550ffb6650cf
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Mon Oct 9 13:16:59 2017 +0100
Remove wc_insol from WantedConstraints
This patch is a pure refactoring, which I've wanted to do for
some time. The main payload is
* Remove the wc_insol field from WantedConstraints;
instead put all the insolubles in wc_simple
* Remove inert_insols from InertCans
Instead put all the insolubles in inert_irreds
* Add a cc_insol flag to CIrredCan, to record that
the constraint is definitely insoluble
Reasons
* Quite a bit of code gets slightly simpler
* Fewer concepts to keep separate
* Insolubles don't happen at all in production code that is
just being recompiled, so previously there was a lot of
moving-about of empty sets
A couple of error messages acutally improved.
>---------------------------------------------------------------
f20cf982f126aea968ed6a482551550ffb6650cf
compiler/typecheck/TcCanonical.hs | 46 +++--
compiler/typecheck/TcErrors.hs | 13 +-
compiler/typecheck/TcInteract.hs | 25 +--
compiler/typecheck/TcMType.hs | 18 +-
compiler/typecheck/TcRnMonad.hs | 11 ++
compiler/typecheck/TcRnTypes.hs | 186 ++++++++++++---------
compiler/typecheck/TcRules.hs | 23 +--
compiler/typecheck/TcSMonad.hs | 84 +++++-----
compiler/typecheck/TcSimplify.hs | 44 ++---
compiler/typecheck/TcType.hs | 17 +-
testsuite/tests/deriving/should_fail/T3621.stderr | 16 +-
testsuite/tests/indexed-types/should_fail/T8518.hs | 0
.../tests/typecheck/should_compile/tc211.stderr | 20 +--
.../tests/typecheck/should_fail/T12589.stderr | 4 +-
.../tests/typecheck/should_fail/T13311.stderr | 4 +-
testsuite/tests/typecheck/should_fail/T7851.stderr | 4 +-
testsuite/tests/typecheck/should_fail/T8603.stderr | 7 +-
.../tests/typecheck/should_fail/tcfail122.stderr | 2 +-
.../warnings/should_fail/CaretDiagnostics1.stderr | 4 +-
19 files changed, 280 insertions(+), 248 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 f20cf982f126aea968ed6a482551550ffb6650cf
More information about the ghc-commits
mailing list