
#8556: Invalid constructor names are accepted in data declarations -------------------------------------+------------------------------------ Reporter: dolio | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by monoidal): Here's a simple fix for 7.7 discussed on IRC: Writing a data declaration which contains at least one operator not starting with : should require -XDataKinds. So if you write `data A a = (&) a a` you have to enable DataKinds, since the `(&)` is available only in the promoted form. After KindsWithoutData get merged we will forbid it completely by changing the test to unconditional error. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8556#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler