Don't suppress unimplemented type family warnings with DeriveAnyClass
Summary: For some asinine reason, we were suppressing warnings when deriving associated type family instances with `DeriveAnyClass`. That seems like a bad idea. Let's not do that. Along the way, I noticed that the error contexts associated with these newly emitted warnings were less than ideal, so I did some minor refactoring to improve the story there. Fixes #14094 Test Plan: ./validate Reviewers: bgamari, austin Subscribers: rwbarton, thomie GHC Trac Issues: #14094 Differential Revision: https://phabricator.haskell.org/D3828
Showing
- compiler/typecheck/TcClassDcl.hs 22 additions, 5 deletionscompiler/typecheck/TcClassDcl.hs
- compiler/typecheck/TcDeriv.hs 12 additions, 10 deletionscompiler/typecheck/TcDeriv.hs
- compiler/typecheck/TcInstDcls.hs 1 addition, 1 deletioncompiler/typecheck/TcInstDcls.hs
- testsuite/tests/deriving/should_compile/T14094.hs 13 additions, 0 deletionstestsuite/tests/deriving/should_compile/T14094.hs
- testsuite/tests/deriving/should_compile/T14094.stderr 26 additions, 0 deletionstestsuite/tests/deriving/should_compile/T14094.stderr
- testsuite/tests/deriving/should_compile/all.T 1 addition, 0 deletionstestsuite/tests/deriving/should_compile/all.T
- testsuite/tests/deriving/should_fail/T10598_fail3.stderr 3 additions, 4 deletionstestsuite/tests/deriving/should_fail/T10598_fail3.stderr
- testsuite/tests/deriving/should_fail/T8165_fail2.stderr 4 additions, 3 deletionstestsuite/tests/deriving/should_fail/T8165_fail2.stderr
Please register or sign in to comment