logo       

GHC panic/loop (mdo): msg#00002

lang.haskell.glasgow.bugs

Subject: GHC panic/loop (mdo)

Hello,
the following program makes GHC 6.2.2 loop forever (testLoop) or panic
(testPanic).
I tried to derive small examples that illustrate the problem.
The problem seems to be related to the use of 'mdo', and it looks like it is
important that the expressoin 'f x' is repeated.

> import Control.Monad.Fix
> main :: IO ()
> main = return ()


This makes the compiler loop.

< testLoop _ = mdo x <- mapM undefined (f x)
< let f _ = []
< return (f x)

This makes the compiler panic.

> testPanic _ = mdo x <- f x
> let f _ = return ()
> f x

Hope this helps
Iavor


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise