
#11787: Infer HasCallStack where possible -------------------------------------+------------------------------------- Reporter: simonpj | Owner: gridaphobe Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.10.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by gridaphobe): Rewriting the IP to use the built-in synonym was originally part of Phab:D1912 (finally merged this morning!), but I believe I removed it in the last revision since we no longer infer CallStacks, period. So as of this morning your example should look like {{{ Prelude> :t error error :: GHC.Stack.Types.HasCallStack => [Char] -> a Prelude> :t (\x -> error x) (\x -> error x) :: [Char] -> a }}} I don't quite see the connection between #11376 and this issue. You seem to be suggesting that the fix for #11376 involves expanding type synonyms, which sounds like a very undesirable side-effect to me! Does this mean `:type` would also expand a synonym for a giant monad stack? Regardless, if we need to rewrite the type to use the synonym that should be easy to do. If I'm lucky it's even still in my git history somewhere :) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11787#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler