[GHC] #14729: normaliseType is not well-kinded
GHC
ghc-devs at haskell.org
Sat Jan 27 18:44:37 UTC 2018
#14729: normaliseType is not well-kinded
-------------------------------------+-------------------------------------
Reporter: goldfire | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.2
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
Suppose we have
{{{
Proxy :: forall k. k -> Type
type family F a
type instance F Int = Bool
}}}
and we're trying to normalise the target
{{{
Proxy (F Int) x
}}}
Clearly, for this target to be well kinded, we need `x :: F Int`.
Currently, the output of `normaliseType` is `Proxy Bool x`, which is just
plain wrong.
I need to implement logic like in `flatten_args` on
[https://github.com/goldfirere/ghc my branch] in `normaliseType` to fix
this.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14729>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list