#7259: Eta expansion of products in System FC
---------------------------------+------------------------------------------
    Reporter:  simonpj           |       Owner:  simonpj         
        Type:  bug               |      Status:  new             
    Priority:  normal            |   Milestone:  7.8.1           
   Component:  Compiler          |     Version:  7.6.1           
    Keywords:                    |          Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  |     Failure:  None/Unknown    
  Difficulty:  Unknown           |    Testcase:                  
   Blockedby:                    |    Blocking:                  
     Related:                    |  
---------------------------------+------------------------------------------

Comment(by diatchki):

 I updated `GHC.TypeLits` to avoid using `Any` as a constructor, so now we
 should be able to convert it to a type function.

 In a previous e-mail I mentioned some "sketchiness" that occurs when using
 `Any` (in either form) with empty kinds.  Here is an example to illustrate
 the issue:
 {{{
 data {-kind-} Empty

 data T (a :: Empty) = C deriving Show

 main = print C -- what is the type of C here?
 }}}
 The issue is that in `main`: constructor `C` is of type `T Any`, with
 `Any` of kind `Empty`.  However, kind `Empty` has no members, so what does
 `Any` refer to?

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

_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to