[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