Re: [GHC] #7730: :info and polykinds

#7730: :info and polykinds --------------------------------------------+------------------------------ Reporter: monoidal | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: 7.8.3 Component: Compiler (Type checker) | Version: 7.6.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: None/Unknown | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #8776 --------------------------------------------+------------------------------ Changes (by simonpj): * cc: goldfire (added) Comment: Re (2) I'm not too bothered. What you see is what you get. That is, the user wrote `{-# UNPACK #-}` but it didn't happen, so it doesn't show up in the `IfaceSyn`. So I'd just leave it as it is. In your example, I guess you only compiled `STest` without `-O`, else you would see the UNPACK? Re (1) this is actually very much the same kind of issue as with `IfaceFunTy` vs `IfaceDictFunTy`; we don't have quite enough info in the `IfaceType`. I'm adding Richard to the cc list because he is busy unifying types and kinds, and separating the issue of source-code visiblity. To solve (1) we'd need to add a flag saying "I a kind" to each argument of an `IfaceTyConApp`. That's quite painful, `IfaceTyConApp` is very common. It might be better to say: {{{ data IfaceType = .... | IfaceTyConApp IfaceTcArgs | ... data IfaceTcArgs = ITC_Nil | ITC_Type IfaceType IfaceTcArgs | ITC_Kind IfaceKind IfaceTcArgs }}} That would be be simple and would hardly affect in interface files. But I'd like to see what Richard has to say first. Simon -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/7730#comment:28 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC