diff options
Diffstat (limited to 'testsuite/tests/stranal')
-rw-r--r-- | testsuite/tests/stranal/sigs/NewtypeArity.hs | 10 | ||||
-rw-r--r-- | testsuite/tests/stranal/sigs/NewtypeArity.stderr | 18 | ||||
-rw-r--r-- | testsuite/tests/stranal/sigs/all.T | 1 |
3 files changed, 29 insertions, 0 deletions
diff --git a/testsuite/tests/stranal/sigs/NewtypeArity.hs b/testsuite/tests/stranal/sigs/NewtypeArity.hs new file mode 100644 index 0000000000..3a8e96bf41 --- /dev/null +++ b/testsuite/tests/stranal/sigs/NewtypeArity.hs @@ -0,0 +1,10 @@ +-- | 't' and 't2' should have a strictness signature for arity 2 here. +module Test where + +newtype T = MkT (Int -> Int -> Int) + +t :: T +t = MkT (\a b -> a + b) + +t2 :: T +t2 = MkT (+) diff --git a/testsuite/tests/stranal/sigs/NewtypeArity.stderr b/testsuite/tests/stranal/sigs/NewtypeArity.stderr new file mode 100644 index 0000000000..08ce83f9bd --- /dev/null +++ b/testsuite/tests/stranal/sigs/NewtypeArity.stderr @@ -0,0 +1,18 @@ + +==================== Strictness signatures ==================== +Test.$tc'MkT: m +Test.$tcT: m +Test.$trModule: m +Test.t: <S,1*U(U)><S,1*U(U)>m +Test.t2: <S,1*U(U)><S,1*U(U)>m + + + +==================== Strictness signatures ==================== +Test.$tc'MkT: m +Test.$tcT: m +Test.$trModule: m +Test.t: <S,1*U(U)><S,1*U(U)>m +Test.t2: <S,1*U(U)><S,1*U(U)>m + + diff --git a/testsuite/tests/stranal/sigs/all.T b/testsuite/tests/stranal/sigs/all.T index 091a4f47ee..fca319f1a3 100644 --- a/testsuite/tests/stranal/sigs/all.T +++ b/testsuite/tests/stranal/sigs/all.T @@ -17,3 +17,4 @@ test('BottomFromInnerLambda', normal, compile, ['']) test('DmdAnalGADTs', normal, compile, ['']) test('T12370', normal, compile, ['']) test('CaseBinderCPR', normal, compile, ['']) +test('NewtypeArity', normal, compile, ['']) |