diff options
Diffstat (limited to 'testsuite/tests/programs/strict_anns')
-rw-r--r-- | testsuite/tests/programs/strict_anns/Main.hs | 13 | ||||
-rw-r--r-- | testsuite/tests/programs/strict_anns/Makefile | 3 | ||||
-rw-r--r-- | testsuite/tests/programs/strict_anns/strict_anns.stdout | 2 | ||||
-rw-r--r-- | testsuite/tests/programs/strict_anns/test.T | 6 |
4 files changed, 24 insertions, 0 deletions
diff --git a/testsuite/tests/programs/strict_anns/Main.hs b/testsuite/tests/programs/strict_anns/Main.hs new file mode 100644 index 0000000000..b2ee82d4bc --- /dev/null +++ b/testsuite/tests/programs/strict_anns/Main.hs @@ -0,0 +1,13 @@ +-- This test checks that constructors with strictness annotations +-- at least parse correctly. In GHC 2.02 they didn't! + +module Main where + +data Foo1 = Crunch1 ! Int ! Int Int deriving( Show ) + +data Foo2 = Crunch2 ! Int Int Int deriving( Show ) + +main = do + print (Crunch1 (1+1) (2+2) (3+3)) + print (Crunch2 (1+1) (2+2) (3+3)) + diff --git a/testsuite/tests/programs/strict_anns/Makefile b/testsuite/tests/programs/strict_anns/Makefile new file mode 100644 index 0000000000..9101fbd40a --- /dev/null +++ b/testsuite/tests/programs/strict_anns/Makefile @@ -0,0 +1,3 @@ +TOP=../../.. +include $(TOP)/mk/boilerplate.mk +include $(TOP)/mk/test.mk diff --git a/testsuite/tests/programs/strict_anns/strict_anns.stdout b/testsuite/tests/programs/strict_anns/strict_anns.stdout new file mode 100644 index 0000000000..0f6e62ec68 --- /dev/null +++ b/testsuite/tests/programs/strict_anns/strict_anns.stdout @@ -0,0 +1,2 @@ +Crunch1 2 4 6 +Crunch2 2 4 6 diff --git a/testsuite/tests/programs/strict_anns/test.T b/testsuite/tests/programs/strict_anns/test.T new file mode 100644 index 0000000000..77ed9dab53 --- /dev/null +++ b/testsuite/tests/programs/strict_anns/test.T @@ -0,0 +1,6 @@ + +test('strict_anns', + [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])], + multimod_compile_and_run, + ['Main', '']) + |