[GHC] #11405: Incorrect failure of type-level skolem escape check

GHC ghc-devs at haskell.org
Sat Jan 16 12:47:58 UTC 2016


#11405: Incorrect failure of type-level skolem escape check
-------------------------------------+-------------------------------------
        Reporter:  goldfire          |                Owner:  goldfire
            Type:  bug               |               Status:  closed
        Priority:  highest           |            Milestone:  8.0.1
       Component:  Compiler          |              Version:  8.0.1-rc1
      Resolution:  fixed             |             Keywords:  TypeInType
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
                                     |  dependent/should_compile/T11405
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Changes (by bgamari):

 * status:  merge => closed
 * resolution:   => fixed


Old description:

> From Phab:D1739.
>
> When you say
>
> {{{
> undefined :: forall (v :: Levity). forall (a :: TYPE v). (?callStack ::
> CallStack) => a
> }}}
>
> you get a skolem escape failure because GHC things that the kind of
> `(?callStack :: CallStack) => a` is `TYPE v`. It should be `*`.
>
> I will fix.

New description:

 From Phab:D1739.

 When you say

 {{{#!hs
 undefined :: forall (v :: Levity). forall (a :: TYPE v). (?callStack ::
 CallStack) => a
 }}}

 you get a skolem escape failure because GHC things that the kind of
 `(?callStack :: CallStack) => a` is `TYPE v`. It should be `*`.

 I will fix.

--

Comment:

 This has been merged to `ghc-8.0` as 018f866.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11405#comment:12>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list