[commit: ghc] ghc-8.6: Report a Wanted error even if there are Given ones (a49f95c)

git at git.haskell.org git at git.haskell.org
Tue Oct 30 18:59:10 UTC 2018


Repository : ssh://git@git.haskell.org/ghc

On branch  : ghc-8.6
Link       : http://ghc.haskell.org/trac/ghc/changeset/a49f95c29b3a5f665b3ec0f1f05d78b73244b1f1/ghc

>---------------------------------------------------------------

commit a49f95c29b3a5f665b3ec0f1f05d78b73244b1f1
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Thu Oct 18 15:41:44 2018 +0100

    Report a Wanted error even if there are Given ones
    
    We suppress some Given errors; see Note [Given errors]
    in TcErrors.  But we must be careful not to suppress
    Wanted errors because of the presence of these Given
    errors -- else we might allow compilation to bogusly
    proceed
    
    The rubber hits the road in TcRnTypes.insolubleCt,
    where we don't want to treat Givens as insoluble,
    nor (and this is the new bit) Deriveds that arise
    from Givens.  See Note [Given insolubles] in TcRnTypes.
    
    This fixes #15767.
    
    (cherry picked from commit 6b1102e2cfcffb265fd33cf8a99ab5e6b3f14906)
    
    Ben notes:
    
      I have folded some test output changes in `TEST="T12529 T12921 mc13
      mc14"` into this patch that were not in the original.


>---------------------------------------------------------------

a49f95c29b3a5f665b3ec0f1f05d78b73244b1f1
 compiler/typecheck/TcErrors.hs                     |  2 +-
 compiler/typecheck/TcRnTypes.hs                    | 24 +++++++++------
 testsuite/tests/rename/should_fail/mc13.stderr     | 18 +++++++++++-
 testsuite/tests/rename/should_fail/mc14.stderr     | 34 +++++++++++++++++++++-
 .../tests/typecheck/should_fail/T12529.stderr      |  2 --
 .../tests/typecheck/should_fail/T12921.stderr      |  3 --
 testsuite/tests/typecheck/should_fail/T15767.hs    |  9 ++++++
 .../tests/typecheck/should_fail/T15767.stderr      |  9 ++++++
 testsuite/tests/typecheck/should_fail/all.T        |  1 +
 9 files changed, 85 insertions(+), 17 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 a49f95c29b3a5f665b3ec0f1f05d78b73244b1f1


More information about the ghc-commits mailing list