summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_run/tcrun041.hs
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/typecheck/should_run/tcrun041.hs')
-rw-r--r--testsuite/tests/typecheck/should_run/tcrun041.hs37
1 files changed, 37 insertions, 0 deletions
diff --git a/testsuite/tests/typecheck/should_run/tcrun041.hs b/testsuite/tests/typecheck/should_run/tcrun041.hs
new file mode 100644
index 0000000000..f78141adc7
--- /dev/null
+++ b/testsuite/tests/typecheck/should_run/tcrun041.hs
@@ -0,0 +1,37 @@
+{-# LANGUAGE TupleSections, UnboxedTuples #-}
+module Main where
+
+a :: Int -> (Int, Bool)
+a = ( , True)
+
+b :: Bool -> (Int, Bool)
+b = (1, )
+
+c :: a -> (a, Bool)
+c = (, True || False)
+
+d = (,1,)
+
+
+e = (# , True #)
+
+f = (# 1, #)
+
+g = (# , True || False #)
+
+h = (# ,1, #)
+
+
+unchanged :: a -> (# Int #)
+unchanged _binding = (# #) 1
+
+
+main = do
+ print (a 1, b False, c "Hello", c 1337, d "Yeah" "Baby")
+ case e 1 of { (# x1, x2 #) ->
+ case f False of { (# x3, x4 #) ->
+ case g "Hello" of { (# x5, x6 #) ->
+ case g 1337 of { (# x7, x8 #) ->
+ case h "Yeah" "Baby" of { (# x9, x10, x11 #) ->
+ print (x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) }}}}}
+