[GHC] #11787: Infer HasCallStack where possible

GHC ghc-devs at haskell.org
Mon Apr 4 15:17:04 UTC 2016


#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


More information about the ghc-tickets mailing list