[commit: ghc] master: Prioritise class-level equality costraints (1c4a39d)
git at git.haskell.org
git at git.haskell.org
Mon Oct 24 16:32:12 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/1c4a39d3a8d36803382792ff78b4709794358883/ghc
>---------------------------------------------------------------
commit 1c4a39d3a8d36803382792ff78b4709794358883
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Mon Oct 24 16:55:49 2016 +0100
Prioritise class-level equality costraints
This patch fixes Trac #12734 by prioritising the class-level
variants of equality constraints, namely (a~b) and (a~~b).
See comment:10 of Trac #12734 for a description of what
went wrong, and Note [Prioritise class equalities] in TcSMonad.
The fix is still not great, but it's a definite step forward, and
cures the particular problem.
Worth merging to 8.0.
>---------------------------------------------------------------
1c4a39d3a8d36803382792ff78b4709794358883
compiler/typecheck/TcSMonad.hs | 31 +++++-
testsuite/tests/typecheck/should_compile/T12734.hs | 92 ++++++++++++++++++
.../tests/typecheck/should_compile/T12734a.hs | 104 +++++++++++++++++++++
.../tests/typecheck/should_compile/T12734a.stderr | 9 ++
testsuite/tests/typecheck/should_compile/all.T | 2 +
5 files changed, 237 insertions(+), 1 deletion(-)
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 1c4a39d3a8d36803382792ff78b4709794358883
More information about the ghc-commits
mailing list