
#7667: Template Haskell fails to recognize type operator/function + ---------------------------------+------------------------------------------ Reporter: andygill | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Template Haskell | Version: 7.6.2 Keywords: | Os: Unknown/Multiple Architecture: Unknown/Multiple | Failure: GHC rejects valid program Difficulty: Unknown | Testcase: Blockedby: | Blocking: Related: | ---------------------------------+------------------------------------------ Changes (by simonpj): * difficulty: => Unknown Comment: OK so we could test flags etc make `okOcc` accept the type operator. Or alternatively we could simply omit the test, which would allow TH to generate names that the programmer could not right. In fact it currently only checks the name space; that is, checks that if the name claims to be a data constructor then it starts with an uppper case letter or colon. But it does ''not'' check the name is a legal one; it could be the data constructor `C$$` for example, which the programmer can't write. I'm inclined to go the whole way, and simply treat the name space in the TH name as authoritative, regardless of the string that used for the name. I'll that unless someone yells. Simon -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7667#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler