#7791: Bad error message when strictness annotations are used without 
BangPatterns
pragma
----------------------------------------------+-----------------------------
Reporter:  manzyuk                            |          Owner:                
    Type:  bug                                |         Status:  new           
Priority:  normal                             |      Component:  Compiler      
 Version:  7.4.1                              |       Keywords:                
      Os:  Linux                              |   Architecture:  x86_64 (amd64)
 Failure:  Incorrect warning at compile-time  |      Blockedby:                
Blocking:                                     |        Related:                
----------------------------------------------+-----------------------------

Comment(by monoidal):

 The error message is correct, since without extensions, the declaration
 `go ! k = ...` defines an operator called `!` (analogously to `go * k =
 ...`) and therefore `go` is out of scope in line 1. You can get a nice
 suggestion if you write `go (!k) = ...` or `go !k !l = ...`. It's hard to
 expect GHC to deduce from context whether a syntactically-correct `go ! k
 = ...` was meant to be something different.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7791#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler

_______________________________________________
ghc-tickets mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-tickets

Reply via email to