Prioritise equalities when solving, incl deriveds
We already prioritise equalities when solving, but Trac #14723 showed that we were not doing so consistently enough, and as a result the type checker could go into a loop. Yikes. See Note [Prioritise equalities] in TcSMonad. Fixng this bug changed the solve order enough to demonstrate a problem with fundeps: Trac #14745.
Showing
- compiler/typecheck/TcSMonad.hs 71 additions, 22 deletionscompiler/typecheck/TcSMonad.hs
- testsuite/tests/polykinds/T14723.hs 70 additions, 0 deletionstestsuite/tests/polykinds/T14723.hs
- testsuite/tests/polykinds/all.T 1 addition, 0 deletionstestsuite/tests/polykinds/all.T
- testsuite/tests/typecheck/should_compile/T13651.hs 21 additions, 0 deletionstestsuite/tests/typecheck/should_compile/T13651.hs
- testsuite/tests/typecheck/should_compile/T13651.stderr 16 additions, 0 deletionstestsuite/tests/typecheck/should_compile/T13651.stderr
- testsuite/tests/typecheck/should_compile/T13651a.hs 16 additions, 0 deletionstestsuite/tests/typecheck/should_compile/T13651a.hs
- testsuite/tests/typecheck/should_compile/all.T 2 additions, 1 deletiontestsuite/tests/typecheck/should_compile/all.T
Loading
Please register or sign in to comment