
#12791: Superclass methods could be more aggressively specialised. -------------------------------------+------------------------------------- Reporter: mpickering | Owner: danharaj Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2714 Wiki Page: | -------------------------------------+------------------------------------- Comment (by mpickering): Dan, you should open a new ticket to talk about this change as it is unrelated. I think it is still unclear what is going on in the case of reflex but let's not side track this ticket. It isn't clear that instances such as the strange one in your ticket help at all. If at the call site, a specific `t` is known then the class methods of `Reflex` should be suitably specialised, if not then we should understand why it is not happening without resorting to hacks! I think there are plenty of real world examples of this, that isn't a worry. A simple one is {{{ foo :: MonadWriter String m => m () foo = ... }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12791#comment:23 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler