[GHC] #11400: * is not an indexed type family

GHC ghc-devs at haskell.org
Sun Jan 10 19:05:27 UTC 2016


#11400: * is not an indexed type family
-------------------------------------+-------------------------------------
        Reporter:  RyanGlScott       |                Owner:
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler (Type    |              Version:  8.1
  checker)                           |
      Resolution:                    |             Keywords:  TypeInType
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  GHC rejects       |  Unknown/Multiple
  valid program                      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by RyanGlScott):

 Actually, this might just be a parser issue, not a data family issue. I
 can also get the above instance to work by typing it in as

 {{{#!hs
 data instance IdxProxy (*) a
 }}}

 Which leads me to believe that GHC is parsing {{{data instance IdxProxy *
 a}}} as {{{data instance (*) IdProxy a}}}—that is, it's interpreting `*`
 as an infix type operator (as evidence, typing in the latter declaration
 gets the same error message the former).

 I'm not sure how tricky it would be to detangle the parser in this case,
 since I'm not sure how GHC knows to choose `Data.Kind.*` over an infix
 type operator that happens to be named `*`.

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


More information about the ghc-tickets mailing list