#3424: Corrupt executable when compiling large do block for List monad
-------------------+--------------------------------------------------------
Reporter:  guest   |          Owner:          
    Type:  bug     |         Status:  new     
Priority:  normal  |      Component:  Compiler
 Version:  6.10.4  |       Severity:  normal  
Keywords:          |       Testcase:          
      Os:  Linux   |   Architecture:  x86     
-------------------+--------------------------------------------------------
 For a program that like
 {{{
 z :: [[Int]]
 z = do
    x1 <- [0..3]
    x2 <- [0..3]
    x3 <- [0..3]
    x4 <- [0..3]
    x5 <- [0..3]
    x6 <- [0..3]
    x7 <- [0..3]
    ...
    x600 <- [0..3]
    guard (x1+x2+2*x3 >= 0)
    return [x1,x2,x3,...,x600]
 }}}
 the compiler generates a program, that aborts with
 {{{
 internal error: scavenge: unimplemented/strange closure type -1 @
 }}}
 .

 Description and example Haskell program can be found here:
   http://www.haskell.org/pipermail/haskell-cafe/2009-August/065001.html

 Maybe related: #830

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3424>
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

Reply via email to