dd9b5907

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Read the declarations a module writes, not the ones it quotes

A Template Haskell bracket is an expression, and a search for data definitions
finds the constructors inside one. Those are a template: the module has no such
constructor, nobody passes it an argument here, and the newtype a finding asks
for would be asked of a bracket. The population the rule was measured against
had no quoted constructors in it either, so reading them would have been a
population nobody looked at.

The GADT spelling was implemented and had no case over it, including the one
signature that introduces two names, so it gets one here.
e2e-added-rule-is-rune2e-artifacts-are-reade2e-choices-are-found-beside-the-repositorye2e-cleane2e-dirty-package-is-judged-failinge2e-dirty-project-is-judged-failinge2e-dirty-report-is-readablee2e-disabled-rule-is-not-rune2e-incomplete-artifacts-are-a-failuree2e-judging-nothing-failse2e-named-packages-are-every-packagee2e-no-packages-is-judged-failinge2e-no-store-paths-in-findingse2e-paths-are-repository-relativee2e-withheld-facts-faile2e-wrong-source-mapping-is-a-complainthlint-checkhopinionpre-commitreleaseshellweeder-checkconfiguredevShelldefaultx86_64-linux