[GHC] #15828: Type family equation foralls allow strange re-quantification of class-bound type variables
GHC
ghc-devs at haskell.org
Fri Nov 30 10:44:16 UTC 2018
#15828: Type family equation foralls allow strange re-quantification of class-bound
type variables
-------------------------------------+-------------------------------------
Reporter: RyanGlScott | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.8.1
Component: Compiler | Version: 8.7
Resolution: | Keywords: TypeFamilies
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
| rename/should_fail/T15828
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D5283
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
> Fix a bug in commit 12eeb9 which permits the following:
What is 12eeb9?
{{{
$ git show 12eeb9
fatal: ambiguous argument '12eeb9': unknown revision or path not in the
working tree.
}}}
(In an up to date tree.)
> hy did this fail? It's extremely hard to tell, but it's because the two
a variables aren't the same!
Quite true. So what would we ''like'' to show here? Once we decide that
we can think how to achieve it. (It is perhaps fortunate that there is a
dedicated pretty-printer for this particular error.)
I'm quite keen on using "_" for the bits that don't matter, but if needs
must, instead of printing `(F t1 t2 t3)` with one call, we can make
separate calls for `t1`, `t2`, `t3` etc, and that would eliminate the need
to fake-up a tyvar "_" which you'll see in the code.
Would love to have your help if here if you are willing.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15828#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list