diff options
-rw-r--r-- | testsuite/tests/stranal/sigs/FacState.hs | 6 | ||||
-rw-r--r-- | testsuite/tests/stranal/sigs/FacState.stderr | 5 | ||||
-rw-r--r-- | testsuite/tests/stranal/sigs/all.T | 2 |
3 files changed, 12 insertions, 1 deletions
diff --git a/testsuite/tests/stranal/sigs/FacState.hs b/testsuite/tests/stranal/sigs/FacState.hs new file mode 100644 index 0000000000..470bbd9dcb --- /dev/null +++ b/testsuite/tests/stranal/sigs/FacState.hs @@ -0,0 +1,6 @@ +module FacState where + + +fac :: Int -> a -> (a, Int) +fac n s | n < 2 = (s,1) + | otherwise = case fac (n-1) s of (s',n') -> let n'' = n*n' in n'' `seq` (s',n'') diff --git a/testsuite/tests/stranal/sigs/FacState.stderr b/testsuite/tests/stranal/sigs/FacState.stderr new file mode 100644 index 0000000000..133ad6ec26 --- /dev/null +++ b/testsuite/tests/stranal/sigs/FacState.stderr @@ -0,0 +1,5 @@ + +==================== Strictness signatures ==================== +FacState.fac: <S,1*U(U)><L,U>dm1(d,tm1(d)) + + diff --git a/testsuite/tests/stranal/sigs/all.T b/testsuite/tests/stranal/sigs/all.T index d77cd9e236..ca47b529d2 100644 --- a/testsuite/tests/stranal/sigs/all.T +++ b/testsuite/tests/stranal/sigs/all.T @@ -11,4 +11,4 @@ test('StrAnalExample', normal, compile, ['']) test('T8569', expect_broken(8569), compile, ['']) test('HyperStrUse', normal, compile, ['']) test('T8598', normal, compile, ['']) - +test('FacState', expect_broken(1600), compile, ['']) |