
#13834: Error cascade with type applications -------------------------------------+------------------------------------- Reporter: mpickering | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: | TypeApplications, TypeErrorMessages Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #12794 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Well * I think it'd be better to suppress the "Cannot apply" error. That is what the origina ticket Description was asking for, and I think I can see how to do so. (Suppress the error in `TcExpr.tcArgs` if the `fun` is a `HsUnboundVar`.) * But a harder problem is that if you try with `-fdefer-type-errors` then we get {{{ bash$ ghc -c T13834.hs -fdefer-type-errors T13834.hs:5:7: error: • Cannot apply expression of type ‘t1’ to a visible type argument ‘Bool’ • In the expression: notInScope @Bool In an equation for ‘foo’: foo = notInScope @Bool | 5 | foo = notInScope @Bool | ^^^^^^^^^^^^^^^^ }}} The out-of-scope thing has turned into a warning, with deferred evidence. And rightly so in a way: you can run a program with an out-of- scope variable, provided you don't evaluate it. But the "cannot apply" error is still an error: it can't be deferred. I have not thought deeply about this, but I can't see an easy fix. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13834#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler