[GHC] #15804: GHC panic: data T :: (a :: k) -> * (was: GHC panic (Visible kind application diff): data T :: (a :: k) -> *)

GHC ghc-devs at haskell.org
Thu Oct 25 14:38:17 UTC 2018


#15804: GHC panic: data T :: (a :: k) -> *
-------------------------------------+-------------------------------------
        Reporter:  Iceland_jack      |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.6.1
      Resolution:                    |             Keywords:
                                     |  TypeApplications
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Changes (by Iceland_jack):

 * keywords:   => TypeApplications
 * cc: mnguyen (added)


Old description:

> (using [https://phabricator.haskell.org/D5229 Visual Kind Application
> (D5229)])
>
> This might be the root cause of some of my previous
>
> {{{#!hs
> {-# Language PolyKinds #-}
>
> data T :: (a :: k) -> *
> }}}
> {{{
> $ ghci -ignore-dot-ghci 580.hs
> GHCi, version 8.7.20181017: http://www.haskell.org/ghc/  :? for help
> [1 of 1] Compiling Main             ( 580.hs, interpreted )
> ghc-stage2: panic! (the 'impossible' happened)
>   (GHC version 8.7.20181017 for x86_64-unknown-linux):
>         ASSERT failed!
>   Type-correct unfilled coercion hole {co_a1xI}
>   Call stack:
>       CallStack (from HasCallStack):
>         callStackDoc, called at compiler/utils/Outputable.hs:1160:37 in
> ghc:Outputable
>         pprPanic, called at compiler/utils/Outputable.hs:1219:5 in
> ghc:Outputable
>         assertPprPanic, called at compiler/typecheck/TcHsSyn.hs:1805:99
> in ghc:TcHsSyn
>
> Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
>
> >
> }}}
>
> on 8.6.1 this gives
>
> {{{
> $ ~/.stack/programs/x86_64-linux/ghc-8.6.1/bin/ghci -ignore-dot-ghci
> 580.hs
> GHCi, version 8.6.1: http://www.haskell.org/ghc/  :? for help
> [1 of 1] Compiling Main             ( /home/baldur/hs/580.hs, interpreted
> )
>
> /home/baldur/hs/580.hs:3:11: error:
>     • Expected a type, but ‘(a :: k)’ has kind ‘k’
>     • In the kind ‘(a :: k) -> *’
>   |
> 3 | data T :: (a :: k) -> *
>   |           ^^^^^^^^
> Failed, no modules loaded.
> Prelude>
> }}}

New description:

 This might be the root cause of some of my previous

 {{{#!hs
 {-# Language PolyKinds #-}

 data T :: (a :: k) -> *
 }}}
 {{{
 $ ghci -ignore-dot-ghci 580.hs
 GHCi, version 8.7.20181017: http://www.haskell.org/ghc/  :? for help
 [1 of 1] Compiling Main             ( 580.hs, interpreted )
 ghc-stage2: panic! (the 'impossible' happened)
   (GHC version 8.7.20181017 for x86_64-unknown-linux):
         ASSERT failed!
   Type-correct unfilled coercion hole {co_a1xI}
   Call stack:
       CallStack (from HasCallStack):
         callStackDoc, called at compiler/utils/Outputable.hs:1160:37 in
 ghc:Outputable
         pprPanic, called at compiler/utils/Outputable.hs:1219:5 in
 ghc:Outputable
         assertPprPanic, called at compiler/typecheck/TcHsSyn.hs:1805:99 in
 ghc:TcHsSyn

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

 >
 }}}

 on 8.6.1 this gives

 {{{
 $ ~/.stack/programs/x86_64-linux/ghc-8.6.1/bin/ghci -ignore-dot-ghci
 580.hs
 GHCi, version 8.6.1: http://www.haskell.org/ghc/  :? for help
 [1 of 1] Compiling Main             ( /home/baldur/hs/580.hs, interpreted
 )

 /home/baldur/hs/580.hs:3:11: error:
     • Expected a type, but ‘(a :: k)’ has kind ‘k’
     • In the kind ‘(a :: k) -> *’
   |
 3 | data T :: (a :: k) -> *
   |           ^^^^^^^^
 Failed, no modules loaded.
 Prelude>
 }}}

--

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


More information about the ghc-tickets mailing list