
#15330: Error message prints invisible kind arguments in a visible matter -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler (Type | Version: 8.4.3 checker) | Resolution: | Keywords: TypeInType Operating System: Unknown/Multiple | Architecture: Type of failure: Poor/confusing | Unknown/Multiple error message | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Let's ''not'' do this in `Type`, but rather in `IfaceType`. For `Type` it is simply redundant info that we'll have to carry around and maintain. We only need it for pretty-printing. `IfaceType` (now a slight misnomer) is intended for serialisation, either to the user or to a binary file, so adding extra info makes sense. In practice, we are going to gather up all the args of a chain of `AppTy`s before pretty-printing, so we can lay them out nicely. So maybe we should use {{{ | IfaceAppTy IfaceType IfaceTcArgs }}} and then rename `IfaceTcArgs` to `IfaceAppArgs`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15330#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler