diff options
author | Apoorv Ingle <apoorv-ingle@uiowa.edu> | 2022-11-13 18:01:03 -0600 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-11-29 03:09:31 -0500 |
commit | 8d15eadc2a791062f0392ec0d1b3a30f7e214fa4 (patch) | |
tree | 69e55f5de6636dce165d0bc692ac21b9f765a5ce /testsuite/tests/typecheck/should_fail/all.T | |
parent | d4134e920a79ddfe7abb291964614e4f428c1a24 (diff) | |
download | haskell-8d15eadc2a791062f0392ec0d1b3a30f7e214fa4.tar.gz |
Killing cc_fundeps, streamlining kind equality orientation, and type equality processing order
Fixes: #217093
Associated to #19415
This change
* Flips the orientation of the the generated kind equality coercion in canEqLHSHetero;
* Removes `cc_fundeps` in CDictCan as the check was incomplete;
* Changes `canDecomposableTyConAppOk` to ensure we process kind equalities before type equalities and avoiding a call to `canEqLHSHetero` while processing wanted TyConApp equalities
* Adds 2 new tests for validating the change
- testsuites/typecheck/should_compile/T21703.hs and
- testsuites/typecheck/should_fail/T19415b.hs (a simpler version of T19415.hs)
* Misc: Due to the change in the equality direction some error messages now have flipped type mismatch errors
* Changes in Notes:
- Note [Fundeps with instances, and equality orientation] supercedes Note [Fundeps with instances]
- Added Note [Kind Equality Orientation] to visualize the kind flipping
- Added Note [Decomposing Dependent TyCons and Processing Wanted Equalties]
Diffstat (limited to 'testsuite/tests/typecheck/should_fail/all.T')
-rw-r--r-- | testsuite/tests/typecheck/should_fail/all.T | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/testsuite/tests/typecheck/should_fail/all.T b/testsuite/tests/typecheck/should_fail/all.T index 646e5685c7..ab7821398a 100644 --- a/testsuite/tests/typecheck/should_fail/all.T +++ b/testsuite/tests/typecheck/should_fail/all.T @@ -630,6 +630,7 @@ test('T19397E3', extra_files(['T19397S.hs']), multimod_compile_fail, test('T19397E4', extra_files(['T19397S.hs']), multimod_compile_fail, ['T19397E4.hs', '-v0 -main-is foo']) test('T19415', normal, compile_fail, ['']) +test('T19415b', normal, compile_fail, ['']) test('T19915', normal, compile_fail, ['']) test('T19977a', normal, compile_fail, ['']) test('T19977b', normal, compile_fail, ['']) |