
#13713: fdefer-type-errors makes missing import errors disappear -------------------------------------+------------------------------------- Reporter: nh2 | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #12529 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Simpler example {{{ {-# LANGUAGE TypeApplications #-} module T13713 where toVec = withVector (Proxy @Int) }}} The trouble is this: * The out-of-scope variables become deferred errors, which are reported as warnings * The "Cannot apply..." error is an error that we can't defer, so it stays as an error * When we have errors and warnings we report only the errors. So the out of scope variables are suppressed when (and only when) they are turned into warnings by `-fdefer-type-errors`. I'm not quite sure what to do here. I suppose the errors-that-become- warnings (via the defer mechanism) could somehow be made immune to suppression by errors that don't become warnings. That seems like the most plausible path to me, but someone would need to do it. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13713#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler