[GHC] #8246: Role annotations does not allow the use of parenthesis

#8246: Role annotations does not allow the use of parenthesis -------------------------------------+------------------------------------- Reporter: DaniilFrumin | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (Parser) | Version: 7.7 Keywords: roles | Operating System: Unknown/Multiple Architecture: Unknown/Multiple | Type of failure: None/Unknown Difficulty: Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | -------------------------------------+------------------------------------- There is an inconsistency in roles/kinds annotations wrt parenthesis. For example, the following code compiles just fine {{{ data A (a::*) = A }}} unlike this code {{{ data A (a@R) = A }}} which results in a compilation error: Unexpected type `a@R' where type variable expected In the declaration of `A (a@R)' As Austin Seipp has pointed out, it boils down to simply: 'data A (a) = A' This also prompts for further [http://ghc.haskell.org/trac/ghc/wiki/Roles#Roleandkindannotations discussion] about role annotations in presence of kind annotations [1]. For example, should '((a :: *)@R)' be a correct annotation? Related (?) ticket: #8185 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8246 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8246: Role annotations does not allow the use of parenthesis --------------------------------------+------------------------------------ Reporter: DaniilFrumin | Owner: goldfire Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (Parser) | Version: 7.7 Resolution: | Keywords: roles Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: --------------------------------------+------------------------------------ Changes (by goldfire): * owner: => goldfire Comment: Thanks for this report. I'll make sure to fix in the general annotation syntax overhaul from #8185. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8246#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#8246: Role annotations does not allow the use of parenthesis
--------------------------------------+------------------------------------
Reporter: DaniilFrumin | Owner: goldfire
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler (Parser) | Version: 7.7
Resolution: | Keywords: roles
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
--------------------------------------+------------------------------------
Comment (by Richard Eisenberg

#8246: Role annotations does not allow the use of parenthesis --------------------------------------+------------------------------------ Reporter: DaniilFrumin | Owner: goldfire Type: bug | Status: closed Priority: normal | Milestone: Component: Compiler (Parser) | Version: 7.7 Resolution: fixed | Keywords: roles Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: --------------------------------------+------------------------------------ Changes (by goldfire): * status: new => closed * resolution: => fixed -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8246#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC