Fix DeriveAnyClass (again)
This patch fixes Trac #13272. The general approach was fine, but we were simply not generating the correct implication constraint (in particular generating fresh unification variables). I added a lot more commentary to Note [Gathering and simplifying constraints for DeriveAnyClass] I'm still not very happy with the overall architecture. It feels more complicate than it should.
Showing
- compiler/typecheck/TcDerivInfer.hs 126 additions, 118 deletionscompiler/typecheck/TcDerivInfer.hs
- testsuite/tests/deriving/should_compile/T13272.hs 23 additions, 0 deletionstestsuite/tests/deriving/should_compile/T13272.hs
- testsuite/tests/deriving/should_compile/T13272a.hs 21 additions, 0 deletionstestsuite/tests/deriving/should_compile/T13272a.hs
- testsuite/tests/deriving/should_compile/all.T 2 additions, 0 deletionstestsuite/tests/deriving/should_compile/all.T
Please register or sign in to comment