[GHC] #15872: Odd pretty printing of equality constraint in kind ('GHC.Types.Eq# <>)
GHC
ghc-devs at haskell.org
Mon Feb 25 13:58:01 UTC 2019
#15872: Odd pretty printing of equality constraint in kind ('GHC.Types.Eq# <>)
-------------------------------------+-------------------------------------
Reporter: Iceland_jack | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.6.2
Resolution: | Keywords: TypeInType
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: Poor/confusing | Test Case:
error message | typecheck/should_fail/T12102
Blocked By: | Blocking:
Related Tickets: #12102, #13933 | Differential Rev(s): Phab:D5397
Wiki Page: |
-------------------------------------+-------------------------------------
Changes (by RyanGlScott):
* status: closed => new
* resolution: fixed =>
* milestone: 8.8.1 =>
Comment:
Commit
[https://gitlab.haskell.org/ghc/ghc/commit/6cce36f83aec33d33545e0ef2135894d22dff5ca
6cce36f83aec33d33545e0ef2135894d22dff5ca] (`Add AnonArgFlag to FunTy`)
added back the ability to have equality constraints in kinds.
Unfortunately, the issues in the original description persist:
{{{
GHCi, version 8.9.20190224: https://www.haskell.org/ghc/ :? for help
Loaded GHCi configuration from /home/rgscott/.ghci
[1 of 1] Compiling Main ( Bug.hs, interpreted )
Ok, one module loaded.
λ> :i MkFun
type role Fun nominal representational representational
data Fun (a1 :: a ~ 'OP) b c where
MkFun :: b -> c -> Fun 'GHC.Types.Eq# <> b c
-- Defined at Bug.hs:11:3
λ> :k Fun
Fun :: (a ~ 'OP) -> * -> * -> *
}}}
In fact, the situation is arguably //worse// now, since `:k Fun` reports
the entirely bogus kind `Fun :: (a ~ 'OP) -> * -> * -> *`. (See also
#12102.)
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15872#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list