summaryrefslogtreecommitdiff
path: root/testdata/language-features
diff options
context:
space:
mode:
authorPéter Diviánszky <divipp@gmail.com>2016-05-10 16:32:23 +0200
committerPéter Diviánszky <divipp@gmail.com>2016-05-10 16:32:23 +0200
commit6ecef8f577432ffcaee07f09b2a73d4ea5eb5de2 (patch)
tree82ed1f4401c3cf2cd4910e5f2e62d0d3a8ac6904 /testdata/language-features
parente061e1a91afc552fd7c3d7e5f7efb59746cc446f (diff)
explicit lhs marks, first step
Diffstat (limited to 'testdata/language-features')
-rw-r--r--testdata/language-features/basic-list/list01.out6
-rw-r--r--testdata/language-features/basic-list/list02.out6
-rw-r--r--testdata/language-features/basic-list/list08.out2
-rw-r--r--testdata/language-features/basic-list/list09.out2
-rw-r--r--testdata/language-features/basic-list/list11.out2
-rw-r--r--testdata/language-features/basic-list/list12.out3
-rw-r--r--testdata/language-features/basic-list/list13.out2
-rw-r--r--testdata/language-features/basic-list/listcomp01.out2
-rw-r--r--testdata/language-features/basic-list/listcomp02.out4
-rw-r--r--testdata/language-features/basic-list/listcomp03.out4
-rw-r--r--testdata/language-features/basic-list/listcomp04.out5
-rw-r--r--testdata/language-features/basic-list/listcomp05.out12
-rw-r--r--testdata/language-features/basic-list/listcomp06.out31
-rw-r--r--testdata/language-features/basic-list/listcomp07.out54
-rw-r--r--testdata/language-features/basic-list/listcomp09.out4
-rw-r--r--testdata/language-features/basic-values/bool01.out4
-rw-r--r--testdata/language-features/basic-values/case01.out12
-rw-r--r--testdata/language-features/basic-values/case02.out22
-rw-r--r--testdata/language-features/basic-values/case05.out6
-rw-r--r--testdata/language-features/basic-values/case06.out6
-rw-r--r--testdata/language-features/basic-values/def01.out6
-rw-r--r--testdata/language-features/basic-values/def03.out12
-rw-r--r--testdata/language-features/basic-values/def04.out24
-rw-r--r--testdata/language-features/basic-values/deforder01.out4
-rw-r--r--testdata/language-features/basic-values/deforder02.out4
-rw-r--r--testdata/language-features/basic-values/deforder03.out2
-rw-r--r--testdata/language-features/basic-values/deforder04.out2
-rw-r--r--testdata/language-features/basic-values/deforder05.out2
-rw-r--r--testdata/language-features/basic-values/deforder06.out2
-rw-r--r--testdata/language-features/basic-values/fixity01.out8
-rw-r--r--testdata/language-features/basic-values/fixity02.out46
-rw-r--r--testdata/language-features/basic-values/if01.out4
-rw-r--r--testdata/language-features/basic-values/indentation01.out4
-rw-r--r--testdata/language-features/basic-values/indentation02.out4
-rw-r--r--testdata/language-features/basic-values/infix01.out4
-rw-r--r--testdata/language-features/basic-values/infix02.out4
-rw-r--r--testdata/language-features/basic-values/infix03.out4
-rw-r--r--testdata/language-features/basic-values/lambda01.out16
-rw-r--r--testdata/language-features/basic-values/lambda03.out4
-rw-r--r--testdata/language-features/basic-values/let01.out17
-rw-r--r--testdata/language-features/basic-values/let02.out20
-rw-r--r--testdata/language-features/basic-values/literal01.out16
-rw-r--r--testdata/language-features/basic-values/operator01.out8
-rw-r--r--testdata/language-features/basic-values/operator05.out3
-rw-r--r--testdata/language-features/basic-values/operator06.out3
-rw-r--r--testdata/language-features/basic-values/shadowing01.out34
-rw-r--r--testdata/language-features/basic-values/shadowing02.out43
-rw-r--r--testdata/language-features/basic-values/shadowing03.out2
-rw-r--r--testdata/language-features/basic-values/shadowing04.out2
-rw-r--r--testdata/language-features/basic-values/tuple01.out2
-rw-r--r--testdata/language-features/basic-values/tuple02.out6
-rw-r--r--testdata/language-features/basic-values/typesig01.out4
-rw-r--r--testdata/language-features/basic-values/typesig02.out4
-rw-r--r--testdata/language-features/basic-values/typesig03.out4
-rw-r--r--testdata/language-features/basic-values/typesig04.out4
-rw-r--r--testdata/language-features/basic-values/typesig05.out12
-rw-r--r--testdata/language-features/basic-values/typesig06.out8
-rw-r--r--testdata/language-features/basic-values/typesig07.out12
-rw-r--r--testdata/language-features/basic-values/typesyn01.out2
-rw-r--r--testdata/language-features/basic-values/typesyn02.out4
-rw-r--r--testdata/language-features/basic-values/where01.out24
-rw-r--r--testdata/language-features/basic-values/where04.out9
-rw-r--r--testdata/language-features/basic-values/where05.out64
-rw-r--r--testdata/language-features/basic-values/wildcard01.out2
-rw-r--r--testdata/language-features/guard/guard01.out2
-rw-r--r--testdata/language-features/guard/guard03.out12
-rw-r--r--testdata/language-features/guard/guard04.out3
-rw-r--r--testdata/language-features/guard/guard06.out2
-rw-r--r--testdata/language-features/guard/guard07.out12
-rw-r--r--testdata/language-features/guard/guard08.out12
-rw-r--r--testdata/language-features/guard/guard09.out12
-rw-r--r--testdata/language-features/guard/guard11.out5
-rw-r--r--testdata/language-features/guard/guard13.out2
-rw-r--r--testdata/language-features/guard/guard14.out6
-rw-r--r--testdata/language-features/guard/guard15.out6
-rw-r--r--testdata/language-features/guard/guard16.out16
-rw-r--r--testdata/language-features/module/Hello01.out4
-rw-r--r--testdata/language-features/module/Hello02.out4
-rw-r--r--testdata/language-features/module/Hello03.out4
-rw-r--r--testdata/language-features/module/ModulePackage/SubModule01.out2
-rw-r--r--testdata/language-features/module/Moduledef06.out2
-rw-r--r--testdata/language-features/module/Moduledef07.out2
-rw-r--r--testdata/language-features/module/Moduledef08.out2
-rw-r--r--testdata/language-features/module/Moduledef09.out4
-rw-r--r--testdata/language-features/module/Moduledef10.out6
-rw-r--r--testdata/language-features/module/Moduledef13.out2
-rw-r--r--testdata/language-features/module/TypeSyn01Mod.out2
-rw-r--r--testdata/language-features/module/import01.out2
-rw-r--r--testdata/language-features/module/import05.out2
-rw-r--r--testdata/language-features/module/import06.out4
-rw-r--r--testdata/language-features/module/import07.out4
-rw-r--r--testdata/language-features/module/import08.out8
-rw-r--r--testdata/language-features/module/import09.out2
-rw-r--r--testdata/language-features/module/import12.out2
-rw-r--r--testdata/language-features/module/import13.out2
-rw-r--r--testdata/language-features/module/import14.out2
-rw-r--r--testdata/language-features/module/import15.out2
-rw-r--r--testdata/language-features/pattern/pattern01.out16
-rw-r--r--testdata/language-features/pattern/uncovered.out116
-rw-r--r--testdata/language-features/pattern/unreachable.out2
-rw-r--r--testdata/language-features/recursion/simplerec01.out12
-rw-r--r--testdata/language-features/recursion/simplerec02.out24
-rw-r--r--testdata/language-features/recursion/simplerec03.out24
-rw-r--r--testdata/language-features/section/section01.out6
104 files changed, 577 insertions, 431 deletions
diff --git a/testdata/language-features/basic-list/list01.out b/testdata/language-features/basic-list/list01.out
index 14eb5c08..4a4d6cda 100644
--- a/testdata/language-features/basic-list/list01.out
+++ b/testdata/language-features/basic-list/list01.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs [] 3value1 = _lhs value1 (_rhs [])
4 4
5value2 = _rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4] 5value2 = _lhs value2 (_rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4])
6 6
7value3 = _rhs ['h', 'e', 'l', 'l', 'o'] 7value3 = _lhs value3 (_rhs ['h', 'e', 'l', 'l', 'o'])
8------------ core code 8------------ core code
9value1 :: forall a . [a] 9value1 :: forall a . [a]
10value1 = _rhs [] 10value1 = _rhs []
diff --git a/testdata/language-features/basic-list/list02.out b/testdata/language-features/basic-list/list02.out
index 8710b507..290d0482 100644
--- a/testdata/language-features/basic-list/list02.out
+++ b/testdata/language-features/basic-list/list02.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs [] 3value1 = _lhs value1 (_rhs [])
4 4
5value2 = _rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4] 5value2 = _lhs value2 (_rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4])
6 6
7value3 = _rhs ['h', 'e', 'l', 'l', 'o'] 7value3 = _lhs value3 (_rhs ['h', 'e', 'l', 'l', 'o'])
8------------ core code 8------------ core code
9value1 :: forall a . [a] 9value1 :: forall a . [a]
10value1 = _rhs [] 10value1 = _rhs []
diff --git a/testdata/language-features/basic-list/list08.out b/testdata/language-features/basic-list/list08.out
index e92d9b36..a9ed3391 100644
--- a/testdata/language-features/basic-list/list08.out
+++ b/testdata/language-features/basic-list/list08.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs [fromInt 1, 1.2] 3value = _lhs value (_rhs [fromInt 1, 1.2])
4------------ core code 4------------ core code
5value :: [Float] 5value :: [Float]
6value = _rhs [1.0, 1.2] 6value = _rhs [1.0, 1.2]
diff --git a/testdata/language-features/basic-list/list09.out b/testdata/language-features/basic-list/list09.out
index 676c1ed6..c46fb913 100644
--- a/testdata/language-features/basic-list/list09.out
+++ b/testdata/language-features/basic-list/list09.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs ([fromInt 1, 1.2] :: [Float]) 3value = _lhs value (_rhs ([fromInt 1, 1.2] :: [Float]))
4------------ core code 4------------ core code
5value :: [Float] 5value :: [Float]
6value = _rhs [1.0, 1.2] 6value = _rhs [1.0, 1.2]
diff --git a/testdata/language-features/basic-list/list11.out b/testdata/language-features/basic-list/list11.out
index 00b52310..9777fcff 100644
--- a/testdata/language-features/basic-list/list11.out
+++ b/testdata/language-features/basic-list/list11.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs [fromInt 1] 3value = _lhs value (_rhs [fromInt 1])
4------------ core code 4------------ core code
5value :: forall a . Num a => [a] 5value :: forall a . Num a => [a]
6value = \a b -> _rhs [fromInt a b 1] 6value = \a b -> _rhs [fromInt a b 1]
diff --git a/testdata/language-features/basic-list/list12.out b/testdata/language-features/basic-list/list12.out
index 9e289ae6..e8e480be 100644
--- a/testdata/language-features/basic-list/list12.out
+++ b/testdata/language-features/basic-list/list12.out
@@ -1,6 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4, fromInt 5] 3value
4 = _lhs value (_rhs [fromInt 1, fromInt 2, fromInt 3, fromInt 4, fromInt 5])
4------------ core code 5------------ core code
5value :: forall a . Num a => [a] 6value :: forall a . Num a => [a]
6value 7value
diff --git a/testdata/language-features/basic-list/list13.out b/testdata/language-features/basic-list/list13.out
index bb27f13d..c1c89f70 100644
--- a/testdata/language-features/basic-list/list13.out
+++ b/testdata/language-features/basic-list/list13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs ['h', 'e', 'l', 'l', 'o'] 3value = _lhs value (_rhs ['h', 'e', 'l', 'l', 'o'])
4------------ core code 4------------ core code
5value :: [Char] 5value :: [Char]
6value = _rhs ['h', 'e', 'l', 'l', 'o'] 6value = _rhs ['h', 'e', 'l', 'l', 'o']
diff --git a/testdata/language-features/basic-list/listcomp01.out b/testdata/language-features/basic-list/listcomp01.out
index e02d3045..ace40823 100644
--- a/testdata/language-features/basic-list/listcomp01.out
+++ b/testdata/language-features/basic-list/listcomp01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs (concatMap (\(_ :: _) -> [()]) [(), (), (), ()]) 3value = _lhs value (_rhs (concatMap (\(_ :: _) -> [()]) [(), (), (), ()]))
4------------ core code 4------------ core code
5value :: [()] 5value :: [()]
6value = _rhs [(), (), (), ()] 6value = _rhs [(), (), (), ()]
diff --git a/testdata/language-features/basic-list/listcomp02.out b/testdata/language-features/basic-list/listcomp02.out
index aa811e16..18619ff6 100644
--- a/testdata/language-features/basic-list/listcomp02.out
+++ b/testdata/language-features/basic-list/listcomp02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3l = _rhs [(), (), (), ()] 3l = _lhs l (_rhs [(), (), (), ()])
4 4
5value = _rhs (concatMap (\(a :: _) -> [a]) l) 5value = _lhs value (_rhs (concatMap (\(a :: _) -> [a]) l))
6------------ core code 6------------ core code
7l :: [()] 7l :: [()]
8l = _rhs [(), (), (), ()] 8l = _rhs [(), (), (), ()]
diff --git a/testdata/language-features/basic-list/listcomp03.out b/testdata/language-features/basic-list/listcomp03.out
index e3192970..0ba6b347 100644
--- a/testdata/language-features/basic-list/listcomp03.out
+++ b/testdata/language-features/basic-list/listcomp03.out
@@ -1,7 +1,9 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs (concatMap (\(_ :: _) -> primIfThenElse False [()] []) [(), (), (), ()]) 4 = _lhs
5 value
6 (_rhs (concatMap (\(_ :: _) -> primIfThenElse False [()] []) [(), (), (), ()]))
5------------ core code 7------------ core code
6value :: [()] 8value :: [()]
7value = _rhs [] 9value = _rhs []
diff --git a/testdata/language-features/basic-list/listcomp04.out b/testdata/language-features/basic-list/listcomp04.out
index 9352d6ae..4d43ac94 100644
--- a/testdata/language-features/basic-list/listcomp04.out
+++ b/testdata/language-features/basic-list/listcomp04.out
@@ -1,8 +1,9 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3l = _rhs [(), (), (), ()] 3l = _lhs l (_rhs [(), (), (), ()])
4 4
5value = _rhs (concatMap (\(_ :: _) -> concatMap (\(_ :: _) -> [()]) l) l) 5value
6 = _lhs value (_rhs (concatMap (\(_ :: _) -> concatMap (\(_ :: _) -> [()]) l) l))
6------------ core code 7------------ core code
7l :: [()] 8l :: [()]
8l = _rhs [(), (), (), ()] 9l = _rhs [(), (), (), ()]
diff --git a/testdata/language-features/basic-list/listcomp05.out b/testdata/language-features/basic-list/listcomp05.out
index c3984bc7..c9e56736 100644
--- a/testdata/language-features/basic-list/listcomp05.out
+++ b/testdata/language-features/basic-list/listcomp05.out
@@ -1,10 +1,14 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 (concatMap 5 value
6 (\(_ :: _) -> let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in [b]) 6 (_rhs
7 [(), ()]) 7 (concatMap
8 (\(_ :: _) -> let
9 a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a))
10 in [b])
11 [(), ()]))
8------------ core code 12------------ core code
9value :: [()] 13value :: [()]
10value = _rhs [(), ()] 14value = _rhs [(), ()]
diff --git a/testdata/language-features/basic-list/listcomp06.out b/testdata/language-features/basic-list/listcomp06.out
index 3fc12622..cf4e2b31 100644
--- a/testdata/language-features/basic-list/listcomp06.out
+++ b/testdata/language-features/basic-list/listcomp06.out
@@ -1,22 +1,25 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 3value1
4 = _rhs 4 = _lhs
5 (concatMap 5 value1
6 (\(_ :: _) -> let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in primIfThenElse 6 (_rhs
7 True 7 (concatMap
8 [b] 8 (\(_ :: _) -> let
9 []) 9 a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a))
10 [(), ()]) 10 in primIfThenElse True [b] [])
11 [(), ()]))
11 12
12value2 13value2
13 = _rhs 14 = _lhs
14 (concatMap 15 value2
15 (\(_ :: _) -> primIfThenElse 16 (_rhs
16 True 17 (concatMap
17 (let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in [b]) 18 (\(_ :: _) -> primIfThenElse
18 []) 19 True
19 [(), ()]) 20 (let a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a)) in [b])
21 [])
22 [(), ()]))
20------------ core code 23------------ core code
21value1 :: [()] 24value1 :: [()]
22value1 = _rhs [(), ()] 25value1 = _rhs [(), ()]
diff --git a/testdata/language-features/basic-list/listcomp07.out b/testdata/language-features/basic-list/listcomp07.out
index 1923e806..2f4d633a 100644
--- a/testdata/language-features/basic-list/listcomp07.out
+++ b/testdata/language-features/basic-list/listcomp07.out
@@ -1,31 +1,43 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 3value1
4 = _rhs 4 = _lhs
5 (concatMap 5 value1
6 (\(_ :: _) -> let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in primIfThenElse 6 (_rhs
7 True 7 (concatMap
8 (let d = _rhs b; e = _rhs ((\(f :: _) -> f) d) in [b]) 8 (\(_ :: _) -> let
9 []) 9 a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a))
10 [(), ()]) 10 in primIfThenElse
11 True
12 (let d = _lhs _v (_rhs b); e = _lhs v (_rhs ((\(f :: _) -> f) d)) in [b])
13 [])
14 [(), ()]))
11 15
12value2 16value2
13 = _rhs 17 = _lhs
14 (concatMap 18 value2
15 (\(_ :: _) -> let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in primIfThenElse 19 (_rhs
16 True 20 (concatMap
17 (let d = _rhs b; e = _rhs ((\(f :: _) -> f) d) in [b]) 21 (\(_ :: _) -> let
18 []) 22 a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a))
19 [(), ()]) 23 in primIfThenElse
24 True
25 (let d = _lhs _v (_rhs b); e = _lhs v (_rhs ((\(f :: _) -> f) d)) in [b])
26 [])
27 [(), ()]))
20 28
21value3 29value3
22 = _rhs 30 = _lhs
23 (concatMap 31 value3
24 (\(_ :: _) -> let a = _rhs (); b = _rhs ((\(c :: _) -> c) a) in primIfThenElse 32 (_rhs
25 True 33 (concatMap
26 (let d = _rhs b; e = _rhs ((\(f :: _) -> f) d) in [b]) 34 (\(_ :: _) -> let
27 []) 35 a = _lhs _u (_rhs ()); b = _lhs u (_rhs ((\(c :: _) -> c) a))
28 [(), ()]) 36 in primIfThenElse
37 True
38 (let d = _lhs _v (_rhs b); e = _lhs v (_rhs ((\(f :: _) -> f) d)) in [b])
39 [])
40 [(), ()]))
29------------ core code 41------------ core code
30value1 :: [()] 42value1 :: [()]
31value1 = _rhs [(), ()] 43value1 = _rhs [(), ()]
diff --git a/testdata/language-features/basic-list/listcomp09.out b/testdata/language-features/basic-list/listcomp09.out
index b83e6611..6c1c9d6d 100644
--- a/testdata/language-features/basic-list/listcomp09.out
+++ b/testdata/language-features/basic-list/listcomp09.out
@@ -1,7 +1,9 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 3value1
4 = _rhs (concatMap (\(_ :: _) -> [\(a :: _) -> hlistNilCase _ "Hello" a]) []) 4 = _lhs
5 value1
6 (_rhs (concatMap (\(_ :: _) -> [\(a :: _) -> hlistNilCase _ "Hello" a]) []))
5------------ core code 7------------ core code
6value1 :: @Type -> [() -> String] 8value1 :: @Type -> [() -> String]
7value1 = \_ -> _rhs [] 9value1 = \_ -> _rhs []
diff --git a/testdata/language-features/basic-values/bool01.out b/testdata/language-features/basic-values/bool01.out
index ee5e9859..5d0f35af 100644
--- a/testdata/language-features/basic-values/bool01.out
+++ b/testdata/language-features/basic-values/bool01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs True 3value1 = _lhs value1 (_rhs True)
4 4
5value2 = _rhs False 5value2 = _lhs value2 (_rhs False)
6------------ core code 6------------ core code
7value1 :: Bool 7value1 :: Bool
8value1 = _rhs True 8value1 = _rhs True
diff --git a/testdata/language-features/basic-values/case01.out b/testdata/language-features/basic-values/case01.out
index ee13f28e..eff9fb43 100644
--- a/testdata/language-features/basic-values/case01.out
+++ b/testdata/language-features/basic-values/case01.out
@@ -1,16 +1,16 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs ((\(a :: _) -> hlistNilCase _ () a) ()) 3value1 = _lhs value1 (_rhs ((\(a :: _) -> hlistNilCase _ () a) ()))
4 4
5value2 = _rhs ((\(a :: _) -> hlistNilCase _ () a) ()) 5value2 = _lhs value2 (_rhs ((\(a :: _) -> hlistNilCase _ () a) ()))
6 6
7value3 = _rhs ((\(a :: _) -> hlistNilCase _ () a) ()) 7value3 = _lhs value3 (_rhs ((\(a :: _) -> hlistNilCase _ () a) ()))
8 8
9value4 = _rhs ((\(a :: _) -> hlistNilCase _ () a) ()) 9value4 = _lhs value4 (_rhs ((\(a :: _) -> hlistNilCase _ () a) ()))
10 10
11value5 = _rhs ((\(a :: _) -> hlistNilCase _ () a) ()) 11value5 = _lhs value5 (_rhs ((\(a :: _) -> hlistNilCase _ () a) ()))
12 12
13value6 = _rhs ((\(_ :: _) -> ()) ()) 13value6 = _lhs value6 (_rhs ((\(_ :: _) -> ()) ()))
14------------ core code 14------------ core code
15value1 :: () 15value1 :: ()
16value1 = _rhs () 16value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/case02.out b/testdata/language-features/basic-values/case02.out
index 9d1dd476..f445f91a 100644
--- a/testdata/language-features/basic-values/case02.out
+++ b/testdata/language-features/basic-values/case02.out
@@ -1,17 +1,21 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 3value1
4 = _rhs 4 = _lhs
5 ((\(a :: _) -> case'Bool (\(_ :: _) -> _) () () (fromInt 1 == a)) (fromInt 1)) 5 value1
6 (_rhs
7 ((\(a :: _) -> case'Bool (\(_ :: _) -> _) () () (fromInt 1 == a)) (fromInt 1)))
6 8
7value2 9value2
8 = _rhs 10 = _lhs
9 ((\(a :: _) -> case'Bool 11 value2
10 (\(_ :: _) -> _) 12 (_rhs
11 (case'Bool (\(_ :: _) -> _) "_" "2" (fromInt 2 == a)) 13 ((\(a :: _) -> case'Bool
12 "1" 14 (\(_ :: _) -> _)
13 (fromInt 1 == a)) 15 (case'Bool (\(_ :: _) -> _) "_" "2" (fromInt 2 == a))
14 (fromInt 2)) 16 "1"
17 (fromInt 1 == a))
18 (fromInt 2)))
15------------ core code 19------------ core code
16value1 :: forall a . (Eq a, Num a) => () 20value1 :: forall a . (Eq a, Num a) => ()
17value1 21value1
diff --git a/testdata/language-features/basic-values/case05.out b/testdata/language-features/basic-values/case05.out
index 51e7f245..130dd7d3 100644
--- a/testdata/language-features/basic-values/case05.out
+++ b/testdata/language-features/basic-values/case05.out
@@ -1,8 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = \(a :: _) -> _rhs 4 = _lhs
5 ((\(b :: _) -> case'Bool (\(_ :: _) -> _) undefined '1' (fromInt 1 == b)) a) 5 value
6 \(a :: _) -> _rhs
7 ((\(b :: _) -> case'Bool (\(_ :: _) -> _) undefined '1' (fromInt 1 == b)) a)
6------------ core code 8------------ core code
7value :: forall a . (Eq a, Num a) => a -> Char 9value :: forall a . (Eq a, Num a) => a -> Char
8value 10value
diff --git a/testdata/language-features/basic-values/case06.out b/testdata/language-features/basic-values/case06.out
index 0191877b..9b4ff748 100644
--- a/testdata/language-features/basic-values/case06.out
+++ b/testdata/language-features/basic-values/case06.out
@@ -1,8 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = \(a :: _) -> _rhs 4 = _lhs
5 ((\(b :: _) -> case'Bool (\(_ :: _) -> _) '_' '1' (fromInt 1 == b)) a) 5 value
6 \(a :: _) -> _rhs
7 ((\(b :: _) -> case'Bool (\(_ :: _) -> _) '_' '1' (fromInt 1 == b)) a)
6------------ core code 8------------ core code
7value :: forall a . (Eq a, Num a) => a -> Char 9value :: forall a . (Eq a, Num a) => a -> Char
8value 10value
diff --git a/testdata/language-features/basic-values/def01.out b/testdata/language-features/basic-values/def01.out
index 3ada4423..6564e1b8 100644
--- a/testdata/language-features/basic-values/def01.out
+++ b/testdata/language-features/basic-values/def01.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3unit = _rhs () 3unit = _lhs unit (_rhs ())
4 4
5fun1 = \(_ :: _) -> _rhs (fromInt 1) 5fun1 = _lhs fun1 \(_ :: _) -> _rhs (fromInt 1)
6 6
7fun2 = \(_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) -> _rhs 'c' 7fun2 = _lhs fun2 \(_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) -> _rhs 'c'
8------------ core code 8------------ core code
9fun1 :: forall a b . Num b => a -> b 9fun1 :: forall a b . Num b => a -> b
10fun1 = \_ a b _ -> _rhs (fromInt a b 1) 10fun1 = \_ a b _ -> _rhs (fromInt a b 1)
diff --git a/testdata/language-features/basic-values/def03.out b/testdata/language-features/basic-values/def03.out
index e803c077..a90c1488 100644
--- a/testdata/language-features/basic-values/def03.out
+++ b/testdata/language-features/basic-values/def03.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun 3fun
4 = \(a :: _) -> case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 fun
6 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs '2') (fromInt 2 == a)) 6 \(a :: _) -> case'Bool
7 (_rhs '1') 7 (\(_ :: _) -> _)
8 (fromInt 1 == a) 8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs '2') (fromInt 2 == a))
9 (_rhs '1')
10 (fromInt 1 == a)
9------------ core code 11------------ core code
10fun :: forall a . (Eq a, Num a, Eq a, Num a) => a -> Char 12fun :: forall a . (Eq a, Num a, Eq a, Num a) => a -> Char
11fun 13fun
diff --git a/testdata/language-features/basic-values/def04.out b/testdata/language-features/basic-values/def04.out
index de250fdb..127129e9 100644
--- a/testdata/language-features/basic-values/def04.out
+++ b/testdata/language-features/basic-values/def04.out
@@ -1,18 +1,22 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun 3fun
4 = \(a :: _) -> case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 fun
6 (case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '2') (fromInt 2 == a)) 6 \(a :: _) -> case'Bool
7 (_rhs '1') 7 (\(_ :: _) -> _)
8 (fromInt 1 == a) 8 (case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '2') (fromInt 2 == a))
9 (_rhs '1')
10 (fromInt 1 == a)
9 11
10fun2 12fun2
11 = \(a :: _) (_ :: _) -> case'Bool 13 = _lhs
12 (\(_ :: _) -> _) 14 fun2
13 (case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '2') (fromInt 2 == a)) 15 \(a :: _) (_ :: _) -> case'Bool
14 (_rhs '1') 16 (\(_ :: _) -> _)
15 (fromInt 1 == a) 17 (case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '2') (fromInt 2 == a))
18 (_rhs '1')
19 (fromInt 1 == a)
16------------ core code 20------------ core code
17fun :: forall a . (Eq a, Num a, Eq a, Num a) => a -> Char 21fun :: forall a . (Eq a, Num a, Eq a, Num a) => a -> Char
18fun 22fun
diff --git a/testdata/language-features/basic-values/deforder01.out b/testdata/language-features/basic-values/deforder01.out
index 65ee8408..932a2a54 100644
--- a/testdata/language-features/basic-values/deforder01.out
+++ b/testdata/language-features/basic-values/deforder01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3x = _rhs '1' 3x = _lhs x (_rhs '1')
4 4
5y = _rhs x 5y = _lhs y (_rhs x)
6------------ core code 6------------ core code
7x :: Char 7x :: Char
8x = _rhs '1' 8x = _rhs '1'
diff --git a/testdata/language-features/basic-values/deforder02.out b/testdata/language-features/basic-values/deforder02.out
index bc81cbfd..2bfbd5b3 100644
--- a/testdata/language-features/basic-values/deforder02.out
+++ b/testdata/language-features/basic-values/deforder02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3x = _rhs '1' 3x = _lhs x (_rhs '1')
4 4
5y = _rhs x 5y = _lhs y (_rhs x)
6------------ core code 6------------ core code
7x :: Char 7x :: Char
8x = _rhs '1' 8x = _rhs '1'
diff --git a/testdata/language-features/basic-values/deforder03.out b/testdata/language-features/basic-values/deforder03.out
index 6dd09a14..cf40c23e 100644
--- a/testdata/language-features/basic-values/deforder03.out
+++ b/testdata/language-features/basic-values/deforder03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = _rhs (); b = _rhs a in '1' 3value = _lhs value (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs a) in '1')
4------------ core code 4------------ core code
5value :: Char 5value :: Char
6value = _rhs '1' 6value = _rhs '1'
diff --git a/testdata/language-features/basic-values/deforder04.out b/testdata/language-features/basic-values/deforder04.out
index 34f04f22..767b8a9b 100644
--- a/testdata/language-features/basic-values/deforder04.out
+++ b/testdata/language-features/basic-values/deforder04.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = _rhs (); b = _rhs a in '1' 3value = _lhs value (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs a) in '1')
4------------ core code 4------------ core code
5value :: Char 5value :: Char
6value = _rhs '1' 6value = _rhs '1'
diff --git a/testdata/language-features/basic-values/deforder05.out b/testdata/language-features/basic-values/deforder05.out
index c4c4eda5..7345785e 100644
--- a/testdata/language-features/basic-values/deforder05.out
+++ b/testdata/language-features/basic-values/deforder05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = _rhs (); b = _rhs a in '1' 3value = _lhs value (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs a) in '1')
4------------ core code 4------------ core code
5value :: Char 5value :: Char
6value = _rhs '1' 6value = _rhs '1'
diff --git a/testdata/language-features/basic-values/deforder06.out b/testdata/language-features/basic-values/deforder06.out
index 6228b957..2a0ead81 100644
--- a/testdata/language-features/basic-values/deforder06.out
+++ b/testdata/language-features/basic-values/deforder06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = _rhs (); b = _rhs a in '1' 3value = _lhs value (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs a) in '1')
4------------ core code 4------------ core code
5value :: Char 5value :: Char
6value = _rhs '1' 6value = _rhs '1'
diff --git a/testdata/language-features/basic-values/fixity01.out b/testdata/language-features/basic-values/fixity01.out
index 8f75a8f2..f4f17b40 100644
--- a/testdata/language-features/basic-values/fixity01.out
+++ b/testdata/language-features/basic-values/fixity01.out
@@ -1,12 +1,12 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3funL = \(a :: _) (_ :: _) -> _rhs a 3funL = _lhs funL \(a :: _) (_ :: _) -> _rhs a
4 4
5funR = \(a :: _) (_ :: _) -> _rhs a 5funR = _lhs funR \(a :: _) (_ :: _) -> _rhs a
6 6
7(<<<<) = \(a :: _) (_ :: _) -> _rhs a 7(<<<<) = _lhs (<<<<) \(a :: _) (_ :: _) -> _rhs a
8 8
9(>>>>) = \(_ :: _) (a :: _) -> _rhs a 9(>>>>) = _lhs (>>>>) \(_ :: _) (a :: _) -> _rhs a
10 10
11infixr 7 funL 11infixr 7 funL
12 12
diff --git a/testdata/language-features/basic-values/fixity02.out b/testdata/language-features/basic-values/fixity02.out
index e018eb76..b07707af 100644
--- a/testdata/language-features/basic-values/fixity02.out
+++ b/testdata/language-features/basic-values/fixity02.out
@@ -1,12 +1,12 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3funL = \(a :: _) (_ :: _) -> _rhs a 3funL = _lhs funL \(a :: _) (_ :: _) -> _rhs a
4 4
5funR = \(_ :: _) (a :: _) -> _rhs a 5funR = _lhs funR \(_ :: _) (a :: _) -> _rhs a
6 6
7(<@) = \(a :: _) (_ :: _) -> _rhs a 7(<@) = _lhs (<@) \(a :: _) (_ :: _) -> _rhs a
8 8
9(@>) = \(_ :: _) (a :: _) -> _rhs a 9(@>) = _lhs (@>) \(_ :: _) (a :: _) -> _rhs a
10 10
11infixr 7 funL 11infixr 7 funL
12 12
@@ -16,37 +16,43 @@ infixr 6 @>
16 16
17infixr 6 funR 17infixr 6 funR
18 18
19value1 = _rhs (() @> 'c' @> "hi" @> 1.2 :: Float) 19value1 = _lhs value1 (_rhs (() @> 'c' @> "hi" @> 1.2 :: Float))
20 20
21value2 = _rhs (() @> 'c' <@ "hi" @> 1.2 :: Float) 21value2 = _lhs value2 (_rhs (() @> 'c' <@ "hi" @> 1.2 :: Float))
22 22
23value3 = _rhs (() <@ 'c' @> "hi" @> 1.2 :: Float) 23value3 = _lhs value3 (_rhs (() <@ 'c' @> "hi" @> 1.2 :: Float))
24 24
25value4 = _rhs (() <@ 'c' <@ "hi" @> 1.2 :: Float) 25value4 = _lhs value4 (_rhs (() <@ 'c' <@ "hi" @> 1.2 :: Float))
26 26
27value5 = _rhs (() @> 'c' @> "hi" <@ 1.2 :: String) 27value5 = _lhs value5 (_rhs (() @> 'c' @> "hi" <@ 1.2 :: String))
28 28
29value6 = _rhs (() @> 'c' <@ "hi" <@ 1.2 :: Char) 29value6 = _lhs value6 (_rhs (() @> 'c' <@ "hi" <@ 1.2 :: Char))
30 30
31value7 = _rhs (() <@ 'c' @> "hi" <@ 1.2 :: String) 31value7 = _lhs value7 (_rhs (() <@ 'c' @> "hi" <@ 1.2 :: String))
32 32
33value8 = _rhs (() <@ 'c' <@ "hi" <@ 1.2 :: ()) 33value8 = _lhs value8 (_rhs (() <@ 'c' <@ "hi" <@ 1.2 :: ()))
34 34
35funValue1 = _rhs (() `funR` 'c' `funR` "hi" `funR` 1.2 :: Float) 35funValue1
36 = _lhs funValue1 (_rhs (() `funR` 'c' `funR` "hi" `funR` 1.2 :: Float))
36 37
37funValue2 = _rhs (() `funR` 'c' `funL` "hi" `funR` 1.2 :: Float) 38funValue2
39 = _lhs funValue2 (_rhs (() `funR` 'c' `funL` "hi" `funR` 1.2 :: Float))
38 40
39funValue3 = _rhs (() `funL` 'c' `funR` "hi" `funR` 1.2 :: Float) 41funValue3
42 = _lhs funValue3 (_rhs (() `funL` 'c' `funR` "hi" `funR` 1.2 :: Float))
40 43
41funValue4 = _rhs (() `funL` 'c' `funL` "hi" `funR` 1.2 :: Float) 44funValue4
45 = _lhs funValue4 (_rhs (() `funL` 'c' `funL` "hi" `funR` 1.2 :: Float))
42 46
43funValue5 = _rhs (() `funR` 'c' `funR` "hi" `funL` 1.2 :: String) 47funValue5
48 = _lhs funValue5 (_rhs (() `funR` 'c' `funR` "hi" `funL` 1.2 :: String))
44 49
45funValue6 = _rhs (() `funR` 'c' `funL` "hi" `funL` 1.2 :: Char) 50funValue6 = _lhs funValue6 (_rhs (() `funR` 'c' `funL` "hi" `funL` 1.2 :: Char))
46 51
47funValue7 = _rhs (() `funL` 'c' `funR` "hi" `funL` 1.2 :: String) 52funValue7
53 = _lhs funValue7 (_rhs (() `funL` 'c' `funR` "hi" `funL` 1.2 :: String))
48 54
49funValue8 = _rhs (() `funL` 'c' `funL` "hi" `funL` 1.2 :: ()) 55funValue8 = _lhs funValue8 (_rhs (() `funL` 'c' `funL` "hi" `funL` 1.2 :: ()))
50------------ core code 56------------ core code
51<@ :: forall a b . a -> b -> a 57<@ :: forall a b . a -> b -> a
52<@ = \_ _ a _ -> _rhs a 58<@ = \_ _ a _ -> _rhs a
diff --git a/testdata/language-features/basic-values/if01.out b/testdata/language-features/basic-values/if01.out
index cfac15fd..82fdb2ff 100644
--- a/testdata/language-features/basic-values/if01.out
+++ b/testdata/language-features/basic-values/if01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs (primIfThenElse True () ()) 3value1 = _lhs value1 (_rhs (primIfThenElse True () ()))
4 4
5value2 = _rhs (primIfThenElse False 1.0 2.0) 5value2 = _lhs value2 (_rhs (primIfThenElse False 1.0 2.0))
6------------ core code 6------------ core code
7value1 :: () 7value1 :: ()
8value1 = _rhs () 8value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/indentation01.out b/testdata/language-features/basic-values/indentation01.out
index 737c8ecd..f1d98545 100644
--- a/testdata/language-features/basic-values/indentation01.out
+++ b/testdata/language-features/basic-values/indentation01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3tuple1 = _rhs () 3tuple1 = _lhs tuple1 (_rhs ())
4 4
5tuple2 = _rhs () 5tuple2 = _lhs tuple2 (_rhs ())
6------------ core code 6------------ core code
7tuple1 :: () 7tuple1 :: ()
8tuple1 = _rhs () 8tuple1 = _rhs ()
diff --git a/testdata/language-features/basic-values/indentation02.out b/testdata/language-features/basic-values/indentation02.out
index 33b04d5e..0b686d97 100644
--- a/testdata/language-features/basic-values/indentation02.out
+++ b/testdata/language-features/basic-values/indentation02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3tuple1 = _rhs () 3tuple1 = _lhs tuple1 (_rhs ())
4 4
5tuple2 = _rhs () 5tuple2 = _lhs tuple2 (_rhs ())
6------------ core code 6------------ core code
7tuple1 :: () 7tuple1 :: ()
8tuple1 = _rhs () 8tuple1 = _rhs ()
diff --git a/testdata/language-features/basic-values/infix01.out b/testdata/language-features/basic-values/infix01.out
index 1ba2bd04..ced45621 100644
--- a/testdata/language-features/basic-values/infix01.out
+++ b/testdata/language-features/basic-values/infix01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = \(_ :: _) (_ :: _) -> _rhs () 3fun = _lhs fun \(_ :: _) (_ :: _) -> _rhs ()
4 4
5value = \(a :: _) (b :: _) -> _rhs (a `fun` b) 5value = _lhs value \(a :: _) (b :: _) -> _rhs (a `fun` b)
6------------ core code 6------------ core code
7fun :: forall a b . a -> b -> () 7fun :: forall a b . a -> b -> ()
8fun = \_ _ _ _ -> _rhs () 8fun = \_ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/infix02.out b/testdata/language-features/basic-values/infix02.out
index 8f743998..888f4d9f 100644
--- a/testdata/language-features/basic-values/infix02.out
+++ b/testdata/language-features/basic-values/infix02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = \(_ :: _) (_ :: _) (_ :: _) -> _rhs () 3fun = _lhs fun \(_ :: _) (_ :: _) (_ :: _) -> _rhs ()
4 4
5value = \(a :: _) (b :: _) -> _rhs (a `fun` b) 5value = _lhs value \(a :: _) (b :: _) -> _rhs (a `fun` b)
6------------ core code 6------------ core code
7fun :: forall a b c . a -> b -> c -> () 7fun :: forall a b c . a -> b -> c -> ()
8fun = \_ _ _ _ _ _ -> _rhs () 8fun = \_ _ _ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/infix03.out b/testdata/language-features/basic-values/infix03.out
index 4b6af910..9d3aa812 100644
--- a/testdata/language-features/basic-values/infix03.out
+++ b/testdata/language-features/basic-values/infix03.out
@@ -4,9 +4,9 @@ data D :: Type where
4 D2 :: () -> () -> D 4 D2 :: () -> () -> D
5 D3 :: () -> () -> () -> D 5 D3 :: () -> () -> () -> D
6 6
7d2 = \(a :: _) (b :: _) -> _rhs (a `D2` b) 7d2 = _lhs d2 \(a :: _) (b :: _) -> _rhs (a `D2` b)
8 8
9d3 = \(a :: _) (b :: _) -> _rhs (a `D3` b) 9d3 = _lhs d3 \(a :: _) (b :: _) -> _rhs (a `D3` b)
10------------ core code 10------------ core code
11'D :: Type 11'D :: Type
12'D = <<type constructor with 0 indices; constructors: D2, D3>> 12'D = <<type constructor with 0 indices; constructors: D2, D3>>
diff --git a/testdata/language-features/basic-values/lambda01.out b/testdata/language-features/basic-values/lambda01.out
index 591970d1..0a07171f 100644
--- a/testdata/language-features/basic-values/lambda01.out
+++ b/testdata/language-features/basic-values/lambda01.out
@@ -1,16 +1,18 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun1 = _rhs \(_ :: _) -> () 3fun1 = _lhs fun1 (_rhs \(_ :: _) -> ())
4 4
5fun2 = _rhs \(_ :: _) -> () 5fun2 = _lhs fun2 (_rhs \(_ :: _) -> ())
6 6
7fun3 = _rhs \(_ :: _) -> () 7fun3 = _lhs fun3 (_rhs \(_ :: _) -> ())
8 8
9fun4 9fun4
10 = _rhs 10 = _lhs
11 \(_ :: _) 11 fun4
12 (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) 12 (_rhs
13 -> () 13 \(_ :: _)
14 (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _) (_ :: _)
15 -> ())
14------------ core code 16------------ core code
15fun1 :: forall a . a -> () 17fun1 :: forall a . a -> ()
16fun1 = \_ -> _rhs \_ -> () 18fun1 = \_ -> _rhs \_ -> ()
diff --git a/testdata/language-features/basic-values/lambda03.out b/testdata/language-features/basic-values/lambda03.out
index 69e50ccf..f9ddcaa4 100644
--- a/testdata/language-features/basic-values/lambda03.out
+++ b/testdata/language-features/basic-values/lambda03.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun1 = _rhs \(_ :: _) (a :: _) (_ :: _) -> a 3fun1 = _lhs fun1 (_rhs \(_ :: _) (a :: _) (_ :: _) -> a)
4 4
5fun2 = \(a :: _) -> _rhs \(_ :: _) (_ :: _) (_ :: _) -> a 5fun2 = _lhs fun2 \(a :: _) -> _rhs \(_ :: _) (_ :: _) (_ :: _) -> a
6------------ core code 6------------ core code
7fun1 :: forall a b c . a -> b -> c -> b 7fun1 :: forall a b c . a -> b -> c -> b
8fun1 = \_ _ _ -> _rhs \_ a _ -> a 8fun1 = \_ _ _ -> _rhs \_ a _ -> a
diff --git a/testdata/language-features/basic-values/let01.out b/testdata/language-features/basic-values/let01.out
index 3c1f5fa4..7d40e348 100644
--- a/testdata/language-features/basic-values/let01.out
+++ b/testdata/language-features/basic-values/let01.out
@@ -1,14 +1,21 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs let a = _rhs (fromInt 1) in fromInt 1 3value1 = _lhs value1 (_rhs let a = _lhs x (_rhs (fromInt 1)) in fromInt 1)
4 4
5value2 = _rhs let a = _rhs (fromInt 1) in fromInt 1 5value2 = _lhs value2 (_rhs let a = _lhs x (_rhs (fromInt 1)) in fromInt 1)
6 6
7value3 = _rhs let a = _rhs (fromInt 1); b = _rhs 'c' in fromInt 1 7value3
8 = _lhs
9 value3
10 (_rhs let a = _lhs x (_rhs (fromInt 1)); b = _lhs y (_rhs 'c') in fromInt 1)
8 11
9value4 = _rhs let a = _rhs (fromInt 1) in fromInt 1 12value4 = _lhs value4 (_rhs let a = _lhs x (_rhs (fromInt 1)) in fromInt 1)
10 13
11value5 = _rhs let a = _rhs (fromInt 1); b = _rhs (fromInt 2) in fromInt 1 14value5
15 = _lhs
16 value5
17 (_rhs
18 let a = _lhs x (_rhs (fromInt 1)); b = _lhs y (_rhs (fromInt 2)) in fromInt 1)
12------------ core code 19------------ core code
13value1 :: forall a . Num a => a 20value1 :: forall a . Num a => a
14value1 = \a b -> _rhs (fromInt a b 1) 21value1 = \a b -> _rhs (fromInt a b 1)
diff --git a/testdata/language-features/basic-values/let02.out b/testdata/language-features/basic-values/let02.out
index 4ca11163..f9de03b4 100644
--- a/testdata/language-features/basic-values/let02.out
+++ b/testdata/language-features/basic-values/let02.out
@@ -1,12 +1,20 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 let 5 value
6 a = _rhs (); 6 (_rhs
7 b = _rhs let d = _rhs 'A' in (); 7 let
8 c = _rhs let e = _rhs (); f = _rhs (fromInt 1); g = _rhs "hello" in 'B' 8 a = _lhs x (_rhs ());
9 in () 9 b = _lhs y (_rhs let d = _lhs c (_rhs 'A') in ());
10 c
11 = _lhs
12 z
13 (_rhs
14 let
15 e = _lhs a (_rhs ()); f = _lhs b (_rhs (fromInt 1)); g = _lhs c (_rhs "hello")
16 in 'B')
17 in ())
10------------ core code 18------------ core code
11value :: () 19value :: ()
12value = _rhs () 20value = _rhs ()
diff --git a/testdata/language-features/basic-values/literal01.out b/testdata/language-features/basic-values/literal01.out
index 4619304a..4eca17da 100644
--- a/testdata/language-features/basic-values/literal01.out
+++ b/testdata/language-features/basic-values/literal01.out
@@ -1,20 +1,20 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3intValue1 = _rhs (fromInt 0) 3intValue1 = _lhs intValue1 (_rhs (fromInt 0))
4 4
5intValue2 = _rhs (fromInt 1) 5intValue2 = _lhs intValue2 (_rhs (fromInt 1))
6 6
7intValue3 = _rhs (fromInt 12345) 7intValue3 = _lhs intValue3 (_rhs (fromInt 12345))
8 8
9floatValue1 = _rhs 2.0 9floatValue1 = _lhs floatValue1 (_rhs 2.0)
10 10
11floatValue2 = _rhs 123400.0 11floatValue2 = _lhs floatValue2 (_rhs 123400.0)
12 12
13charValue = _rhs 'A' 13charValue = _lhs charValue (_rhs 'A')
14 14
15stringValue1 = _rhs "Hello World" 15stringValue1 = _lhs stringValue1 (_rhs "Hello World")
16 16
17stringValue2 = _rhs "\nHello World\tagain!\r\n" 17stringValue2 = _lhs stringValue2 (_rhs "\nHello World\tagain!\r\n")
18------------ core code 18------------ core code
19charValue :: Char 19charValue :: Char
20charValue = _rhs 'A' 20charValue = _rhs 'A'
diff --git a/testdata/language-features/basic-values/operator01.out b/testdata/language-features/basic-values/operator01.out
index f239d6b3..3b6dd323 100644
--- a/testdata/language-features/basic-values/operator01.out
+++ b/testdata/language-features/basic-values/operator01.out
@@ -1,12 +1,12 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3(#$#) = \(_ :: _) (_ :: _) -> _rhs () 3(#$#) = _lhs (#$#) \(_ :: _) (_ :: _) -> _rhs ()
4 4
5($$#) = \(_ :: _) (_ :: _) -> _rhs () 5($$#) = _lhs ($$#) \(_ :: _) (_ :: _) -> _rhs ()
6 6
7($$$#) = \(_ :: _) (_ :: _) -> _rhs () 7($$$#) = _lhs ($$$#) \(_ :: _) (_ :: _) -> _rhs ()
8 8
9($$$) = \(_ :: _) (_ :: _) -> _rhs () 9($$$) = _lhs ($$$) \(_ :: _) (_ :: _) -> _rhs ()
10------------ core code 10------------ core code
11#$# :: forall a b . a -> b -> () 11#$# :: forall a b . a -> b -> ()
12#$# = \_ _ _ _ -> _rhs () 12#$# = \_ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/operator05.out b/testdata/language-features/basic-values/operator05.out
index 6a12b629..c8f2cbc8 100644
--- a/testdata/language-features/basic-values/operator05.out
+++ b/testdata/language-features/basic-values/operator05.out
@@ -1,6 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs let a = \(_ :: _) (_ :: _) -> _rhs () in a () () 3value1
4 = _lhs value1 (_rhs let a = _lhs (+=+) \(_ :: _) (_ :: _) -> _rhs () in a () ())
4------------ core code 5------------ core code
5value1 :: () 6value1 :: ()
6value1 = _rhs () 7value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/operator06.out b/testdata/language-features/basic-values/operator06.out
index 31724acd..84f75660 100644
--- a/testdata/language-features/basic-values/operator06.out
+++ b/testdata/language-features/basic-values/operator06.out
@@ -1,6 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs let a = \(_ :: _) (_ :: _) -> _rhs () in a () () 3value1
4 = _lhs value1 (_rhs let a = _lhs (+=+) \(_ :: _) (_ :: _) -> _rhs () in a () ())
4------------ core code 5------------ core code
5value1 :: () 6value1 :: ()
6value1 = _rhs () 7value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/shadowing01.out b/testdata/language-features/basic-values/shadowing01.out
index 5233865a..b1288270 100644
--- a/testdata/language-features/basic-values/shadowing01.out
+++ b/testdata/language-features/basic-values/shadowing01.out
@@ -1,18 +1,28 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 let 5 value
6 a = _rhs 'A'; 6 (_rhs
7 b = _rhs "hello"; 7 let
8 c 8 a = _lhs x (_rhs 'A');
9 = _rhs 9 b = _lhs y (_rhs "hello");
10 let 10 c
11 d = _rhs (fromInt 1); 11 = _lhs
12 e = _rhs 2.12; 12 c
13 f = _rhs let g = _rhs (); h = _rhs 'C'; i = _rhs 3.12 in "world" 13 (_rhs
14 in () 14 let
15 in '7' 15 d = _lhs x (_rhs (fromInt 1));
16 e = _lhs y (_rhs 2.12);
17 f
18 = _lhs
19 c
20 (_rhs
21 let
22 g = _lhs x (_rhs ()); h = _lhs y (_rhs 'C'); i = _lhs c (_rhs 3.12)
23 in "world")
24 in ())
25 in '7')
16------------ core code 26------------ core code
17value :: Char 27value :: Char
18value = _rhs '7' 28value = _rhs '7'
diff --git a/testdata/language-features/basic-values/shadowing02.out b/testdata/language-features/basic-values/shadowing02.out
index 19a72446..7edd4cef 100644
--- a/testdata/language-features/basic-values/shadowing02.out
+++ b/testdata/language-features/basic-values/shadowing02.out
@@ -1,23 +1,36 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3c = _rhs (fromInt 7) 3c = _lhs c (_rhs (fromInt 7))
4 4
5world = _rhs "world" 5world = _lhs world (_rhs "world")
6 6
7value2 7value2
8 = _rhs 8 = _lhs
9 let 9 value2
10 a = _rhs 'A'; 10 (_rhs
11 b = _rhs "hello"; 11 let
12 c = _rhs (fromInt 123); 12 a = _lhs x (_rhs 'A');
13 d 13 b = _lhs y (_rhs "hello");
14 = _rhs 14 c = _lhs w (_rhs (fromInt 123));
15 let 15 d
16 e = _rhs (fromInt 1); 16 = _lhs
17 f = _rhs 2.12; 17 c
18 g = _rhs let h = _rhs (); i = _rhs 'C'; j = _rhs 3.12; k = _rhs c in world 18 (_rhs
19 in () 19 let
20 in '7' 20 e = _lhs x (_rhs (fromInt 1));
21 f = _lhs y (_rhs 2.12);
22 g
23 = _lhs
24 c
25 (_rhs
26 let
27 h = _lhs x (_rhs ());
28 i = _lhs y (_rhs 'C');
29 j = _lhs c (_rhs 3.12);
30 k = _lhs d (_rhs c)
31 in world)
32 in ())
33 in '7')
21------------ core code 34------------ core code
22c :: forall a . Num a => a 35c :: forall a . Num a => a
23c = \a b -> _rhs (fromInt a b 7) 36c = \a b -> _rhs (fromInt a b 7)
diff --git a/testdata/language-features/basic-values/shadowing03.out b/testdata/language-features/basic-values/shadowing03.out
index 0ee5fa0e..f796c908 100644
--- a/testdata/language-features/basic-values/shadowing03.out
+++ b/testdata/language-features/basic-values/shadowing03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3x = \(_ :: _) (_ :: _) -> _rhs () 3x = _lhs x \(_ :: _) (_ :: _) -> _rhs ()
4------------ core code 4------------ core code
5x :: forall a b . a -> b -> () 5x :: forall a b . a -> b -> ()
6x = \_ _ _ _ -> _rhs () 6x = \_ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/shadowing04.out b/testdata/language-features/basic-values/shadowing04.out
index c55d2dfe..59d10c41 100644
--- a/testdata/language-features/basic-values/shadowing04.out
+++ b/testdata/language-features/basic-values/shadowing04.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3__ = \(_ :: _) (_ :: _) -> _rhs () 3__ = _lhs __ \(_ :: _) (_ :: _) -> _rhs ()
4------------ core code 4------------ core code
5__ :: forall a b . a -> b -> () 5__ :: forall a b . a -> b -> ()
6__ = \_ _ _ _ -> _rhs () 6__ = \_ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/tuple01.out b/testdata/language-features/basic-values/tuple01.out
index fbe79611..b3a8a352 100644
--- a/testdata/language-features/basic-values/tuple01.out
+++ b/testdata/language-features/basic-values/tuple01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3unit = _rhs () 3unit = _lhs unit (_rhs ())
4------------ core code 4------------ core code
5unit :: () 5unit :: ()
6unit = _rhs () 6unit = _rhs ()
diff --git a/testdata/language-features/basic-values/tuple02.out b/testdata/language-features/basic-values/tuple02.out
index 3b6e4410..d221d37a 100644
--- a/testdata/language-features/basic-values/tuple02.out
+++ b/testdata/language-features/basic-values/tuple02.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3tuple1 = _rhs (fromInt 1, 2.3, 'D', "string", ()) 3tuple1 = _lhs tuple1 (_rhs (fromInt 1, 2.3, 'D', "string", ()))
4 4
5tuple2 = _rhs ((), ()) 5tuple2 = _lhs tuple2 (_rhs ((), ()))
6 6
7tuple3 = _rhs (("name", 'c'), ()) 7tuple3 = _lhs tuple3 (_rhs (("name", 'c'), ()))
8------------ core code 8------------ core code
9tuple1 :: forall a . Num a => (a, Float, Char, String, ()) 9tuple1 :: forall a . Num a => (a, Float, Char, String, ())
10tuple1 = \a b -> _rhs (fromInt a b 1, 2.3, 'D', "string", ()) 10tuple1 = \a b -> _rhs (fromInt a b 1, 2.3, 'D', "string", ())
diff --git a/testdata/language-features/basic-values/typesig01.out b/testdata/language-features/basic-values/typesig01.out
index c36d5cf2..964ba8a7 100644
--- a/testdata/language-features/basic-values/typesig01.out
+++ b/testdata/language-features/basic-values/typesig01.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 :: Char 3value1 :: Char
4value1 = _rhs 'a' 4value1 = _lhs value1 (_rhs 'a')
5 5
6value2 :: Char 6value2 :: Char
7value2 = _rhs 'a' 7value2 = _lhs value2 (_rhs 'a')
8------------ core code 8------------ core code
9value1 :: Char 9value1 :: Char
10value1 = _rhs 'a' 10value1 = _rhs 'a'
diff --git a/testdata/language-features/basic-values/typesig02.out b/testdata/language-features/basic-values/typesig02.out
index 415f46d9..b9c50d6b 100644
--- a/testdata/language-features/basic-values/typesig02.out
+++ b/testdata/language-features/basic-values/typesig02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs ('a' :: Char) 3value1 = _lhs value1 (_rhs ('a' :: Char))
4 4
5value2 = _rhs ('a' :: Char) 5value2 = _lhs value2 (_rhs ('a' :: Char))
6------------ core code 6------------ core code
7value1 :: Char 7value1 :: Char
8value1 = _rhs 'a' 8value1 = _rhs 'a'
diff --git a/testdata/language-features/basic-values/typesig03.out b/testdata/language-features/basic-values/typesig03.out
index 738ddca8..a26d2bef 100644
--- a/testdata/language-features/basic-values/typesig03.out
+++ b/testdata/language-features/basic-values/typesig03.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun1 :: forall (a :: _) (b :: _) (c :: _) . a -> b -> c -> () 3fun1 :: forall (a :: _) (b :: _) (c :: _) . a -> b -> c -> ()
4fun1 = \(_ :: _) (_ :: _) (_ :: _) -> _rhs () 4fun1 = _lhs fun1 \(_ :: _) (_ :: _) (_ :: _) -> _rhs ()
5 5
6fun2 :: forall (a :: _) (b :: _) (c :: _) . a -> b -> c -> () 6fun2 :: forall (a :: _) (b :: _) (c :: _) . a -> b -> c -> ()
7fun2 = \(_ :: _) (_ :: _) (_ :: _) -> _rhs () 7fun2 = _lhs fun2 \(_ :: _) (_ :: _) (_ :: _) -> _rhs ()
8------------ core code 8------------ core code
9fun1 :: forall a b c . a -> b -> c -> () 9fun1 :: forall a b c . a -> b -> c -> ()
10fun1 = \_ _ _ _ _ _ -> _rhs () 10fun1 = \_ _ _ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/typesig04.out b/testdata/language-features/basic-values/typesig04.out
index 0df6fc91..4e55cfac 100644
--- a/testdata/language-features/basic-values/typesig04.out
+++ b/testdata/language-features/basic-values/typesig04.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun1 :: forall (a :: _) (b :: _) (c :: _) . a -> (b -> c) -> () 3fun1 :: forall (a :: _) (b :: _) (c :: _) . a -> (b -> c) -> ()
4fun1 = \(_ :: _) (_ :: _) -> _rhs () 4fun1 = _lhs fun1 \(_ :: _) (_ :: _) -> _rhs ()
5 5
6fun2 :: forall (a :: _) (b :: _) (c :: _) . a -> (b -> c) -> () 6fun2 :: forall (a :: _) (b :: _) (c :: _) . a -> (b -> c) -> ()
7fun2 = \(_ :: _) (_ :: _) -> _rhs () 7fun2 = _lhs fun2 \(_ :: _) (_ :: _) -> _rhs ()
8------------ core code 8------------ core code
9fun1 :: forall a b c . a -> (b -> c) -> () 9fun1 :: forall a b c . a -> (b -> c) -> ()
10fun1 = \_ _ _ _ _ -> _rhs () 10fun1 = \_ _ _ _ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/typesig05.out b/testdata/language-features/basic-values/typesig05.out
index b5fdd7ec..7ca5e11a 100644
--- a/testdata/language-features/basic-values/typesig05.out
+++ b/testdata/language-features/basic-values/typesig05.out
@@ -1,18 +1,18 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3funL = \(a :: _) (_ :: _) -> _rhs a 3funL = _lhs funL \(a :: _) (_ :: _) -> _rhs a
4 4
5funR = \(_ :: _) (a :: _) -> _rhs a 5funR = _lhs funR \(_ :: _) (a :: _) -> _rhs a
6 6
7value1 = _rhs (funL 'a' "b" :: Char) 7value1 = _lhs value1 (_rhs (funL 'a' "b" :: Char))
8 8
9value2 = _rhs (funR 'a' "b" :: String) 9value2 = _lhs value2 (_rhs (funR 'a' "b" :: String))
10 10
11value3 :: Char 11value3 :: Char
12value3 = _rhs (funL 'a' "b") 12value3 = _lhs value3 (_rhs (funL 'a' "b"))
13 13
14value4 :: String 14value4 :: String
15value4 = _rhs (funR 'a' "b") 15value4 = _lhs value4 (_rhs (funR 'a' "b"))
16------------ core code 16------------ core code
17funL :: forall a b . a -> b -> a 17funL :: forall a b . a -> b -> a
18funL = \_ _ a _ -> _rhs a 18funL = \_ _ a _ -> _rhs a
diff --git a/testdata/language-features/basic-values/typesig06.out b/testdata/language-features/basic-values/typesig06.out
index 5b74205a..6cc32fea 100644
--- a/testdata/language-features/basic-values/typesig06.out
+++ b/testdata/language-features/basic-values/typesig06.out
@@ -1,12 +1,12 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3funL = \(a :: _) (_ :: _) -> _rhs a 3funL = _lhs funL \(a :: _) (_ :: _) -> _rhs a
4 4
5(<@) = \(a :: _) (_ :: _) -> _rhs a 5(<@) = _lhs (<@) \(a :: _) (_ :: _) -> _rhs a
6 6
7value1 = _rhs ("hi" <@ 1.2 :: String) 7value1 = _lhs value1 (_rhs ("hi" <@ 1.2 :: String))
8 8
9value2 = _rhs ("hi" `funL` 1.2 :: String) 9value2 = _lhs value2 (_rhs ("hi" `funL` 1.2 :: String))
10------------ core code 10------------ core code
11<@ :: forall a b . a -> b -> a 11<@ :: forall a b . a -> b -> a
12<@ = \_ _ a _ -> _rhs a 12<@ = \_ _ a _ -> _rhs a
diff --git a/testdata/language-features/basic-values/typesig07.out b/testdata/language-features/basic-values/typesig07.out
index a374ab2a..c8f1b04a 100644
--- a/testdata/language-features/basic-values/typesig07.out
+++ b/testdata/language-features/basic-values/typesig07.out
@@ -1,22 +1,22 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 :: Int 3value1 :: Int
4value1 = _rhs (fromInt 1) 4value1 = _lhs value1 (_rhs (fromInt 1))
5 5
6value2 :: Int 6value2 :: Int
7value2 = _rhs (fromInt 2) 7value2 = _lhs value2 (_rhs (fromInt 2))
8 8
9value3 :: Int 9value3 :: Int
10value3 = _rhs (fromInt 3) 10value3 = _lhs value3 (_rhs (fromInt 3))
11 11
12value4 :: () -> () -> () 12value4 :: () -> () -> ()
13value4 = \(_ :: _) (_ :: _) -> _rhs () 13value4 = _lhs value4 \(_ :: _) (_ :: _) -> _rhs ()
14 14
15(@@@) :: () -> () -> () 15(@@@) :: () -> () -> ()
16(@@@) = \(_ :: _) (_ :: _) -> _rhs () 16(@@@) = _lhs (@@@) \(_ :: _) (_ :: _) -> _rhs ()
17 17
18value6 :: () -> () -> () 18value6 :: () -> () -> ()
19value6 = \(_ :: _) (_ :: _) -> _rhs () 19value6 = _lhs value6 \(_ :: _) (_ :: _) -> _rhs ()
20------------ core code 20------------ core code
21@@@ :: () -> () -> () 21@@@ :: () -> () -> ()
22@@@ = \_ _ -> _rhs () 22@@@ = \_ _ -> _rhs ()
diff --git a/testdata/language-features/basic-values/typesyn01.out b/testdata/language-features/basic-values/typesyn01.out
index 442aeac3..04b3421a 100644
--- a/testdata/language-features/basic-values/typesyn01.out
+++ b/testdata/language-features/basic-values/typesyn01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3'MyUnit = _rhs ' () 3'MyUnit = _lhs 'MyUnit (_rhs ' ())
4------------ core code 4------------ core code
5'MyUnit :: Type 5'MyUnit :: Type
6'MyUnit = _rhs ' () 6'MyUnit = _rhs ' ()
diff --git a/testdata/language-features/basic-values/typesyn02.out b/testdata/language-features/basic-values/typesyn02.out
index fa019006..efca73f5 100644
--- a/testdata/language-features/basic-values/typesyn02.out
+++ b/testdata/language-features/basic-values/typesyn02.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3'MyUnit = _rhs ' () 3'MyUnit = _lhs 'MyUnit (_rhs ' ())
4 4
5fun :: forall (a :: _) . a -> MyUnit -> MyUnit 5fun :: forall (a :: _) . a -> MyUnit -> MyUnit
6fun = \(_ :: _) (a :: _) -> hlistNilCase _ (_rhs ()) a 6fun = _lhs fun \(_ :: _) (a :: _) -> hlistNilCase _ (_rhs ()) a
7------------ core code 7------------ core code
8'MyUnit :: Type 8'MyUnit :: Type
9'MyUnit = _rhs ' () 9'MyUnit = _rhs ' ()
diff --git a/testdata/language-features/basic-values/where01.out b/testdata/language-features/basic-values/where01.out
index 843b762e..3b56a3c4 100644
--- a/testdata/language-features/basic-values/where01.out
+++ b/testdata/language-features/basic-values/where01.out
@@ -1,26 +1,28 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs let a = _rhs () in () 3value1 = _lhs value1 (_rhs let a = _lhs x (_rhs ()) in ())
4 4
5value2 = _rhs let a = _rhs () in a 5value2 = _lhs value2 (_rhs let a = _lhs x (_rhs ()) in a)
6 6
7value3 = _rhs let a = _rhs (); b = _rhs () in a 7value3 = _lhs value3 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in a)
8 8
9value4 = _rhs let a = _rhs (); b = _rhs () in b 9value4 = _lhs value4 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in b)
10 10
11value5 = _rhs let a = _rhs (); b = _rhs () in a 11value5 = _lhs value5 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in a)
12 12
13value6 = _rhs () 13value6 = _lhs value6 (_rhs ())
14 14
15value7 = _rhs () 15value7 = _lhs value7 (_rhs ())
16 16
17value8 = _rhs () 17value8 = _lhs value8 (_rhs ())
18 18
19value9 = _rhs let a = _rhs (); b = _rhs () in a 19value9 = _lhs value9 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in a)
20 20
21value10 = _rhs let a = _rhs (); b = _rhs () in a 21value10
22 = _lhs value10 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in a)
22 23
23value11 = _rhs let a = _rhs (); b = _rhs () in a 24value11
25 = _lhs value11 (_rhs let a = _lhs x (_rhs ()); b = _lhs y (_rhs ()) in a)
24------------ core code 26------------ core code
25value1 :: () 27value1 :: ()
26value1 = _rhs () 28value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/where04.out b/testdata/language-features/basic-values/where04.out
index 9eb5f765..3095e9d3 100644
--- a/testdata/language-features/basic-values/where04.out
+++ b/testdata/language-features/basic-values/where04.out
@@ -1,10 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 = _rhs let a = _rhs let b = _rhs () in b in a 3value1
4 = _lhs value1 (_rhs let a = _lhs x (_rhs let b = _lhs y (_rhs ()) in b) in a)
4 5
5value2 = _rhs let a = _rhs let b = _rhs () in b in a 6value2
7 = _lhs value2 (_rhs let a = _lhs x (_rhs let b = _lhs y (_rhs ()) in b) in a)
6 8
7value3 = _rhs let a = _rhs let b = _rhs () in b in a 9value3
10 = _lhs value3 (_rhs let a = _lhs x (_rhs let b = _lhs y (_rhs ()) in b) in a)
8------------ core code 11------------ core code
9value1 :: () 12value1 :: ()
10value1 = _rhs () 13value1 = _rhs ()
diff --git a/testdata/language-features/basic-values/where05.out b/testdata/language-features/basic-values/where05.out
index 55c7a06d..0dc19f61 100644
--- a/testdata/language-features/basic-values/where05.out
+++ b/testdata/language-features/basic-values/where05.out
@@ -1,40 +1,48 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value1 3value1
4 = _rhs 4 = _lhs
5 ((\(a :: _) -> case'Bool 5 value1
6 (\(_ :: _) -> _) 6 (_rhs
7 () 7 ((\(a :: _) -> case'Bool
8 (let b = _rhs () in b) 8 (\(_ :: _) -> _)
9 (fromInt 1 == a)) 9 ()
10 (fromInt 1)) 10 (let b = _lhs x (_rhs ()) in b)
11 (fromInt 1 == a))
12 (fromInt 1)))
11 13
12value2 14value2
13 = _rhs 15 = _lhs
14 ((\(a :: _) -> case'Bool 16 value2
15 (\(_ :: _) -> _) 17 (_rhs
16 () 18 ((\(a :: _) -> case'Bool
17 (let b = _rhs () in b) 19 (\(_ :: _) -> _)
18 (fromInt 1 == a)) 20 ()
19 (fromInt 1)) 21 (let b = _lhs x (_rhs ()) in b)
22 (fromInt 1 == a))
23 (fromInt 1)))
20 24
21value3 25value3
22 = _rhs 26 = _lhs
23 ((\(a :: _) -> case'Bool 27 value3
24 (\(_ :: _) -> _) 28 (_rhs
25 () 29 ((\(a :: _) -> case'Bool
26 (let b = _rhs () in b) 30 (\(_ :: _) -> _)
27 (fromInt 1 == a)) 31 ()
28 (fromInt 1)) 32 (let b = _lhs x (_rhs ()) in b)
33 (fromInt 1 == a))
34 (fromInt 1)))
29 35
30value4 36value4
31 = _rhs 37 = _lhs
32 let a = _rhs () in (\(b :: _) -> case'Bool 38 value4
33 (\(_ :: _) -> _) 39 (_rhs
34 () 40 let a = _lhs x (_rhs ()) in (\(b :: _) -> case'Bool
35 a 41 (\(_ :: _) -> _)
36 (fromInt 1 == b)) 42 ()
37 (fromInt 1) 43 a
44 (fromInt 1 == b))
45 (fromInt 1))
38------------ core code 46------------ core code
39value1 :: forall a . (Eq a, Num a) => () 47value1 :: forall a . (Eq a, Num a) => ()
40value1 48value1
diff --git a/testdata/language-features/basic-values/wildcard01.out b/testdata/language-features/basic-values/wildcard01.out
index 9fa1c034..b462aac7 100644
--- a/testdata/language-features/basic-values/wildcard01.out
+++ b/testdata/language-features/basic-values/wildcard01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3funUnit = \(_ :: _) -> _rhs () 3funUnit = _lhs funUnit \(_ :: _) -> _rhs ()
4------------ core code 4------------ core code
5funUnit :: forall a . a -> () 5funUnit :: forall a . a -> ()
6funUnit = \_ _ -> _rhs () 6funUnit = \_ _ -> _rhs ()
diff --git a/testdata/language-features/guard/guard01.out b/testdata/language-features/guard/guard01.out
index 3e232549..e32f6dfc 100644
--- a/testdata/language-features/guard/guard01.out
+++ b/testdata/language-features/guard/guard01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs ()) True 3value = _lhs value (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs ()) True)
4------------ core code 4------------ core code
5value :: () 5value :: ()
6value = _rhs () 6value = _rhs ()
diff --git a/testdata/language-features/guard/guard03.out b/testdata/language-features/guard/guard03.out
index 3e44257a..794931e9 100644
--- a/testdata/language-features/guard/guard03.out
+++ b/testdata/language-features/guard/guard03.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 value
6 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False) 6 (case'Bool
7 (_rhs "True") 7 (\(_ :: _) -> _)
8 True 8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False)
9 (_rhs "True")
10 True)
9------------ core code 11------------ core code
10value :: String 12value :: String
11value = _rhs "True" 13value = _rhs "True"
diff --git a/testdata/language-features/guard/guard04.out b/testdata/language-features/guard/guard04.out
index 3becb569..6c87ff14 100644
--- a/testdata/language-features/guard/guard04.out
+++ b/testdata/language-features/guard/guard04.out
@@ -1,6 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = case'Bool (\(_ :: _) -> _) (_rhs "False") (_rhs "True") True 3value
4 = _lhs value (case'Bool (\(_ :: _) -> _) (_rhs "False") (_rhs "True") True)
4------------ core code 5------------ core code
5value :: String 6value :: String
6value = _rhs "True" 7value = _rhs "True"
diff --git a/testdata/language-features/guard/guard06.out b/testdata/language-features/guard/guard06.out
index aa385877..778d4a8d 100644
--- a/testdata/language-features/guard/guard06.out
+++ b/testdata/language-features/guard/guard06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs () 3value = _lhs value (_rhs ())
4------------ core code 4------------ core code
5value :: () 5value :: ()
6value = _rhs () 6value = _rhs ()
diff --git a/testdata/language-features/guard/guard07.out b/testdata/language-features/guard/guard07.out
index 81726eed..06c8a716 100644
--- a/testdata/language-features/guard/guard07.out
+++ b/testdata/language-features/guard/guard07.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 value
6 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False) 6 (case'Bool
7 (_rhs "True") 7 (\(_ :: _) -> _)
8 True 8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False)
9 (_rhs "True")
10 True)
9------------ core code 11------------ core code
10value :: String 12value :: String
11value = _rhs "True" 13value = _rhs "True"
diff --git a/testdata/language-features/guard/guard08.out b/testdata/language-features/guard/guard08.out
index 5d6e6bdc..069c68c4 100644
--- a/testdata/language-features/guard/guard08.out
+++ b/testdata/language-features/guard/guard08.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 value
6 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False) 6 (case'Bool
7 (_rhs "True") 7 (\(_ :: _) -> _)
8 True 8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False)
9 (_rhs "True")
10 True)
9------------ core code 11------------ core code
10value :: String 12value :: String
11value = _rhs "True" 13value = _rhs "True"
diff --git a/testdata/language-features/guard/guard09.out b/testdata/language-features/guard/guard09.out
index 4b580469..b7c3f36e 100644
--- a/testdata/language-features/guard/guard09.out
+++ b/testdata/language-features/guard/guard09.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 value
6 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False) 6 (case'Bool
7 (_rhs "True") 7 (\(_ :: _) -> _)
8 True 8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs "False") False)
9 (_rhs "True")
10 True)
9------------ core code 11------------ core code
10value :: String 12value :: String
11value = _rhs "True" 13value = _rhs "True"
diff --git a/testdata/language-features/guard/guard11.out b/testdata/language-features/guard/guard11.out
index a08332c1..ea80eef0 100644
--- a/testdata/language-features/guard/guard11.out
+++ b/testdata/language-features/guard/guard11.out
@@ -1,6 +1,9 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs "False") (_rhs "True") a 3fun
4 = _lhs
5 fun
6 \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs "False") (_rhs "True") a
4------------ core code 7------------ core code
5fun :: Bool -> String 8fun :: Bool -> String
6fun = \a -> case'Bool (\_ -> 'String) (_rhs "False") (_rhs "True") a 9fun = \a -> case'Bool (\_ -> 'String) (_rhs "False") (_rhs "True") a
diff --git a/testdata/language-features/guard/guard13.out b/testdata/language-features/guard/guard13.out
index 5498c290..6f9005bc 100644
--- a/testdata/language-features/guard/guard13.out
+++ b/testdata/language-features/guard/guard13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) a 3fun = _lhs fun \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) a
4------------ core code 4------------ core code
5fun :: Bool -> () 5fun :: Bool -> ()
6fun = \a -> case'Bool (\_ -> ' ()) (_rhs ()) (_rhs ()) a 6fun = \a -> case'Bool (\_ -> ' ()) (_rhs ()) (_rhs ()) a
diff --git a/testdata/language-features/guard/guard14.out b/testdata/language-features/guard/guard14.out
index 6e6f225c..1a0acd2a 100644
--- a/testdata/language-features/guard/guard14.out
+++ b/testdata/language-features/guard/guard14.out
@@ -1,6 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) True in () 3value
4 = _lhs
5 value
6 (_rhs
7 let a = _lhs x (case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) True) in ())
4------------ core code 8------------ core code
5value :: () 9value :: ()
6value = _rhs () 10value = _rhs ()
diff --git a/testdata/language-features/guard/guard15.out b/testdata/language-features/guard/guard15.out
index 3d01ff73..9314863f 100644
--- a/testdata/language-features/guard/guard15.out
+++ b/testdata/language-features/guard/guard15.out
@@ -1,6 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs let a = case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) True in () 3value
4 = _lhs
5 value
6 (_rhs
7 let a = _lhs x (case'Bool (\(_ :: _) -> _) (_rhs ()) (_rhs ()) True) in ())
4------------ core code 8------------ core code
5value :: () 9value :: ()
6value = _rhs () 10value = _rhs ()
diff --git a/testdata/language-features/guard/guard16.out b/testdata/language-features/guard/guard16.out
index 1a574cf7..a9867165 100644
--- a/testdata/language-features/guard/guard16.out
+++ b/testdata/language-features/guard/guard16.out
@@ -1,13 +1,15 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 ((\(a :: _) -> case'Bool 5 value
6 (\(_ :: _) -> _) 6 (_rhs
7 () 7 ((\(a :: _) -> case'Bool
8 (case'Bool (\(_ :: _) -> _) () () True) 8 (\(_ :: _) -> _)
9 (fromInt 1 == a)) 9 ()
10 (fromInt 1)) 10 (case'Bool (\(_ :: _) -> _) () () True)
11 (fromInt 1 == a))
12 (fromInt 1)))
11------------ core code 13------------ core code
12value :: forall a . (Eq a, Num a) => () 14value :: forall a . (Eq a, Num a) => ()
13value 15value
diff --git a/testdata/language-features/module/Hello01.out b/testdata/language-features/module/Hello01.out
index 0c553aa4..30490325 100644
--- a/testdata/language-features/module/Hello01.out
+++ b/testdata/language-features/module/Hello01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4 4
5world = _rhs "world" 5world = _lhs world (_rhs "world")
6------------ core code 6------------ core code
7hello :: String 7hello :: String
8hello = _rhs "hello" 8hello = _rhs "hello"
diff --git a/testdata/language-features/module/Hello02.out b/testdata/language-features/module/Hello02.out
index 86d52127..4a12836e 100644
--- a/testdata/language-features/module/Hello02.out
+++ b/testdata/language-features/module/Hello02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4 4
5world = _rhs "world" 5world = _lhs world (_rhs "world")
6------------ core code 6------------ core code
7hello :: String 7hello :: String
8hello = _rhs "hello" 8hello = _rhs "hello"
diff --git a/testdata/language-features/module/Hello03.out b/testdata/language-features/module/Hello03.out
index 66b7e036..87981272 100644
--- a/testdata/language-features/module/Hello03.out
+++ b/testdata/language-features/module/Hello03.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3greeting = _rhs 'G' 3greeting = _lhs greeting (_rhs 'G')
4 4
5value = _rhs 12.2 5value = _lhs value (_rhs 12.2)
6------------ core code 6------------ core code
7greeting :: Char 7greeting :: Char
8greeting = _rhs 'G' 8greeting = _rhs 'G'
diff --git a/testdata/language-features/module/ModulePackage/SubModule01.out b/testdata/language-features/module/ModulePackage/SubModule01.out
index 71c67233..f4408bde 100644
--- a/testdata/language-features/module/ModulePackage/SubModule01.out
+++ b/testdata/language-features/module/ModulePackage/SubModule01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "Hello" 3hello = _lhs hello (_rhs "Hello")
4------------ core code 4------------ core code
5hello :: String 5hello :: String
6hello = _rhs "Hello" 6hello = _rhs "Hello"
diff --git a/testdata/language-features/module/Moduledef06.out b/testdata/language-features/module/Moduledef06.out
index 5036cb7f..01116115 100644
--- a/testdata/language-features/module/Moduledef06.out
+++ b/testdata/language-features/module/Moduledef06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4------------ core code 4------------ core code
5hello :: String 5hello :: String
6hello = _rhs "hello" 6hello = _rhs "hello"
diff --git a/testdata/language-features/module/Moduledef07.out b/testdata/language-features/module/Moduledef07.out
index b75130a3..85bccf88 100644
--- a/testdata/language-features/module/Moduledef07.out
+++ b/testdata/language-features/module/Moduledef07.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4------------ core code 4------------ core code
5hello :: String 5hello :: String
6hello = _rhs "hello" 6hello = _rhs "hello"
diff --git a/testdata/language-features/module/Moduledef08.out b/testdata/language-features/module/Moduledef08.out
index 4b1c55aa..2c303d27 100644
--- a/testdata/language-features/module/Moduledef08.out
+++ b/testdata/language-features/module/Moduledef08.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4------------ core code 4------------ core code
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/Moduledef08.lc 5:1-5:6 6testdata/language-features/module/Moduledef08.lc 5:1-5:6
diff --git a/testdata/language-features/module/Moduledef09.out b/testdata/language-features/module/Moduledef09.out
index 0aea411c..077f20e4 100644
--- a/testdata/language-features/module/Moduledef09.out
+++ b/testdata/language-features/module/Moduledef09.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4 4
5world = _rhs "world" 5world = _lhs world (_rhs "world")
6------------ core code 6------------ core code
7hello :: String 7hello :: String
8hello = _rhs "hello" 8hello = _rhs "hello"
diff --git a/testdata/language-features/module/Moduledef10.out b/testdata/language-features/module/Moduledef10.out
index ec9a574e..b05b9d4c 100644
--- a/testdata/language-features/module/Moduledef10.out
+++ b/testdata/language-features/module/Moduledef10.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4 4
5world = _rhs "world" 5world = _lhs world (_rhs "world")
6 6
7value = _rhs () 7value = _lhs value (_rhs ())
8------------ core code 8------------ core code
9hello :: String 9hello :: String
10hello = _rhs "hello" 10hello = _rhs "hello"
diff --git a/testdata/language-features/module/Moduledef13.out b/testdata/language-features/module/Moduledef13.out
index f1cf03de..167125c8 100644
--- a/testdata/language-features/module/Moduledef13.out
+++ b/testdata/language-features/module/Moduledef13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs "hello" 3hello = _lhs hello (_rhs "hello")
4------------ core code 4------------ core code
5hello :: String 5hello :: String
6hello = _rhs "hello" 6hello = _rhs "hello"
diff --git a/testdata/language-features/module/TypeSyn01Mod.out b/testdata/language-features/module/TypeSyn01Mod.out
index 109f5ee9..54a83cfe 100644
--- a/testdata/language-features/module/TypeSyn01Mod.out
+++ b/testdata/language-features/module/TypeSyn01Mod.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3'MyUnit = _rhs ' () 3'MyUnit = _lhs 'MyUnit (_rhs ' ())
4------------ core code 4------------ core code
5'MyUnit :: Type 5'MyUnit :: Type
6'MyUnit = _rhs ' () 6'MyUnit = _rhs ' ()
diff --git a/testdata/language-features/module/import01.out b/testdata/language-features/module/import01.out
index 6ccf9702..8705a150 100644
--- a/testdata/language-features/module/import01.out
+++ b/testdata/language-features/module/import01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3x = _rhs hello 3x = _lhs x (_rhs hello)
4------------ core code 4------------ core code
5x :: String 5x :: String
6x = _rhs "hello" 6x = _rhs "hello"
diff --git a/testdata/language-features/module/import05.out b/testdata/language-features/module/import05.out
index 3d820de9..90eff292 100644
--- a/testdata/language-features/module/import05.out
+++ b/testdata/language-features/module/import05.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3x :: String 3x :: String
4x = _rhs hello 4x = _lhs x (_rhs hello)
5------------ core code 5------------ core code
6x :: String 6x :: String
7x = _rhs "hello" 7x = _rhs "hello"
diff --git a/testdata/language-features/module/import06.out b/testdata/language-features/module/import06.out
index ae0e10e5..af5885e2 100644
--- a/testdata/language-features/module/import06.out
+++ b/testdata/language-features/module/import06.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs () 3hello = _lhs hello (_rhs ())
4 4
5x = _rhs world 5x = _lhs x (_rhs world)
6------------ core code 6------------ core code
7hello :: () 7hello :: ()
8hello = _rhs () 8hello = _rhs ()
diff --git a/testdata/language-features/module/import07.out b/testdata/language-features/module/import07.out
index 31cb267f..531e24a2 100644
--- a/testdata/language-features/module/import07.out
+++ b/testdata/language-features/module/import07.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3hello = _rhs () 3hello = _lhs hello (_rhs ())
4 4
5x = _rhs world 5x = _lhs x (_rhs world)
6------------ core code 6------------ core code
7hello :: () 7hello :: ()
8hello = _rhs () 8hello = _rhs ()
diff --git a/testdata/language-features/module/import08.out b/testdata/language-features/module/import08.out
index e68b7bcd..fd3ee5b9 100644
--- a/testdata/language-features/module/import08.out
+++ b/testdata/language-features/module/import08.out
@@ -1,15 +1,15 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value = _rhs () 3value = _lhs value (_rhs ())
4 4
5g :: Char 5g :: Char
6g = _rhs greeting 6g = _lhs g (_rhs greeting)
7 7
8h :: String 8h :: String
9h = _rhs hello 9h = _lhs h (_rhs hello)
10 10
11w :: String 11w :: String
12w = _rhs world 12w = _lhs w (_rhs world)
13------------ core code 13------------ core code
14g :: Char 14g :: Char
15g = _rhs 'G' 15g = _rhs 'G'
diff --git a/testdata/language-features/module/import09.out b/testdata/language-features/module/import09.out
index c8e689e5..3082c3ff 100644
--- a/testdata/language-features/module/import09.out
+++ b/testdata/language-features/module/import09.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun :: forall (a :: _) . a -> MyUnit -> MyUnit 3fun :: forall (a :: _) . a -> MyUnit -> MyUnit
4fun = \(_ :: _) (a :: _) -> hlistNilCase _ (_rhs ()) a 4fun = _lhs fun \(_ :: _) (a :: _) -> hlistNilCase _ (_rhs ()) a
5------------ core code 5------------ core code
6fun :: forall a . a -> MyUnit -> () 6fun :: forall a . a -> MyUnit -> ()
7fun = \_ _ a -> hlistNilCase ' () (_rhs ()) a 7fun = \_ _ a -> hlistNilCase ' () (_rhs ()) a
diff --git a/testdata/language-features/module/import12.out b/testdata/language-features/module/import12.out
index 26a58bd3..760cc132 100644
--- a/testdata/language-features/module/import12.out
+++ b/testdata/language-features/module/import12.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = _rhs hello 3fun = _lhs fun (_rhs hello)
4------------ core code 4------------ core code
5fun :: String 5fun :: String
6fun = _rhs "hello" 6fun = _rhs "hello"
diff --git a/testdata/language-features/module/import13.out b/testdata/language-features/module/import13.out
index 5a9791da..fd02626b 100644
--- a/testdata/language-features/module/import13.out
+++ b/testdata/language-features/module/import13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = _rhs hello 3fun = _lhs fun (_rhs hello)
4------------ core code 4------------ core code
5fun :: String 5fun :: String
6fun = _rhs "hello" 6fun = _rhs "hello"
diff --git a/testdata/language-features/module/import14.out b/testdata/language-features/module/import14.out
index a2feaea6..3b09db66 100644
--- a/testdata/language-features/module/import14.out
+++ b/testdata/language-features/module/import14.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = _rhs hello 3fun = _lhs fun (_rhs hello)
4------------ core code 4------------ core code
5fun :: String 5fun :: String
6fun = _rhs "hello" 6fun = _rhs "hello"
diff --git a/testdata/language-features/module/import15.out b/testdata/language-features/module/import15.out
index 7e58a5c7..9cf8cd6f 100644
--- a/testdata/language-features/module/import15.out
+++ b/testdata/language-features/module/import15.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun = _rhs hello 3fun = _lhs fun (_rhs hello)
4------------ core code 4------------ core code
5fun :: String 5fun :: String
6fun = _rhs "Hello" 6fun = _rhs "Hello"
diff --git a/testdata/language-features/pattern/pattern01.out b/testdata/language-features/pattern/pattern01.out
index b01ea25b..bbd1d94e 100644
--- a/testdata/language-features/pattern/pattern01.out
+++ b/testdata/language-features/pattern/pattern01.out
@@ -1,13 +1,21 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun1 3fun1
4 = \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') (fromInt 0 == a) 4 = _lhs
5 fun1
6 \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') (fromInt 0 == a)
5 7
6fun2 = \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') ("0" == a) 8fun2
9 = _lhs
10 fun2
11 \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') ("0" == a)
7 12
8fun3 = \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') ('0' == a) 13fun3
14 = _lhs
15 fun3
16 \(a :: _) -> case'Bool (\(_ :: _) -> _) (_rhs '_') (_rhs '0') ('0' == a)
9 17
10fun4 = \(a :: _) -> hlistNilCase _ (_rhs '0') a 18fun4 = _lhs fun4 \(a :: _) -> hlistNilCase _ (_rhs '0') a
11------------ core code 19------------ core code
12fun1 :: forall a . (Eq a, Num a) => a -> Char 20fun1 :: forall a . (Eq a, Num a) => a -> Char
13fun1 21fun1
diff --git a/testdata/language-features/pattern/uncovered.out b/testdata/language-features/pattern/uncovered.out
index b461ff6e..f9952c69 100644
--- a/testdata/language-features/pattern/uncovered.out
+++ b/testdata/language-features/pattern/uncovered.out
@@ -1,89 +1,95 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3f 3f
4 = \(a :: _) (b :: _) (c :: _) -> case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 f
6 (case'Bool 6 \(a :: _) (b :: _) (c :: _) -> case'Bool
7 (\(_ :: _) -> _)
8 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs (fromInt 1)) c)
9 (_rhs (fromInt 2))
10 a)
11 (case'Bool
12 (\(_ :: _) -> _) 7 (\(_ :: _) -> _)
13 (_rhs (fromInt 0)) 8 (case'Bool
14 (case'Bool (\(_ :: _) -> _) (_rhs (fromInt 1)) (_rhs undefined) a) 9 (\(_ :: _) -> _)
15 c) 10 (case'Bool (\(_ :: _) -> _) (_rhs undefined) (_rhs (fromInt 1)) c)
16 b 11 (_rhs (fromInt 2))
12 a)
13 (case'Bool
14 (\(_ :: _) -> _)
15 (_rhs (fromInt 0))
16 (case'Bool (\(_ :: _) -> _) (_rhs (fromInt 1)) (_rhs undefined) a)
17 c)
18 b
17 19
18g 20g
19 = \(a :: _) -> case'List 21 = _lhs
20 (\(_ :: _) -> _) 22 g
21 (_rhs undefined) 23 \(a :: _) -> case'List
22 (\(b :: _) (c :: _) -> case'Bool
23 (\(_ :: _) -> _) 24 (\(_ :: _) -> _)
24 (_rhs undefined) 25 (_rhs undefined)
25 (case'List 26 (\(b :: _) (c :: _) -> case'Bool
26 (\(_ :: _) -> _) 27 (\(_ :: _) -> _)
27 (_rhs undefined) 28 (_rhs undefined)
28 (\(d :: _) (e :: _) -> case'Bool 29 (case'List
29 (\(_ :: _) -> _) 30 (\(_ :: _) -> _)
30 (case'List 31 (_rhs undefined)
32 (\(d :: _) (e :: _) -> case'Bool
31 (\(_ :: _) -> _) 33 (\(_ :: _) -> _)
32 (_rhs undefined) 34 (case'List
33 (\(f :: _) (g :: _) -> case'Bool
34 (\(_ :: _) -> _) 35 (\(_ :: _) -> _)
35 (_rhs undefined) 36 (_rhs undefined)
36 (case'List 37 (\(f :: _) (g :: _) -> case'Bool
37 (\(_ :: _) -> _) 38 (\(_ :: _) -> _)
38 (_rhs False) 39 (_rhs undefined)
39 (\(_ :: _) (_ :: _) -> _rhs undefined) 40 (case'List
40 g) 41 (\(_ :: _) -> _)
41 f) 42 (_rhs False)
42 e) 43 (\(_ :: _) (_ :: _) -> _rhs undefined)
43 (_rhs undefined) 44 g)
44 d) 45 f)
45 c) 46 e)
46 b) 47 (_rhs undefined)
47 a 48 d)
49 c)
50 b)
51 a
48 52
49h 53h
50 = \(a :: _) -> case'List 54 = _lhs
51 (\(_ :: _) -> _) 55 h
52 (_rhs undefined) 56 \(a :: _) -> case'List
53 (\(b :: _) (c :: _) -> case'List
54 (\(_ :: _) -> _) 57 (\(_ :: _) -> _)
55 (_rhs undefined) 58 (_rhs undefined)
56 (\(d :: _) (e :: _) -> case'Bool 59 (\(b :: _) (c :: _) -> case'List
57 (\(_ :: _) -> _) 60 (\(_ :: _) -> _)
58 (_rhs undefined) 61 (_rhs undefined)
59 (case'List 62 (\(d :: _) (e :: _) -> case'Bool
60 (\(_ :: _) -> _) 63 (\(_ :: _) -> _)
64 (_rhs undefined)
61 (case'List 65 (case'List
62 (\(_ :: _) -> _) 66 (\(_ :: _) -> _)
63 (_rhs undefined) 67 (case'List
64 (\(f :: _) (g :: _) -> case'List
65 (\(_ :: _) -> _) 68 (\(_ :: _) -> _)
66 (_rhs undefined) 69 (_rhs undefined)
67 (\(h :: _) (i :: _) -> case'Bool 70 (\(f :: _) (g :: _) -> case'List
68 (\(_ :: _) -> _) 71 (\(_ :: _) -> _)
69 (case'List 72 (_rhs undefined)
73 (\(h :: _) (i :: _) -> case'Bool
70 (\(_ :: _) -> _) 74 (\(_ :: _) -> _)
71 (case'List 75 (case'List
72 (\(_ :: _) -> _) 76 (\(_ :: _) -> _)
73 (_rhs True) 77 (case'List
78 (\(_ :: _) -> _)
79 (_rhs True)
80 (\(_ :: _) (_ :: _) -> _rhs undefined)
81 g)
74 (\(_ :: _) (_ :: _) -> _rhs undefined) 82 (\(_ :: _) (_ :: _) -> _rhs undefined)
75 g) 83 i)
76 (\(_ :: _) (_ :: _) -> _rhs undefined) 84 (_rhs undefined)
77 i) 85 h)
78 (_rhs undefined) 86 f)
79 h) 87 c)
80 f) 88 (\(_ :: _) (_ :: _) -> _rhs undefined)
81 c) 89 e)
82 (\(_ :: _) (_ :: _) -> _rhs undefined) 90 d)
83 e) 91 b)
84 d) 92 a
85 b)
86 a
87------------ core code 93------------ core code
88f :: forall a . Num a => Bool -> Bool -> Bool -> a 94f :: forall a . Num a => Bool -> Bool -> Bool -> a
89f 95f
diff --git a/testdata/language-features/pattern/unreachable.out b/testdata/language-features/pattern/unreachable.out
index e8991ac1..7b7df75d 100644
--- a/testdata/language-features/pattern/unreachable.out
+++ b/testdata/language-features/pattern/unreachable.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3f = \(_ :: _) -> _rhs "hello" 3f = _lhs f \(_ :: _) -> _rhs "hello"
4------------ core code 4------------ core code
5f :: forall a . a -> String 5f :: forall a . a -> String
6f = \_ _ -> _rhs "hello" 6f = \_ _ -> _rhs "hello"
diff --git a/testdata/language-features/recursion/simplerec01.out b/testdata/language-features/recursion/simplerec01.out
index f6732e0f..736caa77 100644
--- a/testdata/language-features/recursion/simplerec01.out
+++ b/testdata/language-features/recursion/simplerec01.out
@@ -1,11 +1,13 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3fun 3fun
4 = \(a :: _) -> case'Bool 4 = _lhs
5 (\(_ :: _) -> _) 5 fun
6 (_rhs (fun (fromInt 0))) 6 \(a :: _) -> case'Bool
7 (_rhs 'a') 7 (\(_ :: _) -> _)
8 (fromInt 0 == a) 8 (_rhs (fun (fromInt 0)))
9 (_rhs 'a')
10 (fromInt 0 == a)
9------------ core code 11------------ core code
10fun :: forall a . (Num a, Eq a, Num a) => a -> Char 12fun :: forall a . (Num a, Eq a, Num a) => a -> Char
11fun 13fun
diff --git a/testdata/language-features/recursion/simplerec02.out b/testdata/language-features/recursion/simplerec02.out
index 39e52ba0..d80f3cfd 100644
--- a/testdata/language-features/recursion/simplerec02.out
+++ b/testdata/language-features/recursion/simplerec02.out
@@ -1,16 +1,20 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 let 5 value
6 a 6 (_rhs
7 = primFix 7 let
8 \(b :: _) (c :: _) -> case'Bool 8 a
9 (\(_ :: _) -> _) 9 = primFix
10 (_rhs (b (fromInt 0))) 10 \(b :: _) -> _lhs
11 (_rhs 'a') 11 fun
12 (fromInt 0 == c) 12 \(c :: _) -> case'Bool
13 in () 13 (\(_ :: _) -> _)
14 (_rhs (b (fromInt 0)))
15 (_rhs 'a')
16 (fromInt 0 == c)
17 in ())
14------------ core code 18------------ core code
15value :: () 19value :: ()
16value = _rhs () 20value = _rhs ()
diff --git a/testdata/language-features/recursion/simplerec03.out b/testdata/language-features/recursion/simplerec03.out
index 32df69c1..031dbc8d 100644
--- a/testdata/language-features/recursion/simplerec03.out
+++ b/testdata/language-features/recursion/simplerec03.out
@@ -1,16 +1,20 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3value 3value
4 = _rhs 4 = _lhs
5 let 5 value
6 a 6 (_rhs
7 = primFix 7 let
8 \(b :: _) (c :: _) -> case'Bool 8 a
9 (\(_ :: _) -> _) 9 = primFix
10 (_rhs (b (fromInt 0))) 10 \(b :: _) -> _lhs
11 (_rhs 'a') 11 fun
12 (fromInt 0 == c) 12 \(c :: _) -> case'Bool
13 in () 13 (\(_ :: _) -> _)
14 (_rhs (b (fromInt 0)))
15 (_rhs 'a')
16 (fromInt 0 == c)
17 in ())
14------------ core code 18------------ core code
15value :: () 19value :: ()
16value = _rhs () 20value = _rhs ()
diff --git a/testdata/language-features/section/section01.out b/testdata/language-features/section/section01.out
index d99e803e..a06769e3 100644
--- a/testdata/language-features/section/section01.out
+++ b/testdata/language-features/section/section01.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ desugared source code 2------------ desugared source code
3(!@!) = \(_ :: _) (_ :: _) -> _rhs () 3(!@!) = _lhs (!@!) \(_ :: _) (_ :: _) -> _rhs ()
4 4
5value1 = \(a :: _) -> _rhs \(b :: _) -> a !@! b 5value1 = _lhs value1 \(a :: _) -> _rhs \(b :: _) -> a !@! b
6 6
7value2 = \(a :: _) -> _rhs \(b :: _) -> b !@! a 7value2 = _lhs value2 \(a :: _) -> _rhs \(b :: _) -> b !@! a
8------------ core code 8------------ core code
9!@! :: forall a b . a -> b -> () 9!@! :: forall a b . a -> b -> ()
10!@! = \_ _ _ _ -> _rhs () 10!@! = \_ _ _ _ -> _rhs ()