
#10194: Shouldn't this require ImpredicativeTypes? -------------------------------------+------------------------------------- Reporter: kosmikus | Owner: Type: bug | Status: merge Priority: normal | Milestone: 7.10.2 Component: Compiler (Type | Version: 7.8.4 checker) | Keywords: Resolution: fixed | Architecture: Operating System: Unknown/Multiple | Unknown/Multiple Type of failure: GHC accepts | Test Case: invalid program | typecheck/should_fail/T10194 Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by refold): Replying to [comment:10 adamgundry]:
One would expect some programs that were previously (erroneously) accepted to now require `-XImpredicativeTypes`.
Yes, that's what seems to happen in the `xmonad-contrib` case: {{{ XMonad/Layout/Groups/Helpers.hs:181:8: Cannot instantiate unification variable `a0' with a type involving foralls: G.ModifySpec Perhaps you want ImpredicativeTypes In the expression: sendMessage . G.Modify In an equation for `wrap': wrap = sendMessage . G.Modify XMonad/Layout/Groups/Helpers.hs:181:22: Cannot instantiate unification variable `a0' with a type involving foralls: G.ModifySpec Perhaps you want ImpredicativeTypes In the second argument of `(.)', namely `G.Modify' In the expression: sendMessage . G.Modify }}}
That's not necessarily a reason to revert this patch.
The issue doesn't affect me personally, so I'm not going to argue. My comment was JFYI. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10194#comment:11 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler