
#15180: Make Control.Exception.throw levity polymorphic -------------------------------------+------------------------------------- Reporter: andrewthad | Owner: (none) Type: task | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.2.2 Keywords: | Operating System: Unknown/Multiple LevityPolymorphism | Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- The `error` function has a levity-polymorphic type. I propose that the same be done for `throw`. I just encountered a situation where I needed this, and instead of calling `throw x`, I had to call `raise# (toException x)` because `throw` is unnecessarily restrictive. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15180 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler