#3822: pattern guards in arrow notation (Arrows extension) case statement cause
compiler panic
----------------------------------+-----------------------------------------
Reporter: StephenBlackheath | Owner:
Type: bug | Status: new
Priority: normal | Component: Compiler
Version: 6.12.1 | Keywords: arrows pattern guards case
panic
Os: Linux | Testcase: patternGuard.hs
Architecture: x86_64 (amd64) | Failure: Compile-time crash
----------------------------------+-----------------------------------------
Comment(by StephenBlackheath):
Trac won't let me attach files (OSError: [Errno 13] Permission denied:
'/srv/trac/ghc/attachments/ticket/3822'), so here's the test case in a
comment. Command line is
ghc patternGuard.hs --make
-------------------------------------------------
{-# LANGUAGE Arrows #-}
import Control.Arrow
import qualified Control.Category as Cat
test :: Int -> Int
test = proc x -> do
let neg = x < 0
case x of
x | neg -> returnA -< 0 -- GHC panics
--x | x < 0 -> returnA -< 0 -- GHC doesn't panic
_ -> returnA -< 10
main = do
print $ test (-1)
print $ test 1
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3822#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs