
#15675: Type operators in existential context cannot be parsed -------------------------------------+------------------------------------- Reporter: int-index | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler | Version: 8.4.3 (Parser) | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: GHC rejects Unknown/Multiple | valid program Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- {{{#!haskell {-# LANGUAGE TypeOperators, MultiParamTypeClasses, ExistentialQuantification #-} class a + b data D1 = forall a b. (a + b) => D1 a b data D2 = forall a b. a + b => D2 a b }}} The declaration `D1` is accepted, while `D2` is rejected. There is no reason to reject `D2` except for shortcomings of the current grammar. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15675 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler