diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2014-04-25 00:04:45 +0100 |
---|---|---|
committer | Simon Peyton Jones <simonpj@microsoft.com> | 2014-04-28 10:59:51 +0100 |
commit | ba2e20149e2addaccf5ce3122d3a6e93da696a0a (patch) | |
tree | 14d2eb5a30ccb5f98be00caae683393e98d19979 /testsuite/tests/typecheck/should_fail/tcfail189.stderr | |
parent | 0960a37868e6d08857e86465c8ca346b29b1c813 (diff) | |
download | haskell-ba2e20149e2addaccf5ce3122d3a6e93da696a0a.tar.gz |
Do type-class defaulting even if there are insoluble constraints
The argument in Trac #9033 is very compelling: we should not report 20
errors, fix one, and have the other 19 disappear. They were spurious
in the first place.
The fix was easy; do type-class defaulting uncondionally, rather than
only if there are no insoluble constraints.
See Note [When to do type-class defaulting] in TcSimplify.
Error messages generally improve, especially tc211 which actually
had an example of precisely this phenomenon.
Diffstat (limited to 'testsuite/tests/typecheck/should_fail/tcfail189.stderr')
-rw-r--r-- | testsuite/tests/typecheck/should_fail/tcfail189.stderr | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/testsuite/tests/typecheck/should_fail/tcfail189.stderr b/testsuite/tests/typecheck/should_fail/tcfail189.stderr index 69e8b3dbba..6bd08a266c 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail189.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail189.stderr @@ -1,8 +1,8 @@ - -tcfail189.hs:10:31: - Couldn't match type ‘[a0]’ with ‘a -> a1’ - Expected type: (a -> a1) -> [a] -> [[a]] - Actual type: [a0] -> [a0] - Possible cause: ‘take’ is applied to too many arguments - In the expression: take 2 - In a stmt of a list comprehension: then group by x using take 2 +
+tcfail189.hs:10:31:
+ Couldn't match type ‘[a0]’ with ‘a -> Integer’
+ Expected type: (a -> Integer) -> [a] -> [[a]]
+ Actual type: [a0] -> [a0]
+ Possible cause: ‘take’ is applied to too many arguments
+ In the expression: take 2
+ In a stmt of a list comprehension: then group by x using take 2
|