Show explicit quantifiers in conflicting definitions error
authorPhil de Joux <phil.dejoux@blockscope.com>
Fri, 20 Jan 2017 19:59:44 +0000 (14:59 -0500)
committerBen Gamari <ben@smart-cactus.org>
Fri, 20 Jan 2017 21:13:52 +0000 (16:13 -0500)
commit33140f41b931fb81bf2e5aa28603fe757bb3779d
treef284c1d4363fcea665be5aef2706ecfb3c5cea16
parentd49b2bb21691892ca6ac8f2403e31f2a5e53feb3
Show explicit quantifiers in conflicting definitions error

This fixes #12441, where definitions in a Haskell module and its boot
file which differed only in their quantifiers produced a confusing error
message. Here we teach GHC to always show quantifiers for these errors.

Reviewers: goldfire, simonmar, erikd, austin, hvr, bgamari

Reviewed By: bgamari

Subscribers: snowleopard, simonpj, mpickering, thomie

Differential Revision: https://phabricator.haskell.org/D2734

GHC Trac Issues: #12441
19 files changed:
compiler/ghci/Debugger.hs
compiler/iface/IfaceSyn.hs
compiler/iface/IfaceType.hs
compiler/iface/IfaceType.hs-boot
compiler/main/HscTypes.hs
compiler/main/PprTyThing.hs
compiler/typecheck/TcRnDriver.hs
compiler/types/TyCoRep.hs
ghc/GHCi/UI.hs
testsuite/tests/codeGen/should_run/T12855.hs
testsuite/tests/ghci/scripts/T11051b.stdout
testsuite/tests/ghci/scripts/ghci025.stdout
testsuite/tests/partial-sigs/should_compile/T12844.hs
testsuite/tests/typecheck/T12441/T12441.hs [new file with mode: 0644]
testsuite/tests/typecheck/T12441/T12441.hs-boot [new file with mode: 0644]
testsuite/tests/typecheck/T12441/T12441.stderr [new file with mode: 0644]
testsuite/tests/typecheck/T12441/T12441A.hs [new file with mode: 0644]
testsuite/tests/typecheck/T12441/all.T [new file with mode: 0644]
testsuite/tests/typecheck/should_compile/Improvement.hs