
#7730: :info and polykinds --------------------------------------------+------------------------------ Reporter: monoidal | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: 7.10.1 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 --------------------------------------------+------------------------------ Comment (by archblob): I have implemented what we have discussed in comment 28 as {{{ data IfaceType = .... | IfaceTyConApp IfaceTyCon [IfaceTcArg] | ... data IfaceTcArg = ITC_Type IfaceType | ITC_Kind IfaceKind }}} because as I understood it all we want are tags, so I have found this easier to work with than ad hoc lists, please correct me if I am wrong. I also saw that you have changed the way we print foralls, so I will implement that approach in this case too. We will also have to add extra information to one of {{{IfaceClosedSynFamilyTyCon}}} or {{{IfaceSyn}}} constructors in order to print closed type families the way we do now, but this should not be a problem. I have run the tests and the implementation works except when printing qualified names, for example: {{{ data Int = GHC.Types.I# GHC.Prim.Int# }}} prints like {{{data Int = I# GHC.Prim.Int#}}} this is T8469, and we have more of the same for ghci051 with {{{ -data Ghci1.T = A | ... -- Defined at <interactive>:3:10 -data Ghci4.T = B | ... -- Defined at <interactive>:6:12 +data T = A | ... -- Defined at <interactive>:3:10 +data T = B | ... -- Defined at <interactive>:6:12 }}} I will look into this after I sorted out all the other stuff, but in the mean time any suggestions would be nice. I wrote this as a progress update, and if everything goes well i'll have the patch ready in a couple of days. Andrei -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/7730#comment:35 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler