summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghc-regress/codeGen/should_run/3677.hs
blob: 67b12b2672fc54066b71fbc4d93417513c288421 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module Main(main) where

main = print (take 2 (edi2 0))

-- In 6.12, edi2 lead to a stack overflow (see #3677)

edi :: Integer -> [Integer]
edi x | x `mod` 1000000 == 0 = x : edi (x+1)
      | otherwise             = edi (x+1)

edi2 :: Integer -> [Integer]
edi2 x | x `mod` 1000000 == 0 = x : y
       | otherwise             = y
       where
         y = edi2 (x+1)