summaryrefslogtreecommitdiff
path: root/testsuite/tests/simplCore/should_compile/T9136.hs
blob: 37ad1ae24bc4abcb8ec544c0d95a28ba18e9d38a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
module T9136 where

import Data.Word

-- In all these example, no 8 should be found in the final code
foo1 :: Int -> Int
foo1 x = (x + 8) - 1

foo2 :: Int -> Int
foo2 x = (8 + x) - 2

foo3 :: Int -> Int -> Int
foo3 x y = ((8 + x) + y) - 2

foo4 :: Int -> Int -> Int
foo4 x y = (8 + x) + (y - 3)

word1 :: Word -> Word
word1 x = (x + 8) + 1

word2 :: Word -> Word
word2 x = (8 + x) + 2

word3 :: Word -> Word -> Word
word3 x y = ((8 + x) + y) + 2

word4 :: Word -> Word -> Word
word4 x y = (8 + x) + (y + 3)