summaryrefslogtreecommitdiff
path: root/testdata/language-features
diff options
context:
space:
mode:
Diffstat (limited to 'testdata/language-features')
-rw-r--r--testdata/language-features/adt/adt02.reject.out86
-rw-r--r--testdata/language-features/adt/adt03.reject.out9
-rw-r--r--testdata/language-features/adt/adt04.reject.out9
-rw-r--r--testdata/language-features/adt/gadt01.reject.out9
-rw-r--r--testdata/language-features/adt/gadt02.reject.out6
-rw-r--r--testdata/language-features/adt/gadt03.reject.out31
-rw-r--r--testdata/language-features/adt/gadt04.reject.out43
-rw-r--r--testdata/language-features/as-pattern/as-pattern02.reject.out6
-rw-r--r--testdata/language-features/basic-list/list01.out4
-rw-r--r--testdata/language-features/basic-list/list02.out4
-rw-r--r--testdata/language-features/basic-list/list03.reject.out6
-rw-r--r--testdata/language-features/basic-list/list04.reject.out6
-rw-r--r--testdata/language-features/basic-list/list05.reject.out7
-rw-r--r--testdata/language-features/basic-list/list06.reject.out6
-rw-r--r--testdata/language-features/basic-list/list07.reject.out159
-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/list10.reject.out141
-rw-r--r--testdata/language-features/basic-list/list11.out2
-rw-r--r--testdata/language-features/basic-list/list12.out2
-rw-r--r--testdata/language-features/basic-list/list13.out2
-rw-r--r--testdata/language-features/basic-list/list14.reject.out86
-rw-r--r--testdata/language-features/basic-list/list15.reject.out116
-rw-r--r--testdata/language-features/basic-list/list16.reject.out50
-rw-r--r--testdata/language-features/basic-list/listcomp01.out2
-rw-r--r--testdata/language-features/basic-list/listcomp02.out3
-rw-r--r--testdata/language-features/basic-list/listcomp03.out2
-rw-r--r--testdata/language-features/basic-list/listcomp04.out3
-rw-r--r--testdata/language-features/basic-list/listcomp05.out2
-rw-r--r--testdata/language-features/basic-list/listcomp06.out3
-rw-r--r--testdata/language-features/basic-list/listcomp07.out4
-rw-r--r--testdata/language-features/basic-list/listcomp08.reject.out84
-rw-r--r--testdata/language-features/basic-list/listcomp09.out2
-rw-r--r--testdata/language-features/basic-values/bool01.out3
-rw-r--r--testdata/language-features/basic-values/case01.out7
-rw-r--r--testdata/language-features/basic-values/case02.out3
-rw-r--r--testdata/language-features/basic-values/case03.reject.out181
-rw-r--r--testdata/language-features/basic-values/case04.reject.out57
-rw-r--r--testdata/language-features/basic-values/case05.out2
-rw-r--r--testdata/language-features/basic-values/case06.out2
-rw-r--r--testdata/language-features/basic-values/data01.out19
-rw-r--r--testdata/language-features/basic-values/data02.reject.out6
-rw-r--r--testdata/language-features/basic-values/data03.reject.out6
-rw-r--r--testdata/language-features/basic-values/def01.out4
-rw-r--r--testdata/language-features/basic-values/def02.reject.out6
-rw-r--r--testdata/language-features/basic-values/def03.out2
-rw-r--r--testdata/language-features/basic-values/def04.out3
-rw-r--r--testdata/language-features/basic-values/def05.reject.out5
-rw-r--r--testdata/language-features/basic-values/def06.reject.out5
-rw-r--r--testdata/language-features/basic-values/def07.reject.out17
-rw-r--r--testdata/language-features/basic-values/deforder01.out3
-rw-r--r--testdata/language-features/basic-values/deforder02.out3
-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.out5
-rw-r--r--testdata/language-features/basic-values/fixity02.out21
-rw-r--r--testdata/language-features/basic-values/if01.out3
-rw-r--r--testdata/language-features/basic-values/if03.reject.out40
-rw-r--r--testdata/language-features/basic-values/if04.reject.out58
-rw-r--r--testdata/language-features/basic-values/indentation01.out3
-rw-r--r--testdata/language-features/basic-values/indentation02.out3
-rw-r--r--testdata/language-features/basic-values/indentation03.reject.out6
-rw-r--r--testdata/language-features/basic-values/indentation04.reject.out6
-rw-r--r--testdata/language-features/basic-values/infix01.out3
-rw-r--r--testdata/language-features/basic-values/infix02.out3
-rw-r--r--testdata/language-features/basic-values/infix03.out8
-rw-r--r--testdata/language-features/basic-values/infix04.reject.out6
-rw-r--r--testdata/language-features/basic-values/lambda01.out5
-rw-r--r--testdata/language-features/basic-values/lambda02.reject.out6
-rw-r--r--testdata/language-features/basic-values/lambda03.out3
-rw-r--r--testdata/language-features/basic-values/let01.out6
-rw-r--r--testdata/language-features/basic-values/let02.out2
-rw-r--r--testdata/language-features/basic-values/literal01.out10
-rw-r--r--testdata/language-features/basic-values/operator01.out5
-rw-r--r--testdata/language-features/basic-values/operator02.reject.out15
-rw-r--r--testdata/language-features/basic-values/operator03.reject.out6
-rw-r--r--testdata/language-features/basic-values/operator04.reject.out6
-rw-r--r--testdata/language-features/basic-values/operator05.out2
-rw-r--r--testdata/language-features/basic-values/operator06.out2
-rw-r--r--testdata/language-features/basic-values/redefine01.reject.out15
-rw-r--r--testdata/language-features/basic-values/redefine02.reject.out6
-rw-r--r--testdata/language-features/basic-values/redefine03.reject.out5
-rw-r--r--testdata/language-features/basic-values/shadowing01.out2
-rw-r--r--testdata/language-features/basic-values/shadowing02.out4
-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.out4
-rw-r--r--testdata/language-features/basic-values/typesig01.out3
-rw-r--r--testdata/language-features/basic-values/typesig02.out3
-rw-r--r--testdata/language-features/basic-values/typesig03.out3
-rw-r--r--testdata/language-features/basic-values/typesig04.out3
-rw-r--r--testdata/language-features/basic-values/typesig05.out7
-rw-r--r--testdata/language-features/basic-values/typesig06.out5
-rw-r--r--testdata/language-features/basic-values/typesig07.out7
-rw-r--r--testdata/language-features/basic-values/typesig08.reject.out6
-rw-r--r--testdata/language-features/basic-values/typesig09.reject.out6
-rw-r--r--testdata/language-features/basic-values/typesyn01.out2
-rw-r--r--testdata/language-features/basic-values/typesyn02.out3
-rw-r--r--testdata/language-features/basic-values/typesyn03.reject.out12
-rw-r--r--testdata/language-features/basic-values/typesyn04.reject.out12
-rw-r--r--testdata/language-features/basic-values/where01.out12
-rw-r--r--testdata/language-features/basic-values/where02.reject.out6
-rw-r--r--testdata/language-features/basic-values/where03.reject.out6
-rw-r--r--testdata/language-features/basic-values/where04.out4
-rw-r--r--testdata/language-features/basic-values/where05.out5
-rw-r--r--testdata/language-features/basic-values/where06.reject.out5
-rw-r--r--testdata/language-features/basic-values/wildcard01.out2
-rw-r--r--testdata/language-features/comment/comment05.reject.out6
-rw-r--r--testdata/language-features/guard/guard01.out2
-rw-r--r--testdata/language-features/guard/guard02.reject.out90
-rw-r--r--testdata/language-features/guard/guard03.out2
-rw-r--r--testdata/language-features/guard/guard04.out2
-rw-r--r--testdata/language-features/guard/guard05.reject.out54
-rw-r--r--testdata/language-features/guard/guard06.out2
-rw-r--r--testdata/language-features/guard/guard07.out2
-rw-r--r--testdata/language-features/guard/guard08.out2
-rw-r--r--testdata/language-features/guard/guard09.out2
-rw-r--r--testdata/language-features/guard/guard10.reject.out6
-rw-r--r--testdata/language-features/guard/guard11.out2
-rw-r--r--testdata/language-features/guard/guard12.reject.out100
-rw-r--r--testdata/language-features/guard/guard13.out2
-rw-r--r--testdata/language-features/guard/guard14.out2
-rw-r--r--testdata/language-features/guard/guard15.out2
-rw-r--r--testdata/language-features/guard/guard16.out2
-rw-r--r--testdata/language-features/module/Hello01.out3
-rw-r--r--testdata/language-features/module/ModulePackage/SubModule01.out2
-rw-r--r--testdata/language-features/module/Moduledef02.reject.out2
-rw-r--r--testdata/language-features/module/Moduledef03.reject.out2
-rw-r--r--testdata/language-features/module/Moduledef04.reject.out2
-rw-r--r--testdata/language-features/module/Moduledef05.reject.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/Moduledef11.reject.out2
-rw-r--r--testdata/language-features/module/Moduledef12.reject.out2
-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/import02.reject.out6
-rw-r--r--testdata/language-features/module/import03.reject.out6
-rw-r--r--testdata/language-features/module/import04.reject.out9
-rw-r--r--testdata/language-features/module/import05.out2
-rw-r--r--testdata/language-features/module/import06.out3
-rw-r--r--testdata/language-features/module/import07.out3
-rw-r--r--testdata/language-features/module/import08.out5
-rw-r--r--testdata/language-features/module/import09.out2
-rw-r--r--testdata/language-features/module/import10.reject.out9
-rw-r--r--testdata/language-features/module/import11.reject.out9
-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.out5
-rw-r--r--testdata/language-features/pragma/pragma05.reject.out2
-rw-r--r--testdata/language-features/pragma/pragma06.reject.out2
-rw-r--r--testdata/language-features/recursion/simplerec01.out2
-rw-r--r--testdata/language-features/section/section01.out4
159 files changed, 1965 insertions, 47 deletions
diff --git a/testdata/language-features/adt/adt02.reject.out b/testdata/language-features/adt/adt02.reject.out
index f2fa47dd..97a3c5f1 100644
--- a/testdata/language-features/adt/adt02.reject.out
+++ b/testdata/language-features/adt/adt02.reject.out
@@ -4,3 +4,89 @@ with
4'Int 4'Int
5 5
6in 6in
7
8------------ trace
9'Data3 :: Type
10Data3 :: 'Bool -> 'Char -> 'Bool->'Data3
11Data31 :: 'Int -> 'String -> 'Int->'Data3
12'Data3Case :: (b : 'Data3->Type) -> (c:'Bool -> d:'Char -> e:'Bool -> b (Data3 c d e)) -> (g:'Int -> h:'String -> i:'Int -> b (Data31 g h i)) -> k:'Data3 -> b k
13match'Data3 :: (b : Type->Type) -> b 'Data3 -> d:Type -> b d -> b d
14infer: \(a : _:'Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (e : _:'Type) -> labelend e) (\_:'Type _:'Type (h : _:'Type) -> labelend h) a
15infer: \(a : _:'Type : Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (e : _:'Type) -> labelend e) (\_:'Type _:'Type (h : _:'Type) -> labelend h) a
16infer: \(b : (\a:'Type -> a) : Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
17focus: \(b : (\a:Type -> a) : Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
18infer: \(b : \a->a : Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
19focus: \(b : \a->a : Type) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
20focus: \(b : (\a -> a:Type)) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
21focus: \(c : (\a b:'Unit -> a)) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (g : _:'Type) -> labelend g) (\_:'Type _:'Type (j : _:'Type) -> labelend j) c
22focus: \(b : \a->a) -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
23focus: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
24infer: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
25infer: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
26infer: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
27infer: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
28infer: \a b:a -> 'Data3Case (\_:'Type -> _:'Type) (\_:'Type _:'Type (f : _:'Type) -> labelend f) (\_:'Type _:'Type (i : _:'Type) -> labelend i) b
29focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\_:'Type -> _:'Type) (\_:'Type _:'Type (j : _:'Type) -> labelend j) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
30check: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) ((\_:'Type -> _:'Type) :: 'Data3->Type) (\_:'Type _:'Type (i : _:'Type) -> labelend i) (\_:'Type _:'Type (l : _:'Type) -> labelend l) b
31check: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> _:'Type :: Type) (\_:'Type _:'Type (j : _:'Type) -> labelend j) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
32infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> _:'Type : Type) (\_:'Type _:'Type (j : _:'Type) -> labelend j) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
33infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> (\h:'Type -> h) : Type) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
34focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> (\h:Type -> h) : Type) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
35infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> \h->h : Type) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
36focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> \h->h : Type) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
37focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 h -> h:Type) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
38focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 h i:'Unit -> h) (\_:'Type _:'Type (l : _:'Type) -> labelend l) (\_:'Type _:'Type (o : _:'Type) -> labelend o) b
39focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g:'Data3 -> \h->h) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
40focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g h:'Data3 -> g) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
41focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'Data3Case c d e f) (\g h:Type -> g) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
42focus: \a b:a -> (\c -> (\d:Type e:Type f:Type g:Type -> 'Data3Case d e f g) (\h:Type -> c)) (\_:'Type _:'Type (k : _:'Type) -> labelend k) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
43focus: \a b:a -> (\c d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\_:'Type _:'Type (j : _:'Type) -> labelend j) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
44focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\_:'Type _:'Type (j : _:'Type) -> labelend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
45check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) ((\_:'Type _:'Type (j : _:'Type) -> labelend j) :: 'Bool -> 'Char -> 'Bool->c)) (\_:'Type _:'Type (j : _:'Type) -> labelend j) b
46check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool -> (\_:'Type (j : _:'Type) -> labelend j) :: 'Char -> 'Bool->c)) (\_:'Type _:'Type (k : _:'Type) -> labelend k) b
47check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char -> (\(j : _:'Type) -> labelend j) :: 'Bool->c)) (\_:'Type _:'Type (l : _:'Type) -> labelend l) b
48check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labelend j :: c)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
49check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labEnd j::c)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
50infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labEnd j:c)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
51focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labEnd j:c)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
52focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labEnd \(k : c~'Bool)->j)) (\_:'Type _:'Type (n : _:'Type) -> labelend n) b
53focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool -> labEnd (\c:='Bool -> j))) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
54focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool c:='Bool -> labEnd j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
55focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char j:'Bool c:='Bool -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
56focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char c:='Bool j:'Bool -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
57focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool i:'Char c:='Bool j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
58focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool c:='Bool i:'Char j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
59focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\h:'Bool c:='Bool i:Type j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
60focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\c:='Bool h:'Bool i:Type j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
61focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> c) d e f) (\c:='Bool h:Type i:Type j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
62focus: \a b:a -> (\c c:='Bool -> (\d:Type e:Type f:Type -> 'Data3Case (\g:Type -> 'Bool) d e f) (\h:Type i:Type j:Type -> labend j)) (\_:'Type _:'Type (m : _:'Type) -> labelend m) b
63focus: \a b:a -> (\c c:='Bool d:Type e:Type -> 'Data3Case (\f:Type -> 'Bool) (\g:Type h:Type i:Type -> labend i) d e) (\_:'Type _:'Type (l : _:'Type) -> labelend l) b
64focus: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\_:'Type _:'Type (k : _:'Type) -> labelend k) b
65check: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) ((\_:'Type _:'Type (k : _:'Type) -> labelend k) :: 'Int -> 'String -> 'Int->'Bool) b
66check: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int -> (\_:'Type (k : _:'Type) -> labelend k) :: 'String -> 'Int->'Bool) b
67check: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String -> (\(k : _:'Type) -> labelend k) :: 'Int->'Bool) b
68check: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String k:'Int -> labelend k :: 'Bool) b
69check: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String k:'Int -> labEnd k::'Bool) b
70infer: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String k:'Int -> labEnd k:'Bool) b
71focus: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String k:'Int -> labEnd k:'Bool) b
72focus: \a b:a -> (\c:Type d:Type -> 'Data3Case (\e:Type -> 'Bool) (\f:Type g:Type h:Type -> labend h) c d) (\i:'Int j:'String k:'Int -> labEnd \(l : 'Empty "can not unify\n\ESC[32m'Bool\ESC[m\nwith\n\ESC[32m'Int\ESC[m\n")->k) b
73!type error: can not unify
74'Bool
75with
76'Int
77
78in
79
80------------ tooltips
81testdata/language-features/adt/adt02.reject.lc 2:6-2:11 Type
82testdata/language-features/adt/adt02.reject.lc 2:6-5:25 Type
83testdata/language-features/adt/adt02.reject.lc 2:6-7:11 Type
84testdata/language-features/adt/adt02.reject.lc 2:6-10:20 Type
85testdata/language-features/adt/adt02.reject.lc 3:5-3:10 Bool -> Char -> Bool->Data3 | Data3 | Type
86testdata/language-features/adt/adt02.reject.lc 3:21-3:25 Type
87testdata/language-features/adt/adt02.reject.lc 4:21-4:25 Type
88testdata/language-features/adt/adt02.reject.lc 5:21-5:25 Type
89testdata/language-features/adt/adt02.reject.lc 7:5-7:11 Data3 | Int -> String -> Int->Data3 | Type
90testdata/language-features/adt/adt02.reject.lc 8:17-8:20 Type
91testdata/language-features/adt/adt02.reject.lc 9:17-9:23 Type
92testdata/language-features/adt/adt02.reject.lc 10:17-10:20 Type
diff --git a/testdata/language-features/adt/adt03.reject.out b/testdata/language-features/adt/adt03.reject.out
index cd56212b..1c9583cc 100644
--- a/testdata/language-features/adt/adt03.reject.out
+++ b/testdata/language-features/adt/adt03.reject.out
@@ -1,3 +1,10 @@
1can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20: 1can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20:
2data Data3 = Data3 a b c 2data Data3 = Data3 a b c
3 ^ \ No newline at end of file 3 ^
4------------ trace
5'Data3 :: Type
6infer: a -> b -> c->'Data3 : Type
7infer: a:Type -> (b -> c->'Data3 : 'Type) : Type
8!can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20
9------------ tooltips
10testdata/language-features/adt/adt03.reject.lc 2:6-2:11 Type
diff --git a/testdata/language-features/adt/adt04.reject.out b/testdata/language-features/adt/adt04.reject.out
index cdcbef0a..76f0f5be 100644
--- a/testdata/language-features/adt/adt04.reject.out
+++ b/testdata/language-features/adt/adt04.reject.out
@@ -1,3 +1,10 @@
1can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27: 1can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27:
2data Data3 = Data3 { x :: a , y :: b , z :: c } 2data Data3 = Data3 { x :: a , y :: b , z :: c }
3 ^ \ No newline at end of file 3 ^
4------------ trace
5'Data3 :: Type
6infer: a -> b -> c->'Data3 : Type
7infer: a:Type -> (b -> c->'Data3 : 'Type) : Type
8!can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27
9------------ tooltips
10testdata/language-features/adt/adt04.reject.lc 2:6-2:11 Type
diff --git a/testdata/language-features/adt/gadt01.reject.out b/testdata/language-features/adt/gadt01.reject.out
index 8c5cc2ae..a993010b 100644
--- a/testdata/language-features/adt/gadt01.reject.out
+++ b/testdata/language-features/adt/gadt01.reject.out
@@ -1 +1,8 @@
1illegal data definition (parameters are not uniform) \ No newline at end of file 1illegal data definition (parameters are not uniform)
2------------ trace
3'M3 :: Type -> 'String->Type
4!illegal data definition (parameters are not uniform)
5------------ tooltips
6testdata/language-features/adt/gadt01.reject.lc 5:6-5:8 Type -> String->Type
7testdata/language-features/adt/gadt01.reject.lc 5:15-5:19 Type
8testdata/language-features/adt/gadt01.reject.lc 5:27-5:33 Type
diff --git a/testdata/language-features/adt/gadt02.reject.out b/testdata/language-features/adt/gadt02.reject.out
index 9c00b1fd..f13ebe8e 100644
--- a/testdata/language-features/adt/gadt02.reject.out
+++ b/testdata/language-features/adt/gadt02.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/adt/gadt02.reject.lc:2:9: 1testdata/language-features/adt/gadt02.reject.lc:2:9:
2unexpected 'T' 2unexpected 'T'
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/adt/gadt02.reject.lc:2:9:
6unexpected 'T'
7expecting end of input
diff --git a/testdata/language-features/adt/gadt03.reject.out b/testdata/language-features/adt/gadt03.reject.out
index 8c5cc2ae..82c15741 100644
--- a/testdata/language-features/adt/gadt03.reject.out
+++ b/testdata/language-features/adt/gadt03.reject.out
@@ -1 +1,30 @@
1illegal data definition (parameters are not uniform) \ No newline at end of file 1illegal data definition (parameters are not uniform)
2------------ trace
3'M2 :: Type -> 'String->Type
4Value2 :: {a} -> a -> {c:'String} -> 'M2 a c
5'M2Case :: {a} -> (d : b:'String -> 'M2 a b -> Type) -> (e:a -> {f:'String} -> d f (Value2 e f)) -> {h:'String} -> (i : 'M2 a h) -> d h i
6match'M2 :: (b : Type->Type) -> (c:Type -> d:'String -> b ('M2 c d)) -> f:Type -> b f -> b f
7'M3 :: Type -> 'String->Type
8!illegal data definition (parameters are not uniform)
9------------ tooltips
10testdata/language-features/adt/gadt03.reject.lc 2:6-2:8 Type | Type -> String->Type
11testdata/language-features/adt/gadt03.reject.lc 2:6-3:35 Type
12testdata/language-features/adt/gadt03.reject.lc 2:15-2:19 Type
13testdata/language-features/adt/gadt03.reject.lc 2:24-2:30 Type
14testdata/language-features/adt/gadt03.reject.lc 2:24-2:38 Type
15testdata/language-features/adt/gadt03.reject.lc 2:34-2:38 Type
16testdata/language-features/adt/gadt03.reject.lc 3:3-3:9 M2 V3 V0 | {a} -> a -> {c:String} -> M2 a c
17testdata/language-features/adt/gadt03.reject.lc 3:3-3:35 Type
18testdata/language-features/adt/gadt03.reject.lc 3:13-3:14 Type
19testdata/language-features/adt/gadt03.reject.lc 3:13-3:35 Type
20testdata/language-features/adt/gadt03.reject.lc 3:18-3:35 Type
21testdata/language-features/adt/gadt03.reject.lc 3:29-3:31 Type -> String->Type
22testdata/language-features/adt/gadt03.reject.lc 3:29-3:33 String->Type
23testdata/language-features/adt/gadt03.reject.lc 3:29-3:35 Type
24testdata/language-features/adt/gadt03.reject.lc 3:32-3:33 Type
25testdata/language-features/adt/gadt03.reject.lc 3:34-3:35 String | V1
26testdata/language-features/adt/gadt03.reject.lc 5:6-5:8 Type -> String->Type
27testdata/language-features/adt/gadt03.reject.lc 5:15-5:19 Type
28testdata/language-features/adt/gadt03.reject.lc 5:24-5:30 Type
29testdata/language-features/adt/gadt03.reject.lc 5:24-5:38 Type
30testdata/language-features/adt/gadt03.reject.lc 5:34-5:38 Type
diff --git a/testdata/language-features/adt/gadt04.reject.out b/testdata/language-features/adt/gadt04.reject.out
index 365889c8..61bd1a2e 100644
--- a/testdata/language-features/adt/gadt04.reject.out
+++ b/testdata/language-features/adt/gadt04.reject.out
@@ -3,4 +3,45 @@ already defined Value at testdata/language-features/adt/gadt04.reject.lc:6:3:
3 ^^^^^ 3 ^^^^^
4 and at testdata/language-features/adt/gadt04.reject.lc:3:3: 4 and at testdata/language-features/adt/gadt04.reject.lc:3:3:
5 Value :: a -> forall m . M a m 5 Value :: a -> forall m . M a m
6 ^^^^^ \ No newline at end of file 6 ^^^^^
7------------ trace
8'M :: Type -> 'String->Type
9Value :: {a} -> a -> {c:'String} -> 'M a c
10'MCase :: (d : a:Type -> b:'String -> 'M a b -> Type) -> ({e} -> f:e -> {g:'String} -> d e g (Value e f g)) -> {i} -> {j:'String} -> (k : 'M i j) -> d i j k
11match'M :: (b : Type->Type) -> (c:Type -> d:'String -> b ('M c d)) -> f:Type -> b f -> b f
12'M2 :: Type -> 'String->Type
13Value :: {a} -> a -> {c:'String} -> 'M2 a c
14!already defined Value at testdata/language-features/adt/gadt04.reject.lc:6:3
15 and at testdata/language-features/adt/gadt04.reject.lc:3:3
16------------ tooltips
17testdata/language-features/adt/gadt04.reject.lc 2:6-2:7 Type | Type -> String->Type
18testdata/language-features/adt/gadt04.reject.lc 2:6-3:33 Type
19testdata/language-features/adt/gadt04.reject.lc 2:11-2:15 Type
20testdata/language-features/adt/gadt04.reject.lc 2:19-2:25 Type
21testdata/language-features/adt/gadt04.reject.lc 2:19-2:33 Type
22testdata/language-features/adt/gadt04.reject.lc 2:29-2:33 Type
23testdata/language-features/adt/gadt04.reject.lc 3:3-3:8 M V2 V0 | {a} -> a -> {c:String} -> M a c
24testdata/language-features/adt/gadt04.reject.lc 3:3-3:33 Type
25testdata/language-features/adt/gadt04.reject.lc 3:12-3:13 V1
26testdata/language-features/adt/gadt04.reject.lc 3:12-3:33 Type
27testdata/language-features/adt/gadt04.reject.lc 3:17-3:33 Type
28testdata/language-features/adt/gadt04.reject.lc 3:28-3:29 Type -> String->Type
29testdata/language-features/adt/gadt04.reject.lc 3:28-3:31 String->Type
30testdata/language-features/adt/gadt04.reject.lc 3:28-3:33 Type
31testdata/language-features/adt/gadt04.reject.lc 3:30-3:31 Type
32testdata/language-features/adt/gadt04.reject.lc 3:30-3:33 M V2 V0 -> Type
33testdata/language-features/adt/gadt04.reject.lc 3:32-3:33 String | V1
34testdata/language-features/adt/gadt04.reject.lc 5:6-5:8 Type -> String->Type
35testdata/language-features/adt/gadt04.reject.lc 5:12-5:16 Type
36testdata/language-features/adt/gadt04.reject.lc 5:20-5:26 Type
37testdata/language-features/adt/gadt04.reject.lc 5:20-5:34 Type
38testdata/language-features/adt/gadt04.reject.lc 5:30-5:34 Type
39testdata/language-features/adt/gadt04.reject.lc 6:3-6:8 {a} -> a -> {c:String} -> M2 a c
40testdata/language-features/adt/gadt04.reject.lc 6:12-6:13 V1
41testdata/language-features/adt/gadt04.reject.lc 6:12-6:34 Type
42testdata/language-features/adt/gadt04.reject.lc 6:17-6:34 Type
43testdata/language-features/adt/gadt04.reject.lc 6:28-6:30 Type -> String->Type
44testdata/language-features/adt/gadt04.reject.lc 6:28-6:32 String->Type
45testdata/language-features/adt/gadt04.reject.lc 6:28-6:34 Type
46testdata/language-features/adt/gadt04.reject.lc 6:31-6:32 Type
47testdata/language-features/adt/gadt04.reject.lc 6:33-6:34 V1
diff --git a/testdata/language-features/as-pattern/as-pattern02.reject.out b/testdata/language-features/as-pattern/as-pattern02.reject.out
index 4d60dbcb..6e20413d 100644
--- a/testdata/language-features/as-pattern/as-pattern02.reject.out
+++ b/testdata/language-features/as-pattern/as-pattern02.reject.out
@@ -1,3 +1,9 @@
1multiple pattern vars: 1multiple pattern vars:
2x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:6-2:7 2x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:6-2:7
3x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:3-2:4 3x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:3-2:4
4
5------------ trace
6!multiple pattern vars:
7x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:6-2:7
8x is defined at testdata/language-features/as-pattern/as-pattern02.reject.lc 2:3-2:4
9
diff --git a/testdata/language-features/basic-list/list01.out b/testdata/language-features/basic-list/list01.out
index 6ca83aa0..965841b3 100644
--- a/testdata/language-features/basic-list/list01.out
+++ b/testdata/language-features/basic-list/list01.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> 'List a
4value2 :: {a} -> {b : 'Num a} -> 'List a
5value3 :: 'List 'Char
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-list/list01.lc 1:1-1:7 {a} -> List a 7testdata/language-features/basic-list/list01.lc 1:1-1:7 {a} -> List a
4testdata/language-features/basic-list/list01.lc 1:10-1:12 {a} -> List a 8testdata/language-features/basic-list/list01.lc 1:10-1:12 {a} -> List a
diff --git a/testdata/language-features/basic-list/list02.out b/testdata/language-features/basic-list/list02.out
index 078475d7..5ebde853 100644
--- a/testdata/language-features/basic-list/list02.out
+++ b/testdata/language-features/basic-list/list02.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> 'List a
4value2 :: {a} -> {b : 'Num a} -> 'List a
5value3 :: 'List 'Char
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-list/list02.lc 1:1-1:7 {a} -> List a 7testdata/language-features/basic-list/list02.lc 1:1-1:7 {a} -> List a
4testdata/language-features/basic-list/list02.lc 1:10-2:4 {a} -> List a 8testdata/language-features/basic-list/list02.lc 1:10-2:4 {a} -> List a
diff --git a/testdata/language-features/basic-list/list03.reject.out b/testdata/language-features/basic-list/list03.reject.out
index d5a33d36..f5ad67d8 100644
--- a/testdata/language-features/basic-list/list03.reject.out
+++ b/testdata/language-features/basic-list/list03.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-list/list03.reject.lc:2:1: 1testdata/language-features/basic-list/list03.reject.lc:2:1:
2expecting expression 2expecting expression
3wrong indentation \ No newline at end of file 3wrong indentation
4------------ trace
5!testdata/language-features/basic-list/list03.reject.lc:2:1:
6expecting expression
7wrong indentation
diff --git a/testdata/language-features/basic-list/list04.reject.out b/testdata/language-features/basic-list/list04.reject.out
index 6f169a95..02ee2348 100644
--- a/testdata/language-features/basic-list/list04.reject.out
+++ b/testdata/language-features/basic-list/list04.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-list/list04.reject.lc:2:1: 1testdata/language-features/basic-list/list04.reject.lc:2:1:
2expecting expression 2expecting expression
3wrong indentation \ No newline at end of file 3wrong indentation
4------------ trace
5!testdata/language-features/basic-list/list04.reject.lc:2:1:
6expecting expression
7wrong indentation
diff --git a/testdata/language-features/basic-list/list05.reject.out b/testdata/language-features/basic-list/list05.reject.out
index 821b377d..4a4087cc 100644
--- a/testdata/language-features/basic-list/list05.reject.out
+++ b/testdata/language-features/basic-list/list05.reject.out
@@ -1,4 +1,9 @@
1testdata/language-features/basic-list/list05.reject.lc:2:1: 1testdata/language-features/basic-list/list05.reject.lc:2:1:
2unexpected end of input 2unexpected end of input
3expecting expression 3expecting expression
4wrong indentation \ No newline at end of file 4wrong indentation
5------------ trace
6!testdata/language-features/basic-list/list05.reject.lc:2:1:
7unexpected end of input
8expecting expression
9wrong indentation
diff --git a/testdata/language-features/basic-list/list06.reject.out b/testdata/language-features/basic-list/list06.reject.out
index 7bcc0c09..47f8f104 100644
--- a/testdata/language-features/basic-list/list06.reject.out
+++ b/testdata/language-features/basic-list/list06.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-list/list06.reject.lc:1:10: 1testdata/language-features/basic-list/list06.reject.lc:1:10:
2unexpected ',' 2unexpected ','
3expecting expression \ No newline at end of file 3expecting expression
4------------ trace
5!testdata/language-features/basic-list/list06.reject.lc:1:10:
6unexpected ','
7expecting expression
diff --git a/testdata/language-features/basic-list/list07.reject.out b/testdata/language-features/basic-list/list07.reject.out
index 330be399..7a29dae2 100644
--- a/testdata/language-features/basic-list/list07.reject.out
+++ b/testdata/language-features/basic-list/list07.reject.out
@@ -4,3 +4,162 @@ with
4'Char 4'Char
5 5
6in builtin Nil 6in builtin Nil
7
8------------ trace
9infer: labelend (Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
10infer: labEnd (Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
11infer: labEnd (Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
12infer: labEnd (Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
13focus: labEnd (Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
14focus: labEnd (Cons {_ : _:'Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
15check: labEnd (Cons {(_ : _:'Type) :: Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
16infer: labEnd (Cons {(_ : _:'Type) : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
17infer: labEnd (Cons {\(a : _:'Type)->a : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
18infer: labEnd (Cons {\(b : (\a:'Type -> a))->b : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
19focus: labEnd (Cons {\(b : (\a:Type -> a))->b : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
20infer: labEnd (Cons {\(b : \a->a)->b : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
21focus: labEnd (Cons {\(b : \a->a)->b : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
22focus: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
23infer: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
24focus: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
25focus: labEnd (Cons {\a b:a -> b:Type} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
26focus: labEnd (Cons {\a b:a -> \(c : Type~a)->b} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
27focus: labEnd (Cons {\a b:a a:=Type -> b} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
28focus: labEnd (Cons {\a a:=Type -> \b->b} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
29focus: labEnd (Cons {\a->a} (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
30focus: labEnd ((\a -> Cons {a}) (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
31focus: labEnd (\a->Cons (fromInt 1) (Cons 1.2 (Cons 'a' Nil)))
32focus: labEnd ((\a -> Cons (fromInt 1)) (Cons 1.2 (Cons 'a' Nil)))
33check: labEnd ((\a -> Cons (fromInt 1 :: a)) (Cons 1.2 (Cons 'a' Nil)))
34infer: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
35focus: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
36focus: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
37focus: labEnd ((\a -> Cons (fromInt {_ : _:'Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
38check: labEnd ((\a -> Cons (fromInt {(_ : _:'Type) :: Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
39infer: labEnd ((\a -> Cons (fromInt {(_ : _:'Type) : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
40infer: labEnd ((\a -> Cons (fromInt {\(b : _:'Type)->b : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
41infer: labEnd ((\a -> Cons (fromInt {\(c : (\b:'Type -> b))->c : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
42focus: labEnd ((\a -> Cons (fromInt {\(c : (\b:Type -> b))->c : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
43infer: labEnd ((\a -> Cons (fromInt {\(c : \b->b)->c : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
44focus: labEnd ((\a -> Cons (fromInt {\(c : \b->b)->c : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
45focus: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
46infer: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
47focus: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
48focus: labEnd ((\a -> Cons (fromInt {\b c:b -> c:Type} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
49focus: labEnd ((\a -> Cons (fromInt {\b c:b -> \(d : Type~b)->c} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
50focus: labEnd ((\a -> Cons (fromInt {\b c:b b:=Type -> c} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
51focus: labEnd ((\a -> Cons (fromInt {\b b:=Type -> \c->c} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
52focus: labEnd ((\a -> Cons (fromInt {\b->b} 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
53focus: labEnd ((\a -> Cons ((\b -> fromInt {b}) 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
54focus: labEnd ((\a -> Cons ((\b -> fromInt b) 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
55focus: labEnd ((\a -> Cons ((\b -> fromInt b 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
56focus: labEnd ((\a -> Cons ((\b -> fromInt b {_ : _:'Type} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
57check: labEnd ((\a -> Cons ((\b -> fromInt b {(_ : _:'Type) :: 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
58infer: labEnd ((\a -> Cons ((\b -> fromInt b {(_ : _:'Type) : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
59infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(c : _:'Type)->c : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
60infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : (\c:'Type -> c))->d : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
61focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : (\c:Type -> c))->d : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
62infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : \c->c)->d : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
63focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : \c->c)->d : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
64focus: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
65infer: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
66focus: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
67focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> d : 'Num b} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
68focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> \(e : 'Num b ~ c)->d} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
69focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> \(c := 'Num b)->d} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
70focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c (c := 'Num b) -> \(d : 'Num b)->d} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
71focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(c : 'Num b)->c} 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
72focus: labEnd ((\a -> Cons ((\b -> (\(c : 'Num b) -> fromInt b {c}) 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
73focus: labEnd ((\a -> Cons ((\b -> (\(c : 'Num b) -> fromInt b c) 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
74focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
75check: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1::'Int) : a)) (Cons 1.2 (Cons 'a' Nil)))
76infer: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1:'Int) : a)) (Cons 1.2 (Cons 'a' Nil)))
77focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1:'Int) : a)) (Cons 1.2 (Cons 'a' Nil)))
78focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c (\d:'Unit -> 1)) : a)) (Cons 1.2 (Cons 'a' Nil)))
79focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
80focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 (Cons 'a' Nil)))
81focus: labEnd ((\a -> Cons (\b (c : 'Num b) -> fromInt b c 1 : a)) (Cons 1.2 (Cons 'a' Nil)))
82focus: labEnd ((\a -> Cons (\b (c : 'Num b) (d : a~b) -> fromInt b c 1)) (Cons 1.2 (Cons 'a' Nil)))
83focus: labEnd ((\a -> Cons (\b (c : 'Num b) b:=a -> fromInt a c 1)) (Cons 1.2 (Cons 'a' Nil)))
84focus: labEnd ((\a -> Cons (\b b:=a (c : 'Num a) -> fromInt a c 1)) (Cons 1.2 (Cons 'a' Nil)))
85focus: labEnd ((\a -> Cons (\(b : 'Num a) -> fromInt a b 1)) (Cons 1.2 (Cons 'a' Nil)))
86focus: labEnd ((\a (b : 'Num a) -> Cons (fromInt a b 1)) (Cons 1.2 (Cons 'a' Nil)))
87focus: labEnd ((\a (b : 'Num a) -> Cons (fromInt a b 1)) (Cons 1.2 (Cons 'a' Nil)))
88focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil)))
89check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil) :: 'List a))
90infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil) : 'List a))
91infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil) : 'List a))
92focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil) : 'List a))
93focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {_ : _:'Type} 1.2 (Cons 'a' Nil) : 'List a))
94check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {(_ : _:'Type) :: Type} 1.2 (Cons 'a' Nil) : 'List a))
95infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {(_ : _:'Type) : Type} 1.2 (Cons 'a' Nil) : 'List a))
96infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\(c : _:'Type)->c : Type} 1.2 (Cons 'a' Nil) : 'List a))
97infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\(d : (\c:'Type -> c))->d : Type} 1.2 (Cons 'a' Nil) : 'List a))
98focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\(d : (\c:Type -> c))->d : Type} 1.2 (Cons 'a' Nil) : 'List a))
99infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\(d : \c->c)->d : Type} 1.2 (Cons 'a' Nil) : 'List a))
100focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\(d : \c->c)->d : Type} 1.2 (Cons 'a' Nil) : 'List a))
101focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {(\c d:c -> d) : Type} 1.2 (Cons 'a' Nil) : 'List a))
102infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {(\c d:c -> d) : Type} 1.2 (Cons 'a' Nil) : 'List a))
103focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {(\c d:c -> d) : Type} 1.2 (Cons 'a' Nil) : 'List a))
104focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\c d:c -> d:Type} 1.2 (Cons 'a' Nil) : 'List a))
105focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\c d:c -> \(e : Type~c)->d} 1.2 (Cons 'a' Nil) : 'List a))
106focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\c d:c c:=Type -> d} 1.2 (Cons 'a' Nil) : 'List a))
107focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\c c:=Type -> \d->d} 1.2 (Cons 'a' Nil) : 'List a))
108focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons {\c->c} 1.2 (Cons 'a' Nil) : 'List a))
109focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons {c}) 1.2 (Cons 'a' Nil) : 'List a))
110focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\c->Cons 1.2 (Cons 'a' Nil) : 'List a))
111focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons 1.2) (Cons 'a' Nil) : 'List a))
112check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons 1.2::c) (Cons 'a' Nil) : 'List a))
113infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons 1.2:c) (Cons 'a' Nil) : 'List a))
114focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons 1.2:c) (Cons 'a' Nil) : 'List a))
115focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons \(d : c~'Float)->1.2) (Cons 'a' Nil) : 'List a))
116focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c -> Cons (\c:='Float -> 1.2)) (Cons 'a' Nil) : 'List a))
117focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c c:='Float -> Cons 1.2) (Cons 'a' Nil) : 'List a))
118focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\c c:='Float -> Cons 1.2) (Cons 'a' Nil) : 'List a))
119focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 (Cons 'a' Nil) : 'List a))
120focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\(c : a~'Float) -> Cons 1.2) (Cons 'a' Nil)))
121focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) ((\a:='Float -> Cons 1.2) (Cons 'a' Nil)))
122focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil)))
123check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil :: 'List 'Float)))
124infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil : 'List 'Float)))
125infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil : 'List 'Float)))
126focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil : 'List 'Float)))
127focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {_ : _:'Type} 'a' Nil : 'List 'Float)))
128check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {(_ : _:'Type) :: Type} 'a' Nil : 'List 'Float)))
129infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {(_ : _:'Type) : Type} 'a' Nil : 'List 'Float)))
130infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\(c : _:'Type)->c : Type} 'a' Nil : 'List 'Float)))
131infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\(d : (\c:'Type -> c))->d : Type} 'a' Nil : 'List 'Float)))
132focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\(d : (\c:Type -> c))->d : Type} 'a' Nil : 'List 'Float)))
133infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\(d : \c->c)->d : Type} 'a' Nil : 'List 'Float)))
134focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\(d : \c->c)->d : Type} 'a' Nil : 'List 'Float)))
135focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {(\c d:c -> d) : Type} 'a' Nil : 'List 'Float)))
136infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {(\c d:c -> d) : Type} 'a' Nil : 'List 'Float)))
137focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {(\c d:c -> d) : Type} 'a' Nil : 'List 'Float)))
138focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\c d:c -> d:Type} 'a' Nil : 'List 'Float)))
139focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\c d:c -> \(e : Type~c)->d} 'a' Nil : 'List 'Float)))
140focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\c d:c c:=Type -> d} 'a' Nil : 'List 'Float)))
141focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\c c:=Type -> \d->d} 'a' Nil : 'List 'Float)))
142focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons {\c->c} 'a' Nil : 'List 'Float)))
143focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons {c}) 'a' Nil : 'List 'Float)))
144focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (\c->Cons 'a' Nil : 'List 'Float)))
145focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons 'a') Nil : 'List 'Float)))
146check: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons 'a'::c) Nil : 'List 'Float)))
147infer: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons 'a':c) Nil : 'List 'Float)))
148focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons 'a':c) Nil : 'List 'Float)))
149focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons \(d : c~'Char)->'a') Nil : 'List 'Float)))
150focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c -> Cons (\c:='Char -> 'a')) Nil : 'List 'Float)))
151focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c c:='Char -> Cons 'a') Nil : 'List 'Float)))
152focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\c c:='Char -> Cons 'a') Nil : 'List 'Float)))
153focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 (Cons 'a' Nil : 'List 'Float)))
154focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (\a:='Float -> Cons 1.2 ((\(c : 'Empty "can not unify\n\ESC[32m'Float\ESC[m\nwith\n\ESC[32m'Char\ESC[m\n") -> Cons 'a') Nil)))
155!type error: can not unify
156'Float
157with
158'Char
159
160in builtin Nil
161
162------------ tooltips
163testdata/language-features/basic-list/list07.reject.lc 1:10-1:11 V1
164testdata/language-features/basic-list/list07.reject.lc 1:12-1:15 Float
165testdata/language-features/basic-list/list07.reject.lc 1:16-1:19 Char
diff --git a/testdata/language-features/basic-list/list08.out b/testdata/language-features/basic-list/list08.out
index 36f905d9..fb69fb70 100644
--- a/testdata/language-features/basic-list/list08.out
+++ b/testdata/language-features/basic-list/list08.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Float
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/list08.lc 1:1-1:6 List Float 5testdata/language-features/basic-list/list08.lc 1:1-1:6 List Float
4testdata/language-features/basic-list/list08.lc 1:9-1:16 List Float 6testdata/language-features/basic-list/list08.lc 1:9-1:16 List Float
diff --git a/testdata/language-features/basic-list/list09.out b/testdata/language-features/basic-list/list09.out
index a64ddd90..4ac018ac 100644
--- a/testdata/language-features/basic-list/list09.out
+++ b/testdata/language-features/basic-list/list09.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Float
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/list09.lc 1:1-1:6 List Float 5testdata/language-features/basic-list/list09.lc 1:1-1:6 List Float
4testdata/language-features/basic-list/list09.lc 1:9-1:16 List Float 6testdata/language-features/basic-list/list09.lc 1:9-1:16 List Float
diff --git a/testdata/language-features/basic-list/list10.reject.out b/testdata/language-features/basic-list/list10.reject.out
index 8f1376a7..6c108119 100644
--- a/testdata/language-features/basic-list/list10.reject.out
+++ b/testdata/language-features/basic-list/list10.reject.out
@@ -4,3 +4,144 @@ with
4'Float 4'Float
5 5
6in builtin Nil 6in builtin Nil
7
8------------ trace
9infer: labelend (Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
10infer: labEnd (Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
11check: labEnd (('List 'Int :: Type) : ??)
12infer: labEnd (('List 'Int : Type) : ??)
13focus: labEnd (('List 'Int : Type) : ??)
14focus: labEnd ((\a:'Unit -> 'List) 'Int : ??)
15focus: labEnd ('List 'Int : ??)
16check: labEnd ('List 'Int::Type : ??)
17infer: labEnd ('List 'Int:Type : ??)
18focus: labEnd ('List 'Int:Type : ??)
19focus: labEnd ('List (\a:'Unit -> 'Int) : ??)
20focus: labEnd ('List 'Int : ??)
21focus: labEnd ('List 'Int : ??)
22check: labEnd (Cons (fromInt 1) (Cons 1.2 Nil) :: 'List 'Int)
23infer: labEnd (Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
24infer: labEnd (Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
25focus: labEnd (Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
26focus: labEnd (Cons {_ : _:'Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
27check: labEnd (Cons {(_ : _:'Type) :: Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
28infer: labEnd (Cons {(_ : _:'Type) : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
29infer: labEnd (Cons {\(a : _:'Type)->a : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
30infer: labEnd (Cons {\(b : (\a:'Type -> a))->b : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
31focus: labEnd (Cons {\(b : (\a:Type -> a))->b : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
32infer: labEnd (Cons {\(b : \a->a)->b : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
33focus: labEnd (Cons {\(b : \a->a)->b : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
34focus: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
35infer: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
36focus: labEnd (Cons {(\a b:a -> b) : Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
37focus: labEnd (Cons {\a b:a -> b:Type} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
38focus: labEnd (Cons {\a b:a -> \(c : Type~a)->b} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
39focus: labEnd (Cons {\a b:a a:=Type -> b} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
40focus: labEnd (Cons {\a a:=Type -> \b->b} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
41focus: labEnd (Cons {\a->a} (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
42focus: labEnd ((\a -> Cons {a}) (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
43focus: labEnd (\a->Cons (fromInt 1) (Cons 1.2 Nil) : 'List 'Int)
44focus: labEnd ((\a -> Cons (fromInt 1)) (Cons 1.2 Nil) : 'List 'Int)
45check: labEnd ((\a -> Cons (fromInt 1 :: a)) (Cons 1.2 Nil) : 'List 'Int)
46infer: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
47focus: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
48focus: labEnd ((\a -> Cons (fromInt 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
49focus: labEnd ((\a -> Cons (fromInt {_ : _:'Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
50check: labEnd ((\a -> Cons (fromInt {(_ : _:'Type) :: Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
51infer: labEnd ((\a -> Cons (fromInt {(_ : _:'Type) : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
52infer: labEnd ((\a -> Cons (fromInt {\(b : _:'Type)->b : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
53infer: labEnd ((\a -> Cons (fromInt {\(c : (\b:'Type -> b))->c : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
54focus: labEnd ((\a -> Cons (fromInt {\(c : (\b:Type -> b))->c : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
55infer: labEnd ((\a -> Cons (fromInt {\(c : \b->b)->c : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
56focus: labEnd ((\a -> Cons (fromInt {\(c : \b->b)->c : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
57focus: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
58infer: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
59focus: labEnd ((\a -> Cons (fromInt {(\b c:b -> c) : Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
60focus: labEnd ((\a -> Cons (fromInt {\b c:b -> c:Type} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
61focus: labEnd ((\a -> Cons (fromInt {\b c:b -> \(d : Type~b)->c} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
62focus: labEnd ((\a -> Cons (fromInt {\b c:b b:=Type -> c} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
63focus: labEnd ((\a -> Cons (fromInt {\b b:=Type -> \c->c} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
64focus: labEnd ((\a -> Cons (fromInt {\b->b} 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
65focus: labEnd ((\a -> Cons ((\b -> fromInt {b}) 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
66focus: labEnd ((\a -> Cons ((\b -> fromInt b) 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
67focus: labEnd ((\a -> Cons ((\b -> fromInt b 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
68focus: labEnd ((\a -> Cons ((\b -> fromInt b {_ : _:'Type} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
69check: labEnd ((\a -> Cons ((\b -> fromInt b {(_ : _:'Type) :: 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
70infer: labEnd ((\a -> Cons ((\b -> fromInt b {(_ : _:'Type) : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
71infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(c : _:'Type)->c : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
72infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : (\c:'Type -> c))->d : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
73focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : (\c:Type -> c))->d : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
74infer: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : \c->c)->d : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
75focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(d : \c->c)->d : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
76focus: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
77infer: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
78focus: labEnd ((\a -> Cons ((\b -> fromInt b {(\c d:c -> d) : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
79focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> d : 'Num b} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
80focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> \(e : 'Num b ~ c)->d} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
81focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c d:c -> \(c := 'Num b)->d} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
82focus: labEnd ((\a -> Cons ((\b -> fromInt b {\c (c := 'Num b) -> \(d : 'Num b)->d} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
83focus: labEnd ((\a -> Cons ((\b -> fromInt b {\(c : 'Num b)->c} 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
84focus: labEnd ((\a -> Cons ((\b -> (\(c : 'Num b) -> fromInt b {c}) 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
85focus: labEnd ((\a -> Cons ((\b -> (\(c : 'Num b) -> fromInt b c) 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
86focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
87check: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1::'Int) : a)) (Cons 1.2 Nil) : 'List 'Int)
88infer: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1:'Int) : a)) (Cons 1.2 Nil) : 'List 'Int)
89focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1:'Int) : a)) (Cons 1.2 Nil) : 'List 'Int)
90focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c (\d:'Unit -> 1)) : a)) (Cons 1.2 Nil) : 'List 'Int)
91focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
92focus: labEnd ((\a -> Cons ((\b (c : 'Num b) -> fromInt b c 1) : a)) (Cons 1.2 Nil) : 'List 'Int)
93focus: labEnd ((\a -> Cons (\b (c : 'Num b) -> fromInt b c 1 : a)) (Cons 1.2 Nil) : 'List 'Int)
94focus: labEnd ((\a -> Cons (\b (c : 'Num b) (d : a~b) -> fromInt b c 1)) (Cons 1.2 Nil) : 'List 'Int)
95focus: labEnd ((\a -> Cons (\b (c : 'Num b) b:=a -> fromInt a c 1)) (Cons 1.2 Nil) : 'List 'Int)
96focus: labEnd ((\a -> Cons (\b b:=a (c : 'Num a) -> fromInt a c 1)) (Cons 1.2 Nil) : 'List 'Int)
97focus: labEnd ((\a -> Cons (\(b : 'Num a) -> fromInt a b 1)) (Cons 1.2 Nil) : 'List 'Int)
98focus: labEnd ((\a (b : 'Num a) -> Cons (fromInt a b 1)) (Cons 1.2 Nil) : 'List 'Int)
99focus: labEnd ((\a (b : 'Num a) -> Cons (fromInt a b 1)) (Cons 1.2 Nil) : 'List 'Int)
100focus: labEnd (\a (b : 'Num a) -> Cons (fromInt a b 1) (Cons 1.2 Nil) : 'List 'Int)
101focus: labEnd (\a (b : 'Num a) -> (\(c : 'Int~a) -> Cons (fromInt a b 1)) (Cons 1.2 Nil))
102focus: labEnd (\a (b : 'Num a) -> (\a:='Int -> Cons 1) (Cons 1.2 Nil))
103focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil))
104check: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil :: 'List 'Int))
105infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil : 'List 'Int))
106infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil : 'List 'Int))
107focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil : 'List 'Int))
108focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {_ : _:'Type} 1.2 Nil : 'List 'Int))
109check: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {(_ : _:'Type) :: Type} 1.2 Nil : 'List 'Int))
110infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {(_ : _:'Type) : Type} 1.2 Nil : 'List 'Int))
111infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\(c : _:'Type)->c : Type} 1.2 Nil : 'List 'Int))
112infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\(d : (\c:'Type -> c))->d : Type} 1.2 Nil : 'List 'Int))
113focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\(d : (\c:Type -> c))->d : Type} 1.2 Nil : 'List 'Int))
114infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\(d : \c->c)->d : Type} 1.2 Nil : 'List 'Int))
115focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\(d : \c->c)->d : Type} 1.2 Nil : 'List 'Int))
116focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {(\c d:c -> d) : Type} 1.2 Nil : 'List 'Int))
117infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {(\c d:c -> d) : Type} 1.2 Nil : 'List 'Int))
118focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {(\c d:c -> d) : Type} 1.2 Nil : 'List 'Int))
119focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\c d:c -> d:Type} 1.2 Nil : 'List 'Int))
120focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\c d:c -> \(e : Type~c)->d} 1.2 Nil : 'List 'Int))
121focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\c d:c c:=Type -> d} 1.2 Nil : 'List 'Int))
122focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\c c:=Type -> \d->d} 1.2 Nil : 'List 'Int))
123focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons {\c->c} 1.2 Nil : 'List 'Int))
124focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons {c}) 1.2 Nil : 'List 'Int))
125focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (\c->Cons 1.2 Nil : 'List 'Int))
126focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons 1.2) Nil : 'List 'Int))
127check: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons 1.2::c) Nil : 'List 'Int))
128infer: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons 1.2:c) Nil : 'List 'Int))
129focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons 1.2:c) Nil : 'List 'Int))
130focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons \(d : c~'Float)->1.2) Nil : 'List 'Int))
131focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c -> Cons (\c:='Float -> 1.2)) Nil : 'List 'Int))
132focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c c:='Float -> Cons 1.2) Nil : 'List 'Int))
133focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\c c:='Float -> Cons 1.2) Nil : 'List 'Int))
134focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 (Cons 1.2 Nil : 'List 'Int))
135focus: labEnd (\a (b : 'Num a) a:='Int -> Cons 1 ((\(c : 'Empty "can not unify\n\ESC[32m'Int\ESC[m\nwith\n\ESC[32m'Float\ESC[m\n") -> Cons 1.2) Nil))
136!type error: can not unify
137'Int
138with
139'Float
140
141in builtin Nil
142
143------------ tooltips
144testdata/language-features/basic-list/list10.reject.lc 1:10-1:11 V1
145testdata/language-features/basic-list/list10.reject.lc 1:12-1:15 Float
146testdata/language-features/basic-list/list10.reject.lc 1:20-1:25 Type
147testdata/language-features/basic-list/list10.reject.lc 1:21-1:24 Type
diff --git a/testdata/language-features/basic-list/list11.out b/testdata/language-features/basic-list/list11.out
index a9ddb798..f447dd7c 100644
--- a/testdata/language-features/basic-list/list11.out
+++ b/testdata/language-features/basic-list/list11.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: {a} -> {b : 'Num a} -> 'List a
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {b : Num a} -> List a 5testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {b : Num a} -> List a
4testdata/language-features/basic-list/list11.lc 1:9-1:10 V1 6testdata/language-features/basic-list/list11.lc 1:9-1:10 V1
diff --git a/testdata/language-features/basic-list/list12.out b/testdata/language-features/basic-list/list12.out
index 840ebd6a..fb253041 100644
--- a/testdata/language-features/basic-list/list12.out
+++ b/testdata/language-features/basic-list/list12.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: {a} -> {b : 'Num a} -> 'List a
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {b : Num a} -> List a 5testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {b : Num a} -> List a
4testdata/language-features/basic-list/list12.lc 1:9-1:10 V1 6testdata/language-features/basic-list/list12.lc 1:9-1:10 V1
diff --git a/testdata/language-features/basic-list/list13.out b/testdata/language-features/basic-list/list13.out
index cc92303b..b3a4a01b 100644
--- a/testdata/language-features/basic-list/list13.out
+++ b/testdata/language-features/basic-list/list13.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/list13.lc 1:1-1:6 List Char 5testdata/language-features/basic-list/list13.lc 1:1-1:6 List Char
4testdata/language-features/basic-list/list13.lc 1:9-1:12 Char 6testdata/language-features/basic-list/list13.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-list/list14.reject.out b/testdata/language-features/basic-list/list14.reject.out
index befa6180..85d77268 100644
--- a/testdata/language-features/basic-list/list14.reject.out
+++ b/testdata/language-features/basic-list/list14.reject.out
@@ -6,3 +6,89 @@ with
6in testdata/language-features/basic-list/list14.reject.lc:1:17: 6in testdata/language-features/basic-list/list14.reject.lc:1:17:
7value = 'h':'i':() 7value = 'h':'i':()
8 ^^ 8 ^^
9
10------------ trace
11infer: labelend (Cons 'h' (Cons 'i' Tuple0))
12infer: labEnd (Cons 'h' (Cons 'i' Tuple0))
13infer: labEnd (Cons 'h' (Cons 'i' Tuple0))
14infer: labEnd (Cons 'h' (Cons 'i' Tuple0))
15focus: labEnd (Cons 'h' (Cons 'i' Tuple0))
16focus: labEnd (Cons {_ : _:'Type} 'h' (Cons 'i' Tuple0))
17check: labEnd (Cons {(_ : _:'Type) :: Type} 'h' (Cons 'i' Tuple0))
18infer: labEnd (Cons {(_ : _:'Type) : Type} 'h' (Cons 'i' Tuple0))
19infer: labEnd (Cons {\(a : _:'Type)->a : Type} 'h' (Cons 'i' Tuple0))
20infer: labEnd (Cons {\(b : (\a:'Type -> a))->b : Type} 'h' (Cons 'i' Tuple0))
21focus: labEnd (Cons {\(b : (\a:Type -> a))->b : Type} 'h' (Cons 'i' Tuple0))
22infer: labEnd (Cons {\(b : \a->a)->b : Type} 'h' (Cons 'i' Tuple0))
23focus: labEnd (Cons {\(b : \a->a)->b : Type} 'h' (Cons 'i' Tuple0))
24focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' Tuple0))
25infer: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' Tuple0))
26focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' Tuple0))
27focus: labEnd (Cons {\a b:a -> b:Type} 'h' (Cons 'i' Tuple0))
28focus: labEnd (Cons {\a b:a -> \(c : Type~a)->b} 'h' (Cons 'i' Tuple0))
29focus: labEnd (Cons {\a b:a a:=Type -> b} 'h' (Cons 'i' Tuple0))
30focus: labEnd (Cons {\a a:=Type -> \b->b} 'h' (Cons 'i' Tuple0))
31focus: labEnd (Cons {\a->a} 'h' (Cons 'i' Tuple0))
32focus: labEnd ((\a -> Cons {a}) 'h' (Cons 'i' Tuple0))
33focus: labEnd (\a->Cons 'h' (Cons 'i' Tuple0))
34focus: labEnd ((\a -> Cons 'h') (Cons 'i' Tuple0))
35check: labEnd ((\a -> Cons 'h'::a) (Cons 'i' Tuple0))
36infer: labEnd ((\a -> Cons 'h':a) (Cons 'i' Tuple0))
37focus: labEnd ((\a -> Cons 'h':a) (Cons 'i' Tuple0))
38focus: labEnd ((\a -> Cons \(b : a~'Char)->'h') (Cons 'i' Tuple0))
39focus: labEnd ((\a -> Cons (\a:='Char -> 'h')) (Cons 'i' Tuple0))
40focus: labEnd ((\a a:='Char -> Cons 'h') (Cons 'i' Tuple0))
41focus: labEnd ((\a a:='Char -> Cons 'h') (Cons 'i' Tuple0))
42focus: labEnd (Cons 'h' (Cons 'i' Tuple0))
43check: labEnd (Cons 'h' (Cons 'i' Tuple0 :: 'List 'Char))
44infer: labEnd (Cons 'h' (Cons 'i' Tuple0 : 'List 'Char))
45infer: labEnd (Cons 'h' (Cons 'i' Tuple0 : 'List 'Char))
46focus: labEnd (Cons 'h' (Cons 'i' Tuple0 : 'List 'Char))
47focus: labEnd (Cons 'h' (Cons {_ : _:'Type} 'i' Tuple0 : 'List 'Char))
48check: labEnd (Cons 'h' (Cons {(_ : _:'Type) :: Type} 'i' Tuple0 : 'List 'Char))
49infer: labEnd (Cons 'h' (Cons {(_ : _:'Type) : Type} 'i' Tuple0 : 'List 'Char))
50infer: labEnd (Cons 'h' (Cons {\(a : _:'Type)->a : Type} 'i' Tuple0 : 'List 'Char))
51infer: labEnd (Cons 'h' (Cons {\(b : (\a:'Type -> a))->b : Type} 'i' Tuple0 : 'List 'Char))
52focus: labEnd (Cons 'h' (Cons {\(b : (\a:Type -> a))->b : Type} 'i' Tuple0 : 'List 'Char))
53infer: labEnd (Cons 'h' (Cons {\(b : \a->a)->b : Type} 'i' Tuple0 : 'List 'Char))
54focus: labEnd (Cons 'h' (Cons {\(b : \a->a)->b : Type} 'i' Tuple0 : 'List 'Char))
55focus: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' Tuple0 : 'List 'Char))
56infer: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' Tuple0 : 'List 'Char))
57focus: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' Tuple0 : 'List 'Char))
58focus: labEnd (Cons 'h' (Cons {\a b:a -> b:Type} 'i' Tuple0 : 'List 'Char))
59focus: labEnd (Cons 'h' (Cons {\a b:a -> \(c : Type~a)->b} 'i' Tuple0 : 'List 'Char))
60focus: labEnd (Cons 'h' (Cons {\a b:a a:=Type -> b} 'i' Tuple0 : 'List 'Char))
61focus: labEnd (Cons 'h' (Cons {\a a:=Type -> \b->b} 'i' Tuple0 : 'List 'Char))
62focus: labEnd (Cons 'h' (Cons {\a->a} 'i' Tuple0 : 'List 'Char))
63focus: labEnd (Cons 'h' ((\a -> Cons {a}) 'i' Tuple0 : 'List 'Char))
64focus: labEnd (Cons 'h' (\a->Cons 'i' Tuple0 : 'List 'Char))
65focus: labEnd (Cons 'h' ((\a -> Cons 'i') Tuple0 : 'List 'Char))
66check: labEnd (Cons 'h' ((\a -> Cons 'i'::a) Tuple0 : 'List 'Char))
67infer: labEnd (Cons 'h' ((\a -> Cons 'i':a) Tuple0 : 'List 'Char))
68focus: labEnd (Cons 'h' ((\a -> Cons 'i':a) Tuple0 : 'List 'Char))
69focus: labEnd (Cons 'h' ((\a -> Cons \(b : a~'Char)->'i') Tuple0 : 'List 'Char))
70focus: labEnd (Cons 'h' ((\a -> Cons (\a:='Char -> 'i')) Tuple0 : 'List 'Char))
71focus: labEnd (Cons 'h' ((\a a:='Char -> Cons 'i') Tuple0 : 'List 'Char))
72focus: labEnd (Cons 'h' ((\a a:='Char -> Cons 'i') Tuple0 : 'List 'Char))
73focus: labEnd (Cons 'h' (Cons 'i' Tuple0 : 'List 'Char))
74focus: labEnd (Cons 'h' ((\a:'Unit -> Cons 'i') Tuple0))
75focus: labEnd (Cons 'h' (Cons 'i' Tuple0))
76check: labEnd (Cons 'h' (Cons 'i' (Tuple0 :: 'List 'Char)))
77infer: labEnd (Cons 'h' (Cons 'i' (Tuple0 : 'List 'Char)))
78focus: labEnd (Cons 'h' (Cons 'i' (Tuple0 : 'List 'Char)))
79focus: labEnd (Cons 'h' (Cons 'i' \(a : 'Empty "can not unify\n\ESC[32m'List 'Char\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n")->Tuple0))
80!type error: can not unify
81'List 'Char
82with
83'Tuple0
84
85in testdata/language-features/basic-list/list14.reject.lc:1:17
86
87------------ tooltips
88testdata/language-features/basic-list/list14.reject.lc 1:9-1:12 Char
89testdata/language-features/basic-list/list14.reject.lc 1:9-1:13 List Char -> List Char
90testdata/language-features/basic-list/list14.reject.lc 1:12-1:13 {a} -> a -> List a -> List a
91testdata/language-features/basic-list/list14.reject.lc 1:13-1:16 Char
92testdata/language-features/basic-list/list14.reject.lc 1:13-1:17 List Char -> List Char
93testdata/language-features/basic-list/list14.reject.lc 1:16-1:17 {a} -> a -> List a -> List a
94testdata/language-features/basic-list/list14.reject.lc 1:17-1:19 Tuple0
diff --git a/testdata/language-features/basic-list/list15.reject.out b/testdata/language-features/basic-list/list15.reject.out
index 7491f8e8..518ab256 100644
--- a/testdata/language-features/basic-list/list15.reject.out
+++ b/testdata/language-features/basic-list/list15.reject.out
@@ -6,3 +6,119 @@ with
6in testdata/language-features/basic-list/list15.reject.lc:1:20: 6in testdata/language-features/basic-list/list15.reject.lc:1:20:
7value = 'h':'i':():[] 7value = 'h':'i':():[]
8 ^^ 8 ^^
9
10------------ trace
11infer: labelend (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
12infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
13infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
14infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
15focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
16focus: labEnd (Cons {_ : _:'Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
17check: labEnd (Cons {(_ : _:'Type) :: Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
18infer: labEnd (Cons {(_ : _:'Type) : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
19infer: labEnd (Cons {\(a : _:'Type)->a : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
20infer: labEnd (Cons {\(b : (\a:'Type -> a))->b : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
21focus: labEnd (Cons {\(b : (\a:Type -> a))->b : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
22infer: labEnd (Cons {\(b : \a->a)->b : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
23focus: labEnd (Cons {\(b : \a->a)->b : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
24focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
25infer: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
26focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
27focus: labEnd (Cons {\a b:a -> b:Type} 'h' (Cons 'i' (Cons Tuple0 Nil)))
28focus: labEnd (Cons {\a b:a -> \(c : Type~a)->b} 'h' (Cons 'i' (Cons Tuple0 Nil)))
29focus: labEnd (Cons {\a b:a a:=Type -> b} 'h' (Cons 'i' (Cons Tuple0 Nil)))
30focus: labEnd (Cons {\a a:=Type -> \b->b} 'h' (Cons 'i' (Cons Tuple0 Nil)))
31focus: labEnd (Cons {\a->a} 'h' (Cons 'i' (Cons Tuple0 Nil)))
32focus: labEnd ((\a -> Cons {a}) 'h' (Cons 'i' (Cons Tuple0 Nil)))
33focus: labEnd (\a->Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
34focus: labEnd ((\a -> Cons 'h') (Cons 'i' (Cons Tuple0 Nil)))
35check: labEnd ((\a -> Cons 'h'::a) (Cons 'i' (Cons Tuple0 Nil)))
36infer: labEnd ((\a -> Cons 'h':a) (Cons 'i' (Cons Tuple0 Nil)))
37focus: labEnd ((\a -> Cons 'h':a) (Cons 'i' (Cons Tuple0 Nil)))
38focus: labEnd ((\a -> Cons \(b : a~'Char)->'h') (Cons 'i' (Cons Tuple0 Nil)))
39focus: labEnd ((\a -> Cons (\a:='Char -> 'h')) (Cons 'i' (Cons Tuple0 Nil)))
40focus: labEnd ((\a a:='Char -> Cons 'h') (Cons 'i' (Cons Tuple0 Nil)))
41focus: labEnd ((\a a:='Char -> Cons 'h') (Cons 'i' (Cons Tuple0 Nil)))
42focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
43check: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil) :: 'List 'Char))
44infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil) : 'List 'Char))
45infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil) : 'List 'Char))
46focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil) : 'List 'Char))
47focus: labEnd (Cons 'h' (Cons {_ : _:'Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
48check: labEnd (Cons 'h' (Cons {(_ : _:'Type) :: Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
49infer: labEnd (Cons 'h' (Cons {(_ : _:'Type) : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
50infer: labEnd (Cons 'h' (Cons {\(a : _:'Type)->a : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
51infer: labEnd (Cons 'h' (Cons {\(b : (\a:'Type -> a))->b : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
52focus: labEnd (Cons 'h' (Cons {\(b : (\a:Type -> a))->b : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
53infer: labEnd (Cons 'h' (Cons {\(b : \a->a)->b : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
54focus: labEnd (Cons 'h' (Cons {\(b : \a->a)->b : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
55focus: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
56infer: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
57focus: labEnd (Cons 'h' (Cons {(\a b:a -> b) : Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
58focus: labEnd (Cons 'h' (Cons {\a b:a -> b:Type} 'i' (Cons Tuple0 Nil) : 'List 'Char))
59focus: labEnd (Cons 'h' (Cons {\a b:a -> \(c : Type~a)->b} 'i' (Cons Tuple0 Nil) : 'List 'Char))
60focus: labEnd (Cons 'h' (Cons {\a b:a a:=Type -> b} 'i' (Cons Tuple0 Nil) : 'List 'Char))
61focus: labEnd (Cons 'h' (Cons {\a a:=Type -> \b->b} 'i' (Cons Tuple0 Nil) : 'List 'Char))
62focus: labEnd (Cons 'h' (Cons {\a->a} 'i' (Cons Tuple0 Nil) : 'List 'Char))
63focus: labEnd (Cons 'h' ((\a -> Cons {a}) 'i' (Cons Tuple0 Nil) : 'List 'Char))
64focus: labEnd (Cons 'h' (\a->Cons 'i' (Cons Tuple0 Nil) : 'List 'Char))
65focus: labEnd (Cons 'h' ((\a -> Cons 'i') (Cons Tuple0 Nil) : 'List 'Char))
66check: labEnd (Cons 'h' ((\a -> Cons 'i'::a) (Cons Tuple0 Nil) : 'List 'Char))
67infer: labEnd (Cons 'h' ((\a -> Cons 'i':a) (Cons Tuple0 Nil) : 'List 'Char))
68focus: labEnd (Cons 'h' ((\a -> Cons 'i':a) (Cons Tuple0 Nil) : 'List 'Char))
69focus: labEnd (Cons 'h' ((\a -> Cons \(b : a~'Char)->'i') (Cons Tuple0 Nil) : 'List 'Char))
70focus: labEnd (Cons 'h' ((\a -> Cons (\a:='Char -> 'i')) (Cons Tuple0 Nil) : 'List 'Char))
71focus: labEnd (Cons 'h' ((\a a:='Char -> Cons 'i') (Cons Tuple0 Nil) : 'List 'Char))
72focus: labEnd (Cons 'h' ((\a a:='Char -> Cons 'i') (Cons Tuple0 Nil) : 'List 'Char))
73focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil) : 'List 'Char))
74focus: labEnd (Cons 'h' ((\a:'Unit -> Cons 'i') (Cons Tuple0 Nil)))
75focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil)))
76check: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil :: 'List 'Char)))
77infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil : 'List 'Char)))
78infer: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil : 'List 'Char)))
79focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil : 'List 'Char)))
80focus: labEnd (Cons 'h' (Cons 'i' (Cons {_ : _:'Type} Tuple0 Nil : 'List 'Char)))
81check: labEnd (Cons 'h' (Cons 'i' (Cons {(_ : _:'Type) :: Type} Tuple0 Nil : 'List 'Char)))
82infer: labEnd (Cons 'h' (Cons 'i' (Cons {(_ : _:'Type) : Type} Tuple0 Nil : 'List 'Char)))
83infer: labEnd (Cons 'h' (Cons 'i' (Cons {\(a : _:'Type)->a : Type} Tuple0 Nil : 'List 'Char)))
84infer: labEnd (Cons 'h' (Cons 'i' (Cons {\(b : (\a:'Type -> a))->b : Type} Tuple0 Nil : 'List 'Char)))
85focus: labEnd (Cons 'h' (Cons 'i' (Cons {\(b : (\a:Type -> a))->b : Type} Tuple0 Nil : 'List 'Char)))
86infer: labEnd (Cons 'h' (Cons 'i' (Cons {\(b : \a->a)->b : Type} Tuple0 Nil : 'List 'Char)))
87focus: labEnd (Cons 'h' (Cons 'i' (Cons {\(b : \a->a)->b : Type} Tuple0 Nil : 'List 'Char)))
88focus: labEnd (Cons 'h' (Cons 'i' (Cons {(\a b:a -> b) : Type} Tuple0 Nil : 'List 'Char)))
89infer: labEnd (Cons 'h' (Cons 'i' (Cons {(\a b:a -> b) : Type} Tuple0 Nil : 'List 'Char)))
90focus: labEnd (Cons 'h' (Cons 'i' (Cons {(\a b:a -> b) : Type} Tuple0 Nil : 'List 'Char)))
91focus: labEnd (Cons 'h' (Cons 'i' (Cons {\a b:a -> b:Type} Tuple0 Nil : 'List 'Char)))
92focus: labEnd (Cons 'h' (Cons 'i' (Cons {\a b:a -> \(c : Type~a)->b} Tuple0 Nil : 'List 'Char)))
93focus: labEnd (Cons 'h' (Cons 'i' (Cons {\a b:a a:=Type -> b} Tuple0 Nil : 'List 'Char)))
94focus: labEnd (Cons 'h' (Cons 'i' (Cons {\a a:=Type -> \b->b} Tuple0 Nil : 'List 'Char)))
95focus: labEnd (Cons 'h' (Cons 'i' (Cons {\a->a} Tuple0 Nil : 'List 'Char)))
96focus: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons {a}) Tuple0 Nil : 'List 'Char)))
97focus: labEnd (Cons 'h' (Cons 'i' (\a->Cons Tuple0 Nil : 'List 'Char)))
98focus: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons Tuple0) Nil : 'List 'Char)))
99check: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons Tuple0::a) Nil : 'List 'Char)))
100infer: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons Tuple0:a) Nil : 'List 'Char)))
101focus: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons Tuple0:a) Nil : 'List 'Char)))
102focus: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons \(b : a~'Tuple0)->Tuple0) Nil : 'List 'Char)))
103focus: labEnd (Cons 'h' (Cons 'i' ((\a -> Cons (\a:='Tuple0 -> Tuple0)) Nil : 'List 'Char)))
104focus: labEnd (Cons 'h' (Cons 'i' ((\a a:='Tuple0 -> Cons Tuple0) Nil : 'List 'Char)))
105focus: labEnd (Cons 'h' (Cons 'i' ((\a a:='Tuple0 -> Cons Tuple0) Nil : 'List 'Char)))
106focus: labEnd (Cons 'h' (Cons 'i' (Cons Tuple0 Nil : 'List 'Char)))
107focus: labEnd (Cons 'h' (Cons 'i' ((\(a : 'Empty "can not unify\n\ESC[32m'Char\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n") -> Cons Tuple0) Nil)))
108!type error: can not unify
109'Char
110with
111'Tuple0
112
113in testdata/language-features/basic-list/list15.reject.lc:1:20
114
115------------ tooltips
116testdata/language-features/basic-list/list15.reject.lc 1:9-1:12 Char
117testdata/language-features/basic-list/list15.reject.lc 1:9-1:13 List Char -> List Char
118testdata/language-features/basic-list/list15.reject.lc 1:12-1:13 {a} -> a -> List a -> List a
119testdata/language-features/basic-list/list15.reject.lc 1:13-1:16 Char
120testdata/language-features/basic-list/list15.reject.lc 1:13-1:17 List Char -> List Char
121testdata/language-features/basic-list/list15.reject.lc 1:16-1:17 {a} -> a -> List a -> List a
122testdata/language-features/basic-list/list15.reject.lc 1:17-1:19 Tuple0
123testdata/language-features/basic-list/list15.reject.lc 1:17-1:20 List Tuple0 -> List Tuple0
124testdata/language-features/basic-list/list15.reject.lc 1:19-1:20 {a} -> a -> List a -> List a
diff --git a/testdata/language-features/basic-list/list16.reject.out b/testdata/language-features/basic-list/list16.reject.out
index 5f26cbf1..6c99607b 100644
--- a/testdata/language-features/basic-list/list16.reject.out
+++ b/testdata/language-features/basic-list/list16.reject.out
@@ -6,3 +6,53 @@ with
6in testdata/language-features/basic-list/list16.reject.lc:1:13: 6in testdata/language-features/basic-list/list16.reject.lc:1:13:
7value = 'h':'i' 7value = 'h':'i'
8 ^^^ 8 ^^^
9
10------------ trace
11infer: labelend (Cons 'h' 'i')
12infer: labEnd (Cons 'h' 'i')
13infer: labEnd (Cons 'h' 'i')
14infer: labEnd (Cons 'h' 'i')
15focus: labEnd (Cons 'h' 'i')
16focus: labEnd (Cons {_ : _:'Type} 'h' 'i')
17check: labEnd (Cons {(_ : _:'Type) :: Type} 'h' 'i')
18infer: labEnd (Cons {(_ : _:'Type) : Type} 'h' 'i')
19infer: labEnd (Cons {\(a : _:'Type)->a : Type} 'h' 'i')
20infer: labEnd (Cons {\(b : (\a:'Type -> a))->b : Type} 'h' 'i')
21focus: labEnd (Cons {\(b : (\a:Type -> a))->b : Type} 'h' 'i')
22infer: labEnd (Cons {\(b : \a->a)->b : Type} 'h' 'i')
23focus: labEnd (Cons {\(b : \a->a)->b : Type} 'h' 'i')
24focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' 'i')
25infer: labEnd (Cons {(\a b:a -> b) : Type} 'h' 'i')
26focus: labEnd (Cons {(\a b:a -> b) : Type} 'h' 'i')
27focus: labEnd (Cons {\a b:a -> b:Type} 'h' 'i')
28focus: labEnd (Cons {\a b:a -> \(c : Type~a)->b} 'h' 'i')
29focus: labEnd (Cons {\a b:a a:=Type -> b} 'h' 'i')
30focus: labEnd (Cons {\a a:=Type -> \b->b} 'h' 'i')
31focus: labEnd (Cons {\a->a} 'h' 'i')
32focus: labEnd ((\a -> Cons {a}) 'h' 'i')
33focus: labEnd (\a->Cons 'h' 'i')
34focus: labEnd ((\a -> Cons 'h') 'i')
35check: labEnd ((\a -> Cons 'h'::a) 'i')
36infer: labEnd ((\a -> Cons 'h':a) 'i')
37focus: labEnd ((\a -> Cons 'h':a) 'i')
38focus: labEnd ((\a -> Cons \(b : a~'Char)->'h') 'i')
39focus: labEnd ((\a -> Cons (\a:='Char -> 'h')) 'i')
40focus: labEnd ((\a a:='Char -> Cons 'h') 'i')
41focus: labEnd ((\a a:='Char -> Cons 'h') 'i')
42focus: labEnd (Cons 'h' 'i')
43check: labEnd (Cons 'h' ('i' :: 'List 'Char))
44infer: labEnd (Cons 'h' ('i' : 'List 'Char))
45focus: labEnd (Cons 'h' ('i' : 'List 'Char))
46focus: labEnd (Cons 'h' \(a : 'Empty "can not unify\n\ESC[32m'List 'Char\ESC[m\nwith\n\ESC[32m'Char\ESC[m\n")->'i')
47!type error: can not unify
48'List 'Char
49with
50'Char
51
52in testdata/language-features/basic-list/list16.reject.lc:1:13
53
54------------ tooltips
55testdata/language-features/basic-list/list16.reject.lc 1:9-1:12 Char
56testdata/language-features/basic-list/list16.reject.lc 1:9-1:13 List Char -> List Char
57testdata/language-features/basic-list/list16.reject.lc 1:12-1:13 {a} -> a -> List a -> List a
58testdata/language-features/basic-list/list16.reject.lc 1:13-1:16 Char
diff --git a/testdata/language-features/basic-list/listcomp01.out b/testdata/language-features/basic-list/listcomp01.out
index f9053dd2..e5d0ba2d 100644
--- a/testdata/language-features/basic-list/listcomp01.out
+++ b/testdata/language-features/basic-list/listcomp01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List Tuple0 5testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List Tuple0
4testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List Tuple0 6testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp02.out b/testdata/language-features/basic-list/listcomp02.out
index 4ade3a2f..a2835375 100644
--- a/testdata/language-features/basic-list/listcomp02.out
+++ b/testdata/language-features/basic-list/listcomp02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3l :: 'List 'Tuple0
4value :: 'List 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-list/listcomp02.lc 1:1-1:2 List Tuple0 6testdata/language-features/basic-list/listcomp02.lc 1:1-1:2 List Tuple0
4testdata/language-features/basic-list/listcomp02.lc 1:5-1:18 List Tuple0 7testdata/language-features/basic-list/listcomp02.lc 1:5-1:18 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp03.out b/testdata/language-features/basic-list/listcomp03.out
index 001484be..9d31c0b3 100644
--- a/testdata/language-features/basic-list/listcomp03.out
+++ b/testdata/language-features/basic-list/listcomp03.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List Tuple0 5testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List Tuple0
4testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List Tuple0 6testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp04.out b/testdata/language-features/basic-list/listcomp04.out
index ebf9b00a..87bebdaf 100644
--- a/testdata/language-features/basic-list/listcomp04.out
+++ b/testdata/language-features/basic-list/listcomp04.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3l :: 'List 'Tuple0
4value :: 'List 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-list/listcomp04.lc 1:1-1:2 List Tuple0 6testdata/language-features/basic-list/listcomp04.lc 1:1-1:2 List Tuple0
4testdata/language-features/basic-list/listcomp04.lc 1:5-1:18 List Tuple0 7testdata/language-features/basic-list/listcomp04.lc 1:5-1:18 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp05.out b/testdata/language-features/basic-list/listcomp05.out
index c4c03e58..8163ffcc 100644
--- a/testdata/language-features/basic-list/listcomp05.out
+++ b/testdata/language-features/basic-list/listcomp05.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'List 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List Tuple0 5testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List Tuple0
4testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List Tuple0 6testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp06.out b/testdata/language-features/basic-list/listcomp06.out
index 02b0300a..1231475f 100644
--- a/testdata/language-features/basic-list/listcomp06.out
+++ b/testdata/language-features/basic-list/listcomp06.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'List 'Tuple0
4value2 :: 'List 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List Tuple0 6testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List Tuple0
4testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List Tuple0 7testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp07.out b/testdata/language-features/basic-list/listcomp07.out
index 9721ad28..f753d50a 100644
--- a/testdata/language-features/basic-list/listcomp07.out
+++ b/testdata/language-features/basic-list/listcomp07.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'List 'Tuple0
4value2 :: 'List 'Tuple0
5value3 :: 'List 'Tuple0
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List Tuple0 7testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List Tuple0
4testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List Tuple0 8testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List Tuple0
diff --git a/testdata/language-features/basic-list/listcomp08.reject.out b/testdata/language-features/basic-list/listcomp08.reject.out
index 3c21bdc9..8cde0e3b 100644
--- a/testdata/language-features/basic-list/listcomp08.reject.out
+++ b/testdata/language-features/basic-list/listcomp08.reject.out
@@ -6,3 +6,87 @@ with
6in testdata/language-features/basic-list/listcomp08.reject.lc:1:23: 6in testdata/language-features/basic-list/listcomp08.reject.lc:1:23:
7value = [x | x <- [], "not Bool"] 7value = [x | x <- [], "not Bool"]
8 ^^^^^^^^^^ 8 ^^^^^^^^^^
9
10------------ trace
11infer: labelend (concatMap (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
12infer: labEnd (concatMap (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
13infer: labEnd (concatMap (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
14infer: labEnd (concatMap (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
15focus: labEnd (concatMap (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
16focus: labEnd (concatMap {_ : _:'Type} (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
17check: labEnd (concatMap {(_ : _:'Type) :: Type} (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
18infer: labEnd (concatMap {(_ : _:'Type) : Type} (\(a : _:'Type) -> primIfThenElse "not Bool" (Cons a Nil) Nil) Nil)
19infer: labEnd (concatMap {\(a : _:'Type)->a : Type} (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil) Nil)
20infer: labEnd (concatMap {\(b : (\a:'Type -> a))->b : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
21focus: labEnd (concatMap {\(b : (\a:Type -> a))->b : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
22infer: labEnd (concatMap {\(b : \a->a)->b : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
23focus: labEnd (concatMap {\(b : \a->a)->b : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
24focus: labEnd (concatMap {(\a b:a -> b) : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
25infer: labEnd (concatMap {(\a b:a -> b) : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
26focus: labEnd (concatMap {(\a b:a -> b) : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
27focus: labEnd (concatMap {\a b:a -> b:Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
28focus: labEnd (concatMap {\a b:a -> \(c : Type~a)->b} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil) Nil)
29focus: labEnd (concatMap {\a b:a a:=Type -> b} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
30focus: labEnd (concatMap {\a a:=Type -> \b->b} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) Nil)
31focus: labEnd (concatMap {\a->a} (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil) Nil)
32focus: labEnd ((\a -> concatMap {a}) (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil) Nil)
33focus: labEnd ((\a -> concatMap a) (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil) Nil)
34focus: labEnd ((\a -> concatMap a (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil)) Nil)
35focus: labEnd ((\a -> concatMap a {_ : _:'Type} (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil)) Nil)
36check: labEnd ((\a -> concatMap a {(_ : _:'Type) :: Type} (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil)) Nil)
37infer: labEnd ((\a -> concatMap a {(_ : _:'Type) : Type} (\(b : _:'Type) -> primIfThenElse "not Bool" (Cons b Nil) Nil)) Nil)
38infer: labEnd ((\a -> concatMap a {\(b : _:'Type)->b : Type} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil)) Nil)
39infer: labEnd ((\a -> concatMap a {\(c : (\b:'Type -> b))->c : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
40focus: labEnd ((\a -> concatMap a {\(c : (\b:Type -> b))->c : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
41infer: labEnd ((\a -> concatMap a {\(c : \b->b)->c : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
42focus: labEnd ((\a -> concatMap a {\(c : \b->b)->c : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
43focus: labEnd ((\a -> concatMap a {(\b c:b -> c) : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
44infer: labEnd ((\a -> concatMap a {(\b c:b -> c) : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
45focus: labEnd ((\a -> concatMap a {(\b c:b -> c) : Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
46focus: labEnd ((\a -> concatMap a {\b c:b -> c:Type} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
47focus: labEnd ((\a -> concatMap a {\b c:b -> \(d : Type~b)->c} (\(e : _:'Type) -> primIfThenElse "not Bool" (Cons e Nil) Nil)) Nil)
48focus: labEnd ((\a -> concatMap a {\b c:b b:=Type -> c} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
49focus: labEnd ((\a -> concatMap a {\b b:=Type -> \c->c} (\(d : _:'Type) -> primIfThenElse "not Bool" (Cons d Nil) Nil)) Nil)
50focus: labEnd ((\a -> concatMap a {\b->b} (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil)) Nil)
51focus: labEnd ((\a -> (\b -> concatMap a {b}) (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil)) Nil)
52focus: labEnd ((\a -> (\b -> concatMap a b) (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil)) Nil)
53focus: labEnd ((\a b -> concatMap a b (\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil)) Nil)
54check: labEnd ((\a b -> concatMap a b ((\(c : _:'Type) -> primIfThenElse "not Bool" (Cons c Nil) Nil) :: a -> 'List b)) Nil)
55check: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse "not Bool" (Cons c Nil) Nil :: 'List b)) Nil)
56infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
57infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
58infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
59focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
60focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {_ : _:'Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
61check: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {(_ : _:'Type) :: Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
62infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {(_ : _:'Type) : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
63infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\(d : _:'Type)->d : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
64infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\(e : (\d:'Type -> d))->e : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
65focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\(e : (\d:Type -> d))->e : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
66infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\(e : \d->d)->e : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
67focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\(e : \d->d)->e : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
68focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {(\d e:d -> e) : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
69infer: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {(\d e:d -> e) : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
70focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {(\d e:d -> e) : Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
71focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\d e:d -> e:Type} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
72focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\d e:d -> \(f : Type~d)->e} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
73focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\d e:d d:=Type -> e} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
74focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\d d:=Type -> \e->e} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
75focus: labEnd ((\a b -> concatMap a b (\c:a -> primIfThenElse {\d->d} "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
76focus: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse {d}) "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
77focus: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d) "not Bool" (Cons c Nil) Nil : 'List b)) Nil)
78focus: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d "not Bool") (Cons c Nil) Nil : 'List b)) Nil)
79check: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d "not Bool"::'Bool) (Cons c Nil) Nil : 'List b)) Nil)
80infer: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d "not Bool":'Bool) (Cons c Nil) Nil : 'List b)) Nil)
81focus: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d "not Bool":'Bool) (Cons c Nil) Nil : 'List b)) Nil)
82focus: labEnd ((\a b -> concatMap a b (\c:a -> (\d -> primIfThenElse d \(e : 'Empty "can not unify\n\ESC[32m'Bool\ESC[m\nwith\n\ESC[32m'String\ESC[m\n")->"not Bool") (Cons c Nil) Nil : 'List b)) Nil)
83!type error: can not unify
84'Bool
85with
86'String
87
88in testdata/language-features/basic-list/listcomp08.reject.lc:1:23
89
90------------ tooltips
91testdata/language-features/basic-list/listcomp08.reject.lc 1:10-1:33 V1 -> List V1
92testdata/language-features/basic-list/listcomp08.reject.lc 1:23-1:33 String
diff --git a/testdata/language-features/basic-list/listcomp09.out b/testdata/language-features/basic-list/listcomp09.out
index dfb10524..91ad2305 100644
--- a/testdata/language-features/basic-list/listcomp09.out
+++ b/testdata/language-features/basic-list/listcomp09.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> 'List 'Tuple0->'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {a} -> List Tuple0->String 5testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {a} -> List Tuple0->String
4testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List Tuple0->String 6testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List Tuple0->String
diff --git a/testdata/language-features/basic-values/bool01.out b/testdata/language-features/basic-values/bool01.out
index 0acc9e27..5e43b4e6 100644
--- a/testdata/language-features/basic-values/bool01.out
+++ b/testdata/language-features/basic-values/bool01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Bool
4value2 :: 'Bool
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/bool01.lc 1:1-1:7 Bool 6testdata/language-features/basic-values/bool01.lc 1:1-1:7 Bool
4testdata/language-features/basic-values/bool01.lc 1:10-1:14 Bool 7testdata/language-features/basic-values/bool01.lc 1:10-1:14 Bool
diff --git a/testdata/language-features/basic-values/case01.out b/testdata/language-features/basic-values/case01.out
index c312ad05..70d58b87 100644
--- a/testdata/language-features/basic-values/case01.out
+++ b/testdata/language-features/basic-values/case01.out
@@ -1,4 +1,11 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
4value2 :: 'Tuple0
5value3 :: 'Tuple0
6value4 :: 'Tuple0
7value5 :: 'Tuple0
8value6 :: 'Tuple0
2------------ tooltips 9------------ tooltips
3testdata/language-features/basic-values/case01.lc 1:1-1:7 Tuple0 10testdata/language-features/basic-values/case01.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/case01.lc 1:10-1:29 Tuple0 11testdata/language-features/basic-values/case01.lc 1:10-1:29 Tuple0
diff --git a/testdata/language-features/basic-values/case02.out b/testdata/language-features/basic-values/case02.out
index 6758ca71..f58893ee 100644
--- a/testdata/language-features/basic-values/case02.out
+++ b/testdata/language-features/basic-values/case02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
4value2 :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> {d : 'Eq a} -> {e : 'Num a}->'String
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/case02.lc 1:1-1:7 {a} -> {b : Eq a} -> {c : Num a}->Tuple0 6testdata/language-features/basic-values/case02.lc 1:1-1:7 {a} -> {b : Eq a} -> {c : Num a}->Tuple0
4testdata/language-features/basic-values/case02.lc 1:10-3:10 Tuple0 7testdata/language-features/basic-values/case02.lc 1:10-3:10 Tuple0
diff --git a/testdata/language-features/basic-values/case03.reject.out b/testdata/language-features/basic-values/case03.reject.out
index fae6e385..6c701d13 100644
--- a/testdata/language-features/basic-values/case03.reject.out
+++ b/testdata/language-features/basic-values/case03.reject.out
@@ -3,3 +3,184 @@ in testdata/language-features/basic-values/case03.reject.lc:1:10:
3value1 = case () of 3value1 = case () of
4 1 -> () 4 1 -> ()
5 _ -> () 5 _ -> ()
6
7------------ trace
8infer: labelend ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) a)) Tuple0)
9infer: labEnd ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) a)) Tuple0)
10infer: labEnd ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) a)) Tuple0)
11infer: labEnd ((\(a : _:'Type : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) a)) Tuple0)
12infer: labEnd ((\(b : (\a:'Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
13focus: labEnd ((\(b : (\a:Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
14infer: labEnd ((\(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
15focus: labEnd ((\(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
16focus: labEnd ((\(b : (\a -> a:Type)) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
17focus: labEnd ((\(c : (\a b:'Unit -> a)) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) c)) Tuple0)
18focus: labEnd ((\(b : \a->a) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
19focus: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
20infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
21infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
22infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
23infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
24infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
25focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\_:'Type -> _:'Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
26check: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) ((\_:'Type -> _:'Type) :: 'Bool->Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
27check: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type :: Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
28infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type : Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
29infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:'Type -> h) : Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
30focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:Type -> h) : Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
31infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
32focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
33focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h -> h:Type) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
34focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h i:'Unit -> h) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
35focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
36focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:'Bool -> g) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
37focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:Type -> g) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
38focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type g:Type -> 'BoolCase d e f g) (\h:Type -> c)) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
39focus: labEnd ((\a b:a -> (\c d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0 Tuple0 (== (fromInt 1) b)) Tuple0)
40focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0) Tuple0 (== (fromInt 1) b)) Tuple0)
41check: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0::c) Tuple0 (== (fromInt 1) b)) Tuple0)
42infer: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0:c) Tuple0 (== (fromInt 1) b)) Tuple0)
43focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0:c) Tuple0 (== (fromInt 1) b)) Tuple0)
44focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) \(h : c~'Tuple0)->Tuple0) Tuple0 (== (fromInt 1) b)) Tuple0)
45focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Tuple0 -> Tuple0)) Tuple0 (== (fromInt 1) b)) Tuple0)
46focus: labEnd ((\a b:a -> (\c c:='Tuple0 -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> 'Tuple0) d e f) Tuple0) Tuple0 (== (fromInt 1) b)) Tuple0)
47focus: labEnd ((\a b:a -> (\c c:='Tuple0 d:Type e:Type -> 'BoolCase (\f:Type -> 'Tuple0) Tuple0 d e) Tuple0 (== (fromInt 1) b)) Tuple0)
48focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) Tuple0 (== (fromInt 1) b)) Tuple0)
49check: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) Tuple0::'Tuple0 (== (fromInt 1) b)) Tuple0)
50infer: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) Tuple0:'Tuple0 (== (fromInt 1) b)) Tuple0)
51focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) Tuple0:'Tuple0 (== (fromInt 1) b)) Tuple0)
52focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) (\f:'Unit -> Tuple0) (== (fromInt 1) b)) Tuple0)
53focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) Tuple0 (== (fromInt 1) b)) Tuple0)
54focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== (fromInt 1) b)) Tuple0)
55check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== (fromInt 1) b :: 'Bool)) Tuple0)
56infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== (fromInt 1) b : 'Bool)) Tuple0)
57infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== (fromInt 1) b : 'Bool)) Tuple0)
58focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== (fromInt 1) b : 'Bool)) Tuple0)
59focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {_ : _:'Type} (fromInt 1) b : 'Bool)) Tuple0)
60check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {(_ : _:'Type) :: Type} (fromInt 1) b : 'Bool)) Tuple0)
61infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {(_ : _:'Type) : Type} (fromInt 1) b : 'Bool)) Tuple0)
62infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\(e : _:'Type)->e : Type} (fromInt 1) b : 'Bool)) Tuple0)
63infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\(f : (\e:'Type -> e))->f : Type} (fromInt 1) b : 'Bool)) Tuple0)
64focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\(f : (\e:Type -> e))->f : Type} (fromInt 1) b : 'Bool)) Tuple0)
65infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\(f : \e->e)->f : Type} (fromInt 1) b : 'Bool)) Tuple0)
66focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\(f : \e->e)->f : Type} (fromInt 1) b : 'Bool)) Tuple0)
67focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {(\e f:e -> f) : Type} (fromInt 1) b : 'Bool)) Tuple0)
68infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {(\e f:e -> f) : Type} (fromInt 1) b : 'Bool)) Tuple0)
69focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {(\e f:e -> f) : Type} (fromInt 1) b : 'Bool)) Tuple0)
70focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\e f:e -> f:Type} (fromInt 1) b : 'Bool)) Tuple0)
71focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\e f:e -> \(g : Type~e)->f} (fromInt 1) b : 'Bool)) Tuple0)
72focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\e f:e e:=Type -> f} (fromInt 1) b : 'Bool)) Tuple0)
73focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\e e:=Type -> \f->f} (fromInt 1) b : 'Bool)) Tuple0)
74focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (== {\e->e} (fromInt 1) b : 'Bool)) Tuple0)
75focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == {e}) (fromInt 1) b : 'Bool)) Tuple0)
76focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e) (fromInt 1) b : 'Bool)) Tuple0)
77focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e (fromInt 1)) b : 'Bool)) Tuple0)
78focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {_ : _:'Type} (fromInt 1)) b : 'Bool)) Tuple0)
79check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {(_ : _:'Type) :: 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
80infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {(_ : _:'Type) : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
81infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(f : _:'Type)->f : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
82infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(g : (\f:'Type -> f))->g : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
83focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(g : (\f:Type -> f))->g : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
84infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(g : \f->f)->g : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
85focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(g : \f->f)->g : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
86focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {(\f g:f -> g) : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
87infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {(\f g:f -> g) : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
88focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {(\f g:f -> g) : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
89focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\f g:f -> g : 'Eq e} (fromInt 1)) b : 'Bool)) Tuple0)
90focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\f g:f -> \(h : 'Eq e ~ f)->g} (fromInt 1)) b : 'Bool)) Tuple0)
91focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\f g:f -> \(f := 'Eq e)->g} (fromInt 1)) b : 'Bool)) Tuple0)
92focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\f (f := 'Eq e) -> \(g : 'Eq e)->g} (fromInt 1)) b : 'Bool)) Tuple0)
93focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> == e {\(f : 'Eq e)->f} (fromInt 1)) b : 'Bool)) Tuple0)
94focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> (\(f : 'Eq e) -> == e {f}) (fromInt 1)) b : 'Bool)) Tuple0)
95focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e -> (\(f : 'Eq e) -> == e f) (fromInt 1)) b : 'Bool)) Tuple0)
96focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt 1)) b : 'Bool)) Tuple0)
97check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt 1 :: e)) b : 'Bool)) Tuple0)
98infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt 1 : e)) b : 'Bool)) Tuple0)
99focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt 1 : e)) b : 'Bool)) Tuple0)
100focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt 1 : e)) b : 'Bool)) Tuple0)
101focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {_ : _:'Type} 1 : e)) b : 'Bool)) Tuple0)
102check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {(_ : _:'Type) :: Type} 1 : e)) b : 'Bool)) Tuple0)
103infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {(_ : _:'Type) : Type} 1 : e)) b : 'Bool)) Tuple0)
104infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\(g : _:'Type)->g : Type} 1 : e)) b : 'Bool)) Tuple0)
105infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\(h : (\g:'Type -> g))->h : Type} 1 : e)) b : 'Bool)) Tuple0)
106focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\(h : (\g:Type -> g))->h : Type} 1 : e)) b : 'Bool)) Tuple0)
107infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\(h : \g->g)->h : Type} 1 : e)) b : 'Bool)) Tuple0)
108focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\(h : \g->g)->h : Type} 1 : e)) b : 'Bool)) Tuple0)
109focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {(\g h:g -> h) : Type} 1 : e)) b : 'Bool)) Tuple0)
110infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {(\g h:g -> h) : Type} 1 : e)) b : 'Bool)) Tuple0)
111focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {(\g h:g -> h) : Type} 1 : e)) b : 'Bool)) Tuple0)
112focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\g h:g -> h:Type} 1 : e)) b : 'Bool)) Tuple0)
113focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\g h:g -> \(i : Type~g)->h} 1 : e)) b : 'Bool)) Tuple0)
114focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\g h:g g:=Type -> h} 1 : e)) b : 'Bool)) Tuple0)
115focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\g g:=Type -> \h->h} 1 : e)) b : 'Bool)) Tuple0)
116focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (fromInt {\g->g} 1 : e)) b : 'Bool)) Tuple0)
117focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt {g}) 1 : e)) b : 'Bool)) Tuple0)
118focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g) 1 : e)) b : 'Bool)) Tuple0)
119focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g 1) : e)) b : 'Bool)) Tuple0)
120focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {_ : _:'Type} 1) : e)) b : 'Bool)) Tuple0)
121check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {(_ : _:'Type) :: 'Num g} 1) : e)) b : 'Bool)) Tuple0)
122infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {(_ : _:'Type) : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
123infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(h : _:'Type)->h : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
124infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(i : (\h:'Type -> h))->i : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
125focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(i : (\h:Type -> h))->i : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
126infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(i : \h->h)->i : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
127focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(i : \h->h)->i : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
128focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {(\h i:h -> i) : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
129infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {(\h i:h -> i) : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
130focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {(\h i:h -> i) : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
131focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\h i:h -> i : 'Num g} 1) : e)) b : 'Bool)) Tuple0)
132focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\h i:h -> \(j : 'Num g ~ h)->i} 1) : e)) b : 'Bool)) Tuple0)
133focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\h i:h -> \(h := 'Num g)->i} 1) : e)) b : 'Bool)) Tuple0)
134focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\h (h := 'Num g) -> \(i : 'Num g)->i} 1) : e)) b : 'Bool)) Tuple0)
135focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> fromInt g {\(h : 'Num g)->h} 1) : e)) b : 'Bool)) Tuple0)
136focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> (\(h : 'Num g) -> fromInt g {h}) 1) : e)) b : 'Bool)) Tuple0)
137focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g -> (\(h : 'Num g) -> fromInt g h) 1) : e)) b : 'Bool)) Tuple0)
138focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1) : e)) b : 'Bool)) Tuple0)
139check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1::'Int) : e)) b : 'Bool)) Tuple0)
140infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1:'Int) : e)) b : 'Bool)) Tuple0)
141focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1:'Int) : e)) b : 'Bool)) Tuple0)
142focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h (\i:'Unit -> 1)) : e)) b : 'Bool)) Tuple0)
143focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1) : e)) b : 'Bool)) Tuple0)
144focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f ((\g (h : 'Num g) -> fromInt g h 1) : e)) b : 'Bool)) Tuple0)
145focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (\g (h : 'Num g) -> fromInt g h 1 : e)) b : 'Bool)) Tuple0)
146focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (\g (h : 'Num g) (i : e~g) -> fromInt g h 1)) b : 'Bool)) Tuple0)
147focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (\g (h : 'Num g) g:=e -> fromInt e h 1)) b : 'Bool)) Tuple0)
148focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (\g g:=e (h : 'Num e) -> fromInt e h 1)) b : 'Bool)) Tuple0)
149focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) -> == e f (\(g : 'Num e) -> fromInt e g 1)) b : 'Bool)) Tuple0)
150focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1)) b : 'Bool)) Tuple0)
151focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) ((\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1)) b : 'Bool)) Tuple0)
152focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) b : 'Bool)) Tuple0)
153focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> (\h:'Unit -> == e f (fromInt e g 1)) b)) Tuple0)
154focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) b)) Tuple0)
155check: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) b::e)) Tuple0)
156infer: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) b:e)) Tuple0)
157focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) b:e)) Tuple0)
158focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) \(h : e~a)->b)) Tuple0)
159focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) -> == e f (fromInt e g 1) (\e:=a -> b))) Tuple0)
160focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) e:=a -> == a f (fromInt a g 1) b)) Tuple0)
161focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) (g : 'Num e) e:=a -> == a f (fromInt a g 1) b)) Tuple0)
162focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e (f : 'Eq e) e:=a (g : 'Num a) -> == a f (fromInt a g 1) b)) Tuple0)
163focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\e e:=a (f : 'Eq a) (g : 'Num a) -> == a f (fromInt a g 1) b)) Tuple0)
164focus: labEnd ((\a b:a -> (\c:Type -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 c) (\(e : 'Eq a) (f : 'Num a) -> == a e (fromInt a f 1) b)) Tuple0)
165focus: labEnd ((\a b:a (c : 'Eq a) (d : 'Num a) -> (\e:Type -> 'BoolCase (\f:Type -> 'Tuple0) Tuple0 Tuple0 e) (== a c (fromInt a d 1) b)) Tuple0)
166focus: labEnd ((\a b:a (c : 'Eq a) (d : 'Num a) -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a c (fromInt a d 1) b)) Tuple0)
167focus: labEnd ((\a (b : 'Eq a) (c : 'Num a) d:a -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0)
168focus: labEnd ((\a (b : 'Eq a) (c : 'Num a) d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0)
169focus: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0)
170check: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0::a)
171infer: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0:a)
172focus: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) Tuple0:a)
173focus: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) \(f : a~'Tuple0)->Tuple0)
174focus: labEnd (\a (b : 'Eq a) (c : 'Num a) -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (== a b (fromInt a c 1) d)) (\a:='Tuple0 -> Tuple0))
175focus: labEnd (\a (b : 'Eq a) (c : 'Num a) a:='Tuple0 -> (\d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 Tuple0 (undefined ('Tuple0 -> 'Tuple0->'Bool) (undefined 'Int->'Tuple0 1) d)) Tuple0)
176focus: labEnd (\a (b : 'Eq a) (c : 'Num a) a:='Tuple0 -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 (undefined ('Tuple0 -> 'Tuple0->'Bool) (undefined 'Int->'Tuple0 1) Tuple0))
177focus: labEnd (\a (b : 'Eq a) a:='Tuple0 (c : 'Empty "no instance of 'Num on ???") -> 'BoolCase (\d:Type -> 'Tuple0) Tuple0 Tuple0 (undefined ('Tuple0 -> 'Tuple0->'Bool) (undefined 'Int->'Tuple0 1) Tuple0))
178!type error: no instance of 'Num on ???
179in testdata/language-features/basic-values/case03.reject.lc:1:10
180
181------------ tooltips
182testdata/language-features/basic-values/case03.reject.lc 1:10-3:10 Tuple0
183testdata/language-features/basic-values/case03.reject.lc 1:15-1:17 Tuple0
184testdata/language-features/basic-values/case03.reject.lc 2:8-2:10 Tuple0
185testdata/language-features/basic-values/case03.reject.lc 2:8-3:10 Bool->Tuple0
186testdata/language-features/basic-values/case03.reject.lc 3:8-3:10 Tuple0
diff --git a/testdata/language-features/basic-values/case04.reject.out b/testdata/language-features/basic-values/case04.reject.out
index 357a7f96..86bcc273 100644
--- a/testdata/language-features/basic-values/case04.reject.out
+++ b/testdata/language-features/basic-values/case04.reject.out
@@ -6,3 +6,60 @@ with
6in testdata/language-features/basic-values/case04.reject.lc:2:8: 6in testdata/language-features/basic-values/case04.reject.lc:2:8:
7 1 -> '1' 7 1 -> '1'
8 ^^^ 8 ^^^
9
10------------ trace
11infer: labelend ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) a)) (fromInt 1))
12infer: labEnd ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) a)) (fromInt 1))
13infer: labEnd ((\(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) a)) (fromInt 1))
14infer: labEnd ((\(a : _:'Type : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) a)) (fromInt 1))
15infer: labEnd ((\(b : (\a:'Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
16focus: labEnd ((\(b : (\a:Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
17infer: labEnd ((\(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
18focus: labEnd ((\(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
19focus: labEnd ((\(b : (\a -> a:Type)) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
20focus: labEnd ((\(c : (\a b:'Unit -> a)) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) c)) (fromInt 1))
21focus: labEnd ((\(b : \a->a) -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
22focus: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
23infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
24infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
25infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
26infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
27infer: labEnd ((\a b:a -> 'BoolCase (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
28focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\_:'Type -> _:'Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
29check: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) ((\_:'Type -> _:'Type) :: 'Bool->Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
30check: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type :: Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
31infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type : Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
32infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:'Type -> h) : Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
33focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:Type -> h) : Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
34infer: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
35focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
36focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h -> h:Type) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
37focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h i:'Unit -> h) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
38focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
39focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:'Bool -> g) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
40focus: labEnd ((\a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:Type -> g) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
41focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type g:Type -> 'BoolCase d e f g) (\h:Type -> c)) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
42focus: labEnd ((\a b:a -> (\c d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0 '1' (== (fromInt 1) b)) (fromInt 1))
43focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0) '1' (== (fromInt 1) b)) (fromInt 1))
44check: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0::c) '1' (== (fromInt 1) b)) (fromInt 1))
45infer: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0:c) '1' (== (fromInt 1) b)) (fromInt 1))
46focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) Tuple0:c) '1' (== (fromInt 1) b)) (fromInt 1))
47focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) \(h : c~'Tuple0)->Tuple0) '1' (== (fromInt 1) b)) (fromInt 1))
48focus: labEnd ((\a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Tuple0 -> Tuple0)) '1' (== (fromInt 1) b)) (fromInt 1))
49focus: labEnd ((\a b:a -> (\c c:='Tuple0 -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> 'Tuple0) d e f) Tuple0) '1' (== (fromInt 1) b)) (fromInt 1))
50focus: labEnd ((\a b:a -> (\c c:='Tuple0 d:Type e:Type -> 'BoolCase (\f:Type -> 'Tuple0) Tuple0 d e) '1' (== (fromInt 1) b)) (fromInt 1))
51focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) '1' (== (fromInt 1) b)) (fromInt 1))
52check: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) '1'::'Tuple0 (== (fromInt 1) b)) (fromInt 1))
53infer: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) '1':'Tuple0 (== (fromInt 1) b)) (fromInt 1))
54focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) '1':'Tuple0 (== (fromInt 1) b)) (fromInt 1))
55focus: labEnd ((\a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Tuple0) Tuple0 c d) \(f : 'Empty "can not unify\n\ESC[32m'Tuple0\ESC[m\nwith\n\ESC[32m'Char\ESC[m\n")->'1' (== (fromInt 1) b)) (fromInt 1))
56!type error: can not unify
57'Tuple0
58with
59'Char
60
61in testdata/language-features/basic-values/case04.reject.lc:2:8
62
63------------ tooltips
64testdata/language-features/basic-values/case04.reject.lc 2:8-2:11 Char
65testdata/language-features/basic-values/case04.reject.lc 3:8-3:10 Tuple0
diff --git a/testdata/language-features/basic-values/case05.out b/testdata/language-features/basic-values/case05.out
index d648ca93..21c1f5ee 100644
--- a/testdata/language-features/basic-values/case05.out
+++ b/testdata/language-features/basic-values/case05.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> a->'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/case05.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a} -> a->Char 5testdata/language-features/basic-values/case05.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a} -> a->Char
4testdata/language-features/basic-values/case05.lc 1:11-2:11 Char 6testdata/language-features/basic-values/case05.lc 1:11-2:11 Char
diff --git a/testdata/language-features/basic-values/case06.out b/testdata/language-features/basic-values/case06.out
index 1e0208bb..5c2857a0 100644
--- a/testdata/language-features/basic-values/case06.out
+++ b/testdata/language-features/basic-values/case06.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> a->'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/case06.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a} -> a->Char 5testdata/language-features/basic-values/case06.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a} -> a->Char
4testdata/language-features/basic-values/case06.lc 1:11-3:11 Char 6testdata/language-features/basic-values/case06.lc 1:11-3:11 Char
diff --git a/testdata/language-features/basic-values/data01.out b/testdata/language-features/basic-values/data01.out
index d84b92aa..71e63817 100644
--- a/testdata/language-features/basic-values/data01.out
+++ b/testdata/language-features/basic-values/data01.out
@@ -1,4 +1,23 @@
1main is not found 1main is not found
2------------ trace
3'A :: Type
4B :: 'A
5C :: 'A
6D :: 'A
7'ACase :: (b : 'A->Type) -> b B -> b C -> b D -> f:'A -> b f
8match'A :: (b : Type->Type) -> b 'A -> d:Type -> b d -> b d
9'E :: Type
10F :: 'E
11G :: 'Tuple0->'E
12H :: 'E
13'ECase :: (b : 'E->Type) -> b F -> (d:'Tuple0 -> b (G d)) -> b H -> g:'E -> b g
14match'E :: (b : Type->Type) -> b 'E -> d:Type -> b d -> b d
15'D1 :: Type
16C1 :: 'D1
17C2 :: 'Tuple0->'D1
18C3 :: 'D1
19'D1Case :: (b : 'D1->Type) -> b C1 -> (d:'Tuple0 -> b (C2 d)) -> b C3 -> g:'D1 -> b g
20match'D1 :: (b : Type->Type) -> b 'D1 -> d:Type -> b d -> b d
2------------ tooltips 21------------ tooltips
3testdata/language-features/basic-values/data01.lc 1:6-1:7 Type 22testdata/language-features/basic-values/data01.lc 1:6-1:7 Type
4testdata/language-features/basic-values/data01.lc 1:6-1:13 Type 23testdata/language-features/basic-values/data01.lc 1:6-1:13 Type
diff --git a/testdata/language-features/basic-values/data02.reject.out b/testdata/language-features/basic-values/data02.reject.out
index 78dbd88f..b5f349a0 100644
--- a/testdata/language-features/basic-values/data02.reject.out
+++ b/testdata/language-features/basic-values/data02.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/data02.reject.lc:1:6: 1testdata/language-features/basic-values/data02.reject.lc:1:6:
2unexpected 'd' 2unexpected 'd'
3expecting uppercase ident \ No newline at end of file 3expecting uppercase ident
4------------ trace
5!testdata/language-features/basic-values/data02.reject.lc:1:6:
6unexpected 'd'
7expecting uppercase ident
diff --git a/testdata/language-features/basic-values/data03.reject.out b/testdata/language-features/basic-values/data03.reject.out
index b20af35a..28dd835b 100644
--- a/testdata/language-features/basic-values/data03.reject.out
+++ b/testdata/language-features/basic-values/data03.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/data03.reject.lc:1:10: 1testdata/language-features/basic-values/data03.reject.lc:1:10:
2unexpected 'd' 2unexpected 'd'
3expecting uppercase ident \ No newline at end of file 3expecting uppercase ident
4------------ trace
5!testdata/language-features/basic-values/data03.reject.lc:1:10:
6unexpected 'd'
7expecting uppercase ident
diff --git a/testdata/language-features/basic-values/def01.out b/testdata/language-features/basic-values/def01.out
index 1f81f287..8d940c97 100644
--- a/testdata/language-features/basic-values/def01.out
+++ b/testdata/language-features/basic-values/def01.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3unit :: 'Tuple0
4fun1 :: {a} -> {b} -> {c : 'Num b} -> a->b
5fun2 :: {a} -> {b} -> {c} -> {d} -> {e} -> a -> b -> c -> d -> e->'Char
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-values/def01.lc 1:1-1:5 Tuple0 7testdata/language-features/basic-values/def01.lc 1:1-1:5 Tuple0
4testdata/language-features/basic-values/def01.lc 1:8-1:10 Tuple0 8testdata/language-features/basic-values/def01.lc 1:8-1:10 Tuple0
diff --git a/testdata/language-features/basic-values/def02.reject.out b/testdata/language-features/basic-values/def02.reject.out
index 51c85026..70ff66c1 100644
--- a/testdata/language-features/basic-values/def02.reject.out
+++ b/testdata/language-features/basic-values/def02.reject.out
@@ -1,3 +1,9 @@
1multiple pattern vars: 1multiple pattern vars:
2x is defined at testdata/language-features/basic-values/def02.reject.lc 1:8-1:9 2x is defined at testdata/language-features/basic-values/def02.reject.lc 1:8-1:9
3x is defined at testdata/language-features/basic-values/def02.reject.lc 1:6-1:7 3x is defined at testdata/language-features/basic-values/def02.reject.lc 1:6-1:7
4
5------------ trace
6!multiple pattern vars:
7x is defined at testdata/language-features/basic-values/def02.reject.lc 1:8-1:9
8x is defined at testdata/language-features/basic-values/def02.reject.lc 1:6-1:7
9
diff --git a/testdata/language-features/basic-values/def03.out b/testdata/language-features/basic-values/def03.out
index e90abd53..48739e24 100644
--- a/testdata/language-features/basic-values/def03.out
+++ b/testdata/language-features/basic-values/def03.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> {d : 'Eq a} -> {e : 'Num a} -> a->'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/def03.lc 1:1-1:4 {a} -> {b : Eq a} -> {c : Num a} -> {d : Eq a} -> {e : Num a} -> a->Char 5testdata/language-features/basic-values/def03.lc 1:1-1:4 {a} -> {b : Eq a} -> {c : Num a} -> {d : Eq a} -> {e : Num a} -> a->Char
4testdata/language-features/basic-values/def03.lc 1:9-1:12 Char 6testdata/language-features/basic-values/def03.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/def04.out b/testdata/language-features/basic-values/def04.out
index 0535096f..8a9dacfe 100644
--- a/testdata/language-features/basic-values/def04.out
+++ b/testdata/language-features/basic-values/def04.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> {d : 'Eq a} -> {e : 'Num a} -> a->'Char
4fun2 :: {a} -> {b} -> {c : 'Eq a} -> {d : 'Num a} -> {e : 'Eq a} -> {f : 'Num a} -> a -> b->'Char
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/def04.lc 1:1-1:4 {a} -> {b : Eq a} -> {c : Num a} -> {d : Eq a} -> {e : Num a} -> a->Char 6testdata/language-features/basic-values/def04.lc 1:1-1:4 {a} -> {b : Eq a} -> {c : Num a} -> {d : Eq a} -> {e : Num a} -> a->Char
4testdata/language-features/basic-values/def04.lc 1:9-1:12 Char 7testdata/language-features/basic-values/def04.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/def05.reject.out b/testdata/language-features/basic-values/def05.reject.out
index d154a88c..a2c8c27c 100644
--- a/testdata/language-features/basic-values/def05.reject.out
+++ b/testdata/language-features/basic-values/def05.reject.out
@@ -1,2 +1,5 @@
1testdata/language-features/basic-values/def05.reject.lc:4:1: 1testdata/language-features/basic-values/def05.reject.lc:4:1:
2different number of arguments of fun at testdata/language-features/basic-values/def05.reject.lc 1:1-1:4 \ No newline at end of file 2different number of arguments of fun at testdata/language-features/basic-values/def05.reject.lc 1:1-1:4
3------------ trace
4!testdata/language-features/basic-values/def05.reject.lc:4:1:
5different number of arguments of fun at testdata/language-features/basic-values/def05.reject.lc 1:1-1:4
diff --git a/testdata/language-features/basic-values/def06.reject.out b/testdata/language-features/basic-values/def06.reject.out
index 17983359..5db5da9c 100644
--- a/testdata/language-features/basic-values/def06.reject.out
+++ b/testdata/language-features/basic-values/def06.reject.out
@@ -1,2 +1,5 @@
1testdata/language-features/basic-values/def06.reject.lc:5:1: 1testdata/language-features/basic-values/def06.reject.lc:5:1:
2different number of arguments of fun2 at testdata/language-features/basic-values/def06.reject.lc 1:1-1:5 \ No newline at end of file 2different number of arguments of fun2 at testdata/language-features/basic-values/def06.reject.lc 1:1-1:5
3------------ trace
4!testdata/language-features/basic-values/def06.reject.lc:5:1:
5different number of arguments of fun2 at testdata/language-features/basic-values/def06.reject.lc 1:1-1:5
diff --git a/testdata/language-features/basic-values/def07.reject.out b/testdata/language-features/basic-values/def07.reject.out
index b341ff79..a8c509d2 100644
--- a/testdata/language-features/basic-values/def07.reject.out
+++ b/testdata/language-features/basic-values/def07.reject.out
@@ -3,4 +3,19 @@ fun _ = '_'
3^^^ 3^^^
4 and at testdata/language-features/basic-values/def07.reject.lc:1:1: 4 and at testdata/language-features/basic-values/def07.reject.lc:1:1:
5fun 1 = '1' 5fun 1 = '1'
6^^^ \ No newline at end of file 6^^^
7------------ trace
8fun :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> {d : 'Eq a} -> {e : 'Num a} -> a->'Char
9fun2 :: {a} -> {b} -> {c : 'Eq a} -> {d : 'Num a} -> a -> b->'Char
10fun :: {a} -> a->'Char
11!already defined fun at testdata/language-features/basic-values/def07.reject.lc:4:1
12 and at testdata/language-features/basic-values/def07.reject.lc:1:1
13------------ tooltips
14testdata/language-features/basic-values/def07.reject.lc 1:1-1:4 {a} -> {b : Eq a} -> {c : Num a} -> {d : Eq a} -> {e : Num a} -> a->Char
15testdata/language-features/basic-values/def07.reject.lc 1:9-1:12 Char
16testdata/language-features/basic-values/def07.reject.lc 1:9-2:12 Bool->Char
17testdata/language-features/basic-values/def07.reject.lc 2:9-2:12 Char
18testdata/language-features/basic-values/def07.reject.lc 3:1-3:5 {a} -> {b} -> {c : Eq a} -> {d : Num a} -> a -> b->Char
19testdata/language-features/basic-values/def07.reject.lc 3:12-3:15 Char
20testdata/language-features/basic-values/def07.reject.lc 4:1-4:4 {a} -> a->Char
21testdata/language-features/basic-values/def07.reject.lc 4:9-4:12 Char
diff --git a/testdata/language-features/basic-values/deforder01.out b/testdata/language-features/basic-values/deforder01.out
index 34a069d5..f0e01c94 100644
--- a/testdata/language-features/basic-values/deforder01.out
+++ b/testdata/language-features/basic-values/deforder01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3x :: 'Char
4y :: 'Char
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/deforder01.lc 1:1-1:2 Char 6testdata/language-features/basic-values/deforder01.lc 1:1-1:2 Char
4testdata/language-features/basic-values/deforder01.lc 1:5-1:8 Char 7testdata/language-features/basic-values/deforder01.lc 1:5-1:8 Char
diff --git a/testdata/language-features/basic-values/deforder02.out b/testdata/language-features/basic-values/deforder02.out
index f28a5a82..0466faf4 100644
--- a/testdata/language-features/basic-values/deforder02.out
+++ b/testdata/language-features/basic-values/deforder02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3x :: 'Char
4y :: 'Char
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/deforder02.lc 1:1-1:2 Char 6testdata/language-features/basic-values/deforder02.lc 1:1-1:2 Char
4testdata/language-features/basic-values/deforder02.lc 1:5-1:6 Char 7testdata/language-features/basic-values/deforder02.lc 1:5-1:6 Char
diff --git a/testdata/language-features/basic-values/deforder03.out b/testdata/language-features/basic-values/deforder03.out
index abb1237a..e4f758ce 100644
--- a/testdata/language-features/basic-values/deforder03.out
+++ b/testdata/language-features/basic-values/deforder03.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/deforder03.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder03.lc 1:1-1:6 Char
4testdata/language-features/basic-values/deforder03.lc 1:17-1:19 Tuple0 6testdata/language-features/basic-values/deforder03.lc 1:17-1:19 Tuple0
diff --git a/testdata/language-features/basic-values/deforder04.out b/testdata/language-features/basic-values/deforder04.out
index 80836aae..5c9a24e7 100644
--- a/testdata/language-features/basic-values/deforder04.out
+++ b/testdata/language-features/basic-values/deforder04.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/deforder04.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder04.lc 1:1-1:6 Char
4testdata/language-features/basic-values/deforder04.lc 1:17-1:18 Tuple0 6testdata/language-features/basic-values/deforder04.lc 1:17-1:18 Tuple0
diff --git a/testdata/language-features/basic-values/deforder05.out b/testdata/language-features/basic-values/deforder05.out
index 7851de6d..b09d51d9 100644
--- a/testdata/language-features/basic-values/deforder05.out
+++ b/testdata/language-features/basic-values/deforder05.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/deforder05.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder05.lc 1:1-1:6 Char
4testdata/language-features/basic-values/deforder05.lc 1:9-1:12 Char 6testdata/language-features/basic-values/deforder05.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/deforder06.out b/testdata/language-features/basic-values/deforder06.out
index 2619b3e0..d3782235 100644
--- a/testdata/language-features/basic-values/deforder06.out
+++ b/testdata/language-features/basic-values/deforder06.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/deforder06.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder06.lc 1:1-1:6 Char
4testdata/language-features/basic-values/deforder06.lc 1:9-1:12 Char 6testdata/language-features/basic-values/deforder06.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/fixity01.out b/testdata/language-features/basic-values/fixity01.out
index 4b05a9ff..eb0e5fc2 100644
--- a/testdata/language-features/basic-values/fixity01.out
+++ b/testdata/language-features/basic-values/fixity01.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->a
5<<<< :: {a} -> {b} -> a -> b->a
6>>>> :: {a} -> {b} -> a -> b->b
2------------ tooltips 7------------ tooltips
3testdata/language-features/basic-values/fixity01.lc 1:1-1:5 {a} -> {b} -> a -> b->a 8testdata/language-features/basic-values/fixity01.lc 1:1-1:5 {a} -> {b} -> a -> b->a
4testdata/language-features/basic-values/fixity01.lc 1:12-1:13 V3 9testdata/language-features/basic-values/fixity01.lc 1:12-1:13 V3
diff --git a/testdata/language-features/basic-values/fixity02.out b/testdata/language-features/basic-values/fixity02.out
index 96c6b4d0..a530d87a 100644
--- a/testdata/language-features/basic-values/fixity02.out
+++ b/testdata/language-features/basic-values/fixity02.out
@@ -1,4 +1,25 @@
1main is not found 1main is not found
2------------ trace
3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->b
5<@ :: {a} -> {b} -> a -> b->a
6@> :: {a} -> {b} -> a -> b->b
7value1 :: 'Float
8value2 :: 'Float
9value3 :: 'Float
10value4 :: 'Float
11value5 :: 'String
12value6 :: 'Char
13value7 :: 'String
14value8 :: 'Tuple0
15funValue1 :: 'Float
16funValue2 :: 'Float
17funValue3 :: 'Float
18funValue4 :: 'Float
19funValue5 :: 'String
20funValue6 :: 'Char
21funValue7 :: 'String
22funValue8 :: 'Tuple0
2------------ tooltips 23------------ tooltips
3testdata/language-features/basic-values/fixity02.lc 1:1-1:5 {a} -> {b} -> a -> b->a 24testdata/language-features/basic-values/fixity02.lc 1:1-1:5 {a} -> {b} -> a -> b->a
4testdata/language-features/basic-values/fixity02.lc 1:12-1:13 V3 25testdata/language-features/basic-values/fixity02.lc 1:12-1:13 V3
diff --git a/testdata/language-features/basic-values/if01.out b/testdata/language-features/basic-values/if01.out
index f04bb9f9..dcdc09f5 100644
--- a/testdata/language-features/basic-values/if01.out
+++ b/testdata/language-features/basic-values/if01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
4value2 :: 'Float
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/if01.lc 1:1-1:7 Tuple0 6testdata/language-features/basic-values/if01.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/if01.lc 1:10-1:33 Tuple0 7testdata/language-features/basic-values/if01.lc 1:10-1:33 Tuple0
diff --git a/testdata/language-features/basic-values/if03.reject.out b/testdata/language-features/basic-values/if03.reject.out
index b9503d90..d9e5b957 100644
--- a/testdata/language-features/basic-values/if03.reject.out
+++ b/testdata/language-features/basic-values/if03.reject.out
@@ -6,3 +6,43 @@ with
6in testdata/language-features/basic-values/if03.reject.lc:1:13: 6in testdata/language-features/basic-values/if03.reject.lc:1:13:
7value1 = if () then () else () 7value1 = if () then () else ()
8 ^^ 8 ^^
9
10------------ trace
11infer: labelend (primIfThenElse Tuple0 Tuple0 Tuple0)
12infer: labEnd (primIfThenElse Tuple0 Tuple0 Tuple0)
13infer: labEnd (primIfThenElse Tuple0 Tuple0 Tuple0)
14infer: labEnd (primIfThenElse Tuple0 Tuple0 Tuple0)
15infer: labEnd (primIfThenElse Tuple0 Tuple0 Tuple0)
16focus: labEnd (primIfThenElse Tuple0 Tuple0 Tuple0)
17focus: labEnd (primIfThenElse {_ : _:'Type} Tuple0 Tuple0 Tuple0)
18check: labEnd (primIfThenElse {(_ : _:'Type) :: Type} Tuple0 Tuple0 Tuple0)
19infer: labEnd (primIfThenElse {(_ : _:'Type) : Type} Tuple0 Tuple0 Tuple0)
20infer: labEnd (primIfThenElse {\(a : _:'Type)->a : Type} Tuple0 Tuple0 Tuple0)
21infer: labEnd (primIfThenElse {\(b : (\a:'Type -> a))->b : Type} Tuple0 Tuple0 Tuple0)
22focus: labEnd (primIfThenElse {\(b : (\a:Type -> a))->b : Type} Tuple0 Tuple0 Tuple0)
23infer: labEnd (primIfThenElse {\(b : \a->a)->b : Type} Tuple0 Tuple0 Tuple0)
24focus: labEnd (primIfThenElse {\(b : \a->a)->b : Type} Tuple0 Tuple0 Tuple0)
25focus: labEnd (primIfThenElse {(\a b:a -> b) : Type} Tuple0 Tuple0 Tuple0)
26infer: labEnd (primIfThenElse {(\a b:a -> b) : Type} Tuple0 Tuple0 Tuple0)
27focus: labEnd (primIfThenElse {(\a b:a -> b) : Type} Tuple0 Tuple0 Tuple0)
28focus: labEnd (primIfThenElse {\a b:a -> b:Type} Tuple0 Tuple0 Tuple0)
29focus: labEnd (primIfThenElse {\a b:a -> \(c : Type~a)->b} Tuple0 Tuple0 Tuple0)
30focus: labEnd (primIfThenElse {\a b:a a:=Type -> b} Tuple0 Tuple0 Tuple0)
31focus: labEnd (primIfThenElse {\a a:=Type -> \b->b} Tuple0 Tuple0 Tuple0)
32focus: labEnd (primIfThenElse {\a->a} Tuple0 Tuple0 Tuple0)
33focus: labEnd ((\a -> primIfThenElse {a}) Tuple0 Tuple0 Tuple0)
34focus: labEnd ((\a -> primIfThenElse a) Tuple0 Tuple0 Tuple0)
35focus: labEnd ((\a -> primIfThenElse a Tuple0) Tuple0 Tuple0)
36check: labEnd ((\a -> primIfThenElse a Tuple0::'Bool) Tuple0 Tuple0)
37infer: labEnd ((\a -> primIfThenElse a Tuple0:'Bool) Tuple0 Tuple0)
38focus: labEnd ((\a -> primIfThenElse a Tuple0:'Bool) Tuple0 Tuple0)
39focus: labEnd ((\a -> primIfThenElse a \(b : 'Empty "can not unify\n\ESC[32m'Bool\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n")->Tuple0) Tuple0 Tuple0)
40!type error: can not unify
41'Bool
42with
43'Tuple0
44
45in testdata/language-features/basic-values/if03.reject.lc:1:13
46
47------------ tooltips
48testdata/language-features/basic-values/if03.reject.lc 1:13-1:15 Tuple0
diff --git a/testdata/language-features/basic-values/if04.reject.out b/testdata/language-features/basic-values/if04.reject.out
index c4b4edd2..78a1afb7 100644
--- a/testdata/language-features/basic-values/if04.reject.out
+++ b/testdata/language-features/basic-values/if04.reject.out
@@ -6,3 +6,61 @@ with
6in testdata/language-features/basic-values/if04.reject.lc:1:31: 6in testdata/language-features/basic-values/if04.reject.lc:1:31:
7value1 = if True then () else '_' 7value1 = if True then () else '_'
8 ^^^ 8 ^^^
9
10------------ trace
11infer: labelend (primIfThenElse True Tuple0 '_')
12infer: labEnd (primIfThenElse True Tuple0 '_')
13infer: labEnd (primIfThenElse True Tuple0 '_')
14infer: labEnd (primIfThenElse True Tuple0 '_')
15infer: labEnd (primIfThenElse True Tuple0 '_')
16focus: labEnd (primIfThenElse True Tuple0 '_')
17focus: labEnd (primIfThenElse {_ : _:'Type} True Tuple0 '_')
18check: labEnd (primIfThenElse {(_ : _:'Type) :: Type} True Tuple0 '_')
19infer: labEnd (primIfThenElse {(_ : _:'Type) : Type} True Tuple0 '_')
20infer: labEnd (primIfThenElse {\(a : _:'Type)->a : Type} True Tuple0 '_')
21infer: labEnd (primIfThenElse {\(b : (\a:'Type -> a))->b : Type} True Tuple0 '_')
22focus: labEnd (primIfThenElse {\(b : (\a:Type -> a))->b : Type} True Tuple0 '_')
23infer: labEnd (primIfThenElse {\(b : \a->a)->b : Type} True Tuple0 '_')
24focus: labEnd (primIfThenElse {\(b : \a->a)->b : Type} True Tuple0 '_')
25focus: labEnd (primIfThenElse {(\a b:a -> b) : Type} True Tuple0 '_')
26infer: labEnd (primIfThenElse {(\a b:a -> b) : Type} True Tuple0 '_')
27focus: labEnd (primIfThenElse {(\a b:a -> b) : Type} True Tuple0 '_')
28focus: labEnd (primIfThenElse {\a b:a -> b:Type} True Tuple0 '_')
29focus: labEnd (primIfThenElse {\a b:a -> \(c : Type~a)->b} True Tuple0 '_')
30focus: labEnd (primIfThenElse {\a b:a a:=Type -> b} True Tuple0 '_')
31focus: labEnd (primIfThenElse {\a a:=Type -> \b->b} True Tuple0 '_')
32focus: labEnd (primIfThenElse {\a->a} True Tuple0 '_')
33focus: labEnd ((\a -> primIfThenElse {a}) True Tuple0 '_')
34focus: labEnd ((\a -> primIfThenElse a) True Tuple0 '_')
35focus: labEnd ((\a -> primIfThenElse a True) Tuple0 '_')
36check: labEnd ((\a -> primIfThenElse a True::'Bool) Tuple0 '_')
37infer: labEnd ((\a -> primIfThenElse a True:'Bool) Tuple0 '_')
38focus: labEnd ((\a -> primIfThenElse a True:'Bool) Tuple0 '_')
39focus: labEnd ((\a -> primIfThenElse a (\b:'Unit -> True)) Tuple0 '_')
40focus: labEnd ((\a -> primIfThenElse a True) Tuple0 '_')
41focus: labEnd ((\a -> primIfThenElse a True) Tuple0 '_')
42focus: labEnd ((\a -> primIfThenElse a True Tuple0) '_')
43check: labEnd ((\a -> primIfThenElse a True Tuple0::a) '_')
44infer: labEnd ((\a -> primIfThenElse a True Tuple0:a) '_')
45focus: labEnd ((\a -> primIfThenElse a True Tuple0:a) '_')
46focus: labEnd ((\a -> primIfThenElse a True \(b : a~'Tuple0)->Tuple0) '_')
47focus: labEnd ((\a -> primIfThenElse a True (\a:='Tuple0 -> Tuple0)) '_')
48focus: labEnd ((\a a:='Tuple0 -> primIfThenElse 'Tuple0 True Tuple0) '_')
49focus: labEnd ((\a a:='Tuple0 -> primIfThenElse 'Tuple0 True Tuple0) '_')
50focus: labEnd (primIfThenElse 'Tuple0 True Tuple0 '_')
51check: labEnd (primIfThenElse 'Tuple0 True Tuple0 '_'::'Tuple0)
52infer: labEnd (primIfThenElse 'Tuple0 True Tuple0 '_':'Tuple0)
53focus: labEnd (primIfThenElse 'Tuple0 True Tuple0 '_':'Tuple0)
54focus: labEnd (primIfThenElse 'Tuple0 True Tuple0 \(a : 'Empty "can not unify\n\ESC[32m'Tuple0\ESC[m\nwith\n\ESC[32m'Char\ESC[m\n")->'_')
55!type error: can not unify
56'Tuple0
57with
58'Char
59
60in testdata/language-features/basic-values/if04.reject.lc:1:31
61
62------------ tooltips
63testdata/language-features/basic-values/if04.reject.lc 1:13-1:17 Bool
64testdata/language-features/basic-values/if04.reject.lc 1:13-1:25 Tuple0->Tuple0
65testdata/language-features/basic-values/if04.reject.lc 1:23-1:25 Tuple0
66testdata/language-features/basic-values/if04.reject.lc 1:31-1:34 Char
diff --git a/testdata/language-features/basic-values/indentation01.out b/testdata/language-features/basic-values/indentation01.out
index a0ba4d19..5136fc74 100644
--- a/testdata/language-features/basic-values/indentation01.out
+++ b/testdata/language-features/basic-values/indentation01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3tuple1 :: 'Tuple0
4tuple2 :: 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/indentation01.lc 1:1-1:7 Tuple0 6testdata/language-features/basic-values/indentation01.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/indentation01.lc 1:10-1:12 Tuple0 7testdata/language-features/basic-values/indentation01.lc 1:10-1:12 Tuple0
diff --git a/testdata/language-features/basic-values/indentation02.out b/testdata/language-features/basic-values/indentation02.out
index b6510ce2..21e8f789 100644
--- a/testdata/language-features/basic-values/indentation02.out
+++ b/testdata/language-features/basic-values/indentation02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3tuple1 :: 'Tuple0
4tuple2 :: 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/indentation02.lc 1:3-1:9 Tuple0 6testdata/language-features/basic-values/indentation02.lc 1:3-1:9 Tuple0
4testdata/language-features/basic-values/indentation02.lc 1:12-1:14 Tuple0 7testdata/language-features/basic-values/indentation02.lc 1:12-1:14 Tuple0
diff --git a/testdata/language-features/basic-values/indentation03.reject.out b/testdata/language-features/basic-values/indentation03.reject.out
index d7b765a3..8b9c4420 100644
--- a/testdata/language-features/basic-values/indentation03.reject.out
+++ b/testdata/language-features/basic-values/indentation03.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/indentation03.reject.lc:2:10: 1testdata/language-features/basic-values/indentation03.reject.lc:2:10:
2unexpected '=' 2unexpected '='
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/basic-values/indentation03.reject.lc:2:10:
6unexpected '='
7expecting end of input
diff --git a/testdata/language-features/basic-values/indentation04.reject.out b/testdata/language-features/basic-values/indentation04.reject.out
index 4286f549..eb87cf2a 100644
--- a/testdata/language-features/basic-values/indentation04.reject.out
+++ b/testdata/language-features/basic-values/indentation04.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/indentation04.reject.lc:2:2: 1testdata/language-features/basic-values/indentation04.reject.lc:2:2:
2unexpected 't' 2unexpected 't'
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/basic-values/indentation04.reject.lc:2:2:
6unexpected 't'
7expecting end of input
diff --git a/testdata/language-features/basic-values/infix01.out b/testdata/language-features/basic-values/infix01.out
index 57c395cf..4af2bd86 100644
--- a/testdata/language-features/basic-values/infix01.out
+++ b/testdata/language-features/basic-values/infix01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> {b} -> a -> b->'Tuple0
4value :: {a} -> {b} -> a -> b->'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/infix01.lc 1:1-1:4 {a} -> {b} -> a -> b->Tuple0 6testdata/language-features/basic-values/infix01.lc 1:1-1:4 {a} -> {b} -> a -> b->Tuple0
4testdata/language-features/basic-values/infix01.lc 1:11-1:13 Tuple0 7testdata/language-features/basic-values/infix01.lc 1:11-1:13 Tuple0
diff --git a/testdata/language-features/basic-values/infix02.out b/testdata/language-features/basic-values/infix02.out
index bcb993af..d0e35e34 100644
--- a/testdata/language-features/basic-values/infix02.out
+++ b/testdata/language-features/basic-values/infix02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> {b} -> {c} -> a -> b -> c->'Tuple0
4value :: {a} -> {b} -> {c} -> a -> b -> c->'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/infix02.lc 1:1-1:4 {a} -> {b} -> {c} -> a -> b -> c->Tuple0 6testdata/language-features/basic-values/infix02.lc 1:1-1:4 {a} -> {b} -> {c} -> a -> b -> c->Tuple0
4testdata/language-features/basic-values/infix02.lc 1:13-1:15 Tuple0 7testdata/language-features/basic-values/infix02.lc 1:13-1:15 Tuple0
diff --git a/testdata/language-features/basic-values/infix03.out b/testdata/language-features/basic-values/infix03.out
index 86dbea4f..df850166 100644
--- a/testdata/language-features/basic-values/infix03.out
+++ b/testdata/language-features/basic-values/infix03.out
@@ -1,4 +1,12 @@
1main is not found 1main is not found
2------------ trace
3'D :: Type
4D2 :: 'Tuple0 -> 'Tuple0->'D
5D3 :: 'Tuple0 -> 'Tuple0 -> 'Tuple0->'D
6'DCase :: (b : 'D->Type) -> (c:'Tuple0 -> d:'Tuple0 -> b (D2 c d)) -> (f:'Tuple0 -> g:'Tuple0 -> h:'Tuple0 -> b (D3 f g h)) -> j:'D -> b j
7match'D :: (b : Type->Type) -> b 'D -> d:Type -> b d -> b d
8d2 :: 'Tuple0 -> 'Tuple0->'D
9d3 :: 'Tuple0 -> 'Tuple0 -> 'Tuple0->'D
2------------ tooltips 10------------ tooltips
3testdata/language-features/basic-values/infix03.lc 1:6-1:7 Type 11testdata/language-features/basic-values/infix03.lc 1:6-1:7 Type
4testdata/language-features/basic-values/infix03.lc 1:6-1:18 Type 12testdata/language-features/basic-values/infix03.lc 1:6-1:18 Type
diff --git a/testdata/language-features/basic-values/infix04.reject.out b/testdata/language-features/basic-values/infix04.reject.out
index 74aeb21b..111f5948 100644
--- a/testdata/language-features/basic-values/infix04.reject.out
+++ b/testdata/language-features/basic-values/infix04.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/infix04.reject.lc:3:14: 1testdata/language-features/basic-values/infix04.reject.lc:3:14:
2unexpected '`' 2unexpected '`'
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/basic-values/infix04.reject.lc:3:14:
6unexpected '`'
7expecting end of input
diff --git a/testdata/language-features/basic-values/lambda01.out b/testdata/language-features/basic-values/lambda01.out
index 97b39e37..238549fb 100644
--- a/testdata/language-features/basic-values/lambda01.out
+++ b/testdata/language-features/basic-values/lambda01.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3fun1 :: {a} -> a->'Tuple0
4fun2 :: {a} -> a->'Tuple0
5fun3 :: {a} -> a->'Tuple0
6fun4 :: {a} -> {b} -> {c} -> {d} -> {e} -> {f} -> {g} -> {h} -> {i} -> a -> b -> c -> d -> e -> f -> g -> h -> i->'Tuple0
2------------ tooltips 7------------ tooltips
3testdata/language-features/basic-values/lambda01.lc 1:1-1:5 {a} -> a->Tuple0 8testdata/language-features/basic-values/lambda01.lc 1:1-1:5 {a} -> a->Tuple0
4testdata/language-features/basic-values/lambda01.lc 1:14-1:16 Tuple0 9testdata/language-features/basic-values/lambda01.lc 1:14-1:16 Tuple0
diff --git a/testdata/language-features/basic-values/lambda02.reject.out b/testdata/language-features/basic-values/lambda02.reject.out
index 96b56132..a500c0e8 100644
--- a/testdata/language-features/basic-values/lambda02.reject.out
+++ b/testdata/language-features/basic-values/lambda02.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/lambda02.reject.lc:1:1: 1testdata/language-features/basic-values/lambda02.reject.lc:1:1:
2unexpected 'f' 2unexpected 'f'
3expecting end of input or operator definition \ No newline at end of file 3expecting end of input or operator definition
4------------ trace
5!testdata/language-features/basic-values/lambda02.reject.lc:1:1:
6unexpected 'f'
7expecting end of input or operator definition
diff --git a/testdata/language-features/basic-values/lambda03.out b/testdata/language-features/basic-values/lambda03.out
index d0dfa607..dcca4352 100644
--- a/testdata/language-features/basic-values/lambda03.out
+++ b/testdata/language-features/basic-values/lambda03.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->b
4fun2 :: {a} -> {b} -> {c} -> {d} -> a -> b -> c -> d->a
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/lambda03.lc 1:1-1:5 {a} -> {b} -> {c} -> a -> b -> c->b 6testdata/language-features/basic-values/lambda03.lc 1:1-1:5 {a} -> {b} -> {c} -> a -> b -> c->b
4testdata/language-features/basic-values/lambda03.lc 1:22-1:23 V3 7testdata/language-features/basic-values/lambda03.lc 1:22-1:23 V3
diff --git a/testdata/language-features/basic-values/let01.out b/testdata/language-features/basic-values/let01.out
index 273dc3c5..71622998 100644
--- a/testdata/language-features/basic-values/let01.out
+++ b/testdata/language-features/basic-values/let01.out
@@ -1,4 +1,10 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> {b : 'Num a}->a
4value2 :: {a} -> {b : 'Num a}->a
5value3 :: {a} -> {b : 'Num a}->a
6value4 :: {a} -> {b : 'Num a}->a
7value5 :: {a} -> {b : 'Num a}->a
2------------ tooltips 8------------ tooltips
3testdata/language-features/basic-values/let01.lc 1:1-1:7 {a} -> {b : Num a}->a 9testdata/language-features/basic-values/let01.lc 1:1-1:7 {a} -> {b : Num a}->a
4testdata/language-features/basic-values/let01.lc 3:1-3:7 {a} -> {b : Num a}->a 10testdata/language-features/basic-values/let01.lc 3:1-3:7 {a} -> {b : Num a}->a
diff --git a/testdata/language-features/basic-values/let02.out b/testdata/language-features/basic-values/let02.out
index 08431d3d..6c839e85 100644
--- a/testdata/language-features/basic-values/let02.out
+++ b/testdata/language-features/basic-values/let02.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/let02.lc 1:1-1:6 Tuple0 5testdata/language-features/basic-values/let02.lc 1:1-1:6 Tuple0
4testdata/language-features/basic-values/let02.lc 2:11-2:13 Tuple0 6testdata/language-features/basic-values/let02.lc 2:11-2:13 Tuple0
diff --git a/testdata/language-features/basic-values/literal01.out b/testdata/language-features/basic-values/literal01.out
index ff9332af..8bc84e87 100644
--- a/testdata/language-features/basic-values/literal01.out
+++ b/testdata/language-features/basic-values/literal01.out
@@ -1,4 +1,14 @@
1main is not found 1main is not found
2------------ trace
3intValue1 :: {a} -> {b : 'Num a}->a
4intValue2 :: {a} -> {b : 'Num a}->a
5intValue3 :: {a} -> {b : 'Num a}->a
6floatValue1 :: 'Float
7floatValue2 :: 'Float
8charValue :: 'Char
9stringValue1 :: 'String
10stringValue2 :: 'String
11natValue :: {a} -> {b : 'Num a}->a
2------------ tooltips 12------------ tooltips
3testdata/language-features/basic-values/literal01.lc 1:1-1:10 {a} -> {b : Num a}->a 13testdata/language-features/basic-values/literal01.lc 1:1-1:10 {a} -> {b : Num a}->a
4testdata/language-features/basic-values/literal01.lc 2:1-2:10 {a} -> {b : Num a}->a 14testdata/language-features/basic-values/literal01.lc 2:1-2:10 {a} -> {b : Num a}->a
diff --git a/testdata/language-features/basic-values/operator01.out b/testdata/language-features/basic-values/operator01.out
index 126d54fa..454ec7cd 100644
--- a/testdata/language-features/basic-values/operator01.out
+++ b/testdata/language-features/basic-values/operator01.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3#$# :: {a} -> {b} -> a -> b->'Tuple0
4$$# :: {a} -> {b} -> a -> b->'Tuple0
5$$$# :: {a} -> {b} -> a -> b->'Tuple0
6$$$ :: {a} -> {b} -> a -> b->'Tuple0
2------------ tooltips 7------------ tooltips
3testdata/language-features/basic-values/operator01.lc 1:3-1:6 {a} -> {b} -> a -> b->Tuple0 8testdata/language-features/basic-values/operator01.lc 1:3-1:6 {a} -> {b} -> a -> b->Tuple0
4testdata/language-features/basic-values/operator01.lc 1:11-1:13 Tuple0 9testdata/language-features/basic-values/operator01.lc 1:11-1:13 Tuple0
diff --git a/testdata/language-features/basic-values/operator02.reject.out b/testdata/language-features/basic-values/operator02.reject.out
index 929e71f5..971ce465 100644
--- a/testdata/language-features/basic-values/operator02.reject.out
+++ b/testdata/language-features/basic-values/operator02.reject.out
@@ -3,4 +3,17 @@ a #$# b = ()
3 ^^^ 3 ^^^
4 and at testdata/language-features/basic-values/operator02.reject.lc:1:3: 4 and at testdata/language-features/basic-values/operator02.reject.lc:1:3:
5a #$# b = () 5a #$# b = ()
6 ^^^ \ No newline at end of file 6 ^^^
7------------ trace
8#$# :: {a} -> {b} -> a -> b->'Tuple0
9fun :: {a} -> a->'Tuple0
10#$# :: {a} -> {b} -> a -> b->'Tuple0
11!already defined #$# at testdata/language-features/basic-values/operator02.reject.lc:3:3
12 and at testdata/language-features/basic-values/operator02.reject.lc:1:3
13------------ tooltips
14testdata/language-features/basic-values/operator02.reject.lc 1:3-1:6 {a} -> {b} -> a -> b->Tuple0
15testdata/language-features/basic-values/operator02.reject.lc 1:11-1:13 Tuple0
16testdata/language-features/basic-values/operator02.reject.lc 2:1-2:4 {a} -> a->Tuple0
17testdata/language-features/basic-values/operator02.reject.lc 2:9-2:11 Tuple0
18testdata/language-features/basic-values/operator02.reject.lc 3:3-3:6 {a} -> {b} -> a -> b->Tuple0
19testdata/language-features/basic-values/operator02.reject.lc 3:11-3:13 Tuple0
diff --git a/testdata/language-features/basic-values/operator03.reject.out b/testdata/language-features/basic-values/operator03.reject.out
index 20248e7e..d0e555bc 100644
--- a/testdata/language-features/basic-values/operator03.reject.out
+++ b/testdata/language-features/basic-values/operator03.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/operator03.reject.lc:1:1: 1testdata/language-features/basic-values/operator03.reject.lc:1:1:
2unexpected 'a' 2unexpected 'a'
3expecting end of input or operator definition \ No newline at end of file 3expecting end of input or operator definition
4------------ trace
5!testdata/language-features/basic-values/operator03.reject.lc:1:1:
6unexpected 'a'
7expecting end of input or operator definition
diff --git a/testdata/language-features/basic-values/operator04.reject.out b/testdata/language-features/basic-values/operator04.reject.out
index 5537b846..7ff5147d 100644
--- a/testdata/language-features/basic-values/operator04.reject.out
+++ b/testdata/language-features/basic-values/operator04.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/operator04.reject.lc:1:1: 1testdata/language-features/basic-values/operator04.reject.lc:1:1:
2unexpected 'a' 2unexpected 'a'
3expecting end of input or operator definition \ No newline at end of file 3expecting end of input or operator definition
4------------ trace
5!testdata/language-features/basic-values/operator04.reject.lc:1:1:
6unexpected 'a'
7expecting end of input or operator definition
diff --git a/testdata/language-features/basic-values/operator05.out b/testdata/language-features/basic-values/operator05.out
index 37e55c1c..d5f2131f 100644
--- a/testdata/language-features/basic-values/operator05.out
+++ b/testdata/language-features/basic-values/operator05.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/operator05.lc 1:1-1:7 Tuple0 5testdata/language-features/basic-values/operator05.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/operator05.lc 1:24-1:26 Tuple0 6testdata/language-features/basic-values/operator05.lc 1:24-1:26 Tuple0
diff --git a/testdata/language-features/basic-values/operator06.out b/testdata/language-features/basic-values/operator06.out
index a861c01e..65d0246b 100644
--- a/testdata/language-features/basic-values/operator06.out
+++ b/testdata/language-features/basic-values/operator06.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/operator06.lc 1:1-1:7 Tuple0 5testdata/language-features/basic-values/operator06.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/operator06.lc 1:10-1:12 Tuple0 6testdata/language-features/basic-values/operator06.lc 1:10-1:12 Tuple0
diff --git a/testdata/language-features/basic-values/redefine01.reject.out b/testdata/language-features/basic-values/redefine01.reject.out
index a5335520..12046fac 100644
--- a/testdata/language-features/basic-values/redefine01.reject.out
+++ b/testdata/language-features/basic-values/redefine01.reject.out
@@ -3,4 +3,17 @@ unit = ()
3^^^^ 3^^^^
4 and at testdata/language-features/basic-values/redefine01.reject.lc:1:1: 4 and at testdata/language-features/basic-values/redefine01.reject.lc:1:1:
5unit = () 5unit = ()
6^^^^ \ No newline at end of file 6^^^^
7------------ trace
8unit :: 'Tuple0
9tuple :: 'Tuple0
10unit :: 'Tuple0
11!already defined unit at testdata/language-features/basic-values/redefine01.reject.lc:3:1
12 and at testdata/language-features/basic-values/redefine01.reject.lc:1:1
13------------ tooltips
14testdata/language-features/basic-values/redefine01.reject.lc 1:1-1:5 Tuple0
15testdata/language-features/basic-values/redefine01.reject.lc 1:8-1:10 Tuple0
16testdata/language-features/basic-values/redefine01.reject.lc 2:1-2:6 Tuple0
17testdata/language-features/basic-values/redefine01.reject.lc 2:9-2:11 Tuple0
18testdata/language-features/basic-values/redefine01.reject.lc 3:1-3:5 Tuple0
19testdata/language-features/basic-values/redefine01.reject.lc 3:8-3:10 Tuple0
diff --git a/testdata/language-features/basic-values/redefine02.reject.out b/testdata/language-features/basic-values/redefine02.reject.out
index 479c56a6..39430955 100644
--- a/testdata/language-features/basic-values/redefine02.reject.out
+++ b/testdata/language-features/basic-values/redefine02.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/redefine02.reject.lc:3:8: 1testdata/language-features/basic-values/redefine02.reject.lc:3:8:
2expecting expression 2expecting expression
3redefined x at testdata/language-features/basic-values/redefine02.reject.lc 1:12-1:13 \ No newline at end of file 3redefined x at testdata/language-features/basic-values/redefine02.reject.lc 1:12-1:13
4------------ trace
5!testdata/language-features/basic-values/redefine02.reject.lc:3:8:
6expecting expression
7redefined x at testdata/language-features/basic-values/redefine02.reject.lc 1:12-1:13
diff --git a/testdata/language-features/basic-values/redefine03.reject.out b/testdata/language-features/basic-values/redefine03.reject.out
index 3daeca8c..edfcce60 100644
--- a/testdata/language-features/basic-values/redefine03.reject.out
+++ b/testdata/language-features/basic-values/redefine03.reject.out
@@ -1,2 +1,5 @@
1testdata/language-features/basic-values/redefine03.reject.lc:4:1: 1testdata/language-features/basic-values/redefine03.reject.lc:4:1:
2redefined x at testdata/language-features/basic-values/redefine03.reject.lc 2:9-2:10 \ No newline at end of file 2redefined x at testdata/language-features/basic-values/redefine03.reject.lc 2:9-2:10
3------------ trace
4!testdata/language-features/basic-values/redefine03.reject.lc:4:1:
5redefined x at testdata/language-features/basic-values/redefine03.reject.lc 2:9-2:10
diff --git a/testdata/language-features/basic-values/shadowing01.out b/testdata/language-features/basic-values/shadowing01.out
index 39d454e5..78f02ed9 100644
--- a/testdata/language-features/basic-values/shadowing01.out
+++ b/testdata/language-features/basic-values/shadowing01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/shadowing01.lc 1:1-1:6 Char 5testdata/language-features/basic-values/shadowing01.lc 1:1-1:6 Char
4testdata/language-features/basic-values/shadowing01.lc 2:11-2:14 Char 6testdata/language-features/basic-values/shadowing01.lc 2:11-2:14 Char
diff --git a/testdata/language-features/basic-values/shadowing02.out b/testdata/language-features/basic-values/shadowing02.out
index 0d886f51..09696b46 100644
--- a/testdata/language-features/basic-values/shadowing02.out
+++ b/testdata/language-features/basic-values/shadowing02.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3c :: {a} -> {b : 'Num a}->a
4world :: 'String
5value2 :: 'Char
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-values/shadowing02.lc 1:1-1:2 {a} -> {b : Num a}->a 7testdata/language-features/basic-values/shadowing02.lc 1:1-1:2 {a} -> {b : Num a}->a
4testdata/language-features/basic-values/shadowing02.lc 2:1-2:6 String 8testdata/language-features/basic-values/shadowing02.lc 2:1-2:6 String
diff --git a/testdata/language-features/basic-values/shadowing03.out b/testdata/language-features/basic-values/shadowing03.out
index 8a224525..64539fb3 100644
--- a/testdata/language-features/basic-values/shadowing03.out
+++ b/testdata/language-features/basic-values/shadowing03.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3x :: {a} -> {b} -> a -> b->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/shadowing03.lc 1:1-1:2 {a} -> {b} -> a -> b->Tuple0 5testdata/language-features/basic-values/shadowing03.lc 1:1-1:2 {a} -> {b} -> a -> b->Tuple0
4testdata/language-features/basic-values/shadowing03.lc 1:9-1:11 Tuple0 6testdata/language-features/basic-values/shadowing03.lc 1:9-1:11 Tuple0
diff --git a/testdata/language-features/basic-values/shadowing04.out b/testdata/language-features/basic-values/shadowing04.out
index 91e72e21..ee76e57b 100644
--- a/testdata/language-features/basic-values/shadowing04.out
+++ b/testdata/language-features/basic-values/shadowing04.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3__ :: {a} -> {b} -> a -> b->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/shadowing04.lc 1:1-1:3 {a} -> {b} -> a -> b->Tuple0 5testdata/language-features/basic-values/shadowing04.lc 1:1-1:3 {a} -> {b} -> a -> b->Tuple0
4testdata/language-features/basic-values/shadowing04.lc 1:11-1:13 Tuple0 6testdata/language-features/basic-values/shadowing04.lc 1:11-1:13 Tuple0
diff --git a/testdata/language-features/basic-values/tuple01.out b/testdata/language-features/basic-values/tuple01.out
index 94ddefa3..5c591a9c 100644
--- a/testdata/language-features/basic-values/tuple01.out
+++ b/testdata/language-features/basic-values/tuple01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3unit :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/tuple01.lc 1:1-1:5 Tuple0 5testdata/language-features/basic-values/tuple01.lc 1:1-1:5 Tuple0
4testdata/language-features/basic-values/tuple01.lc 1:8-1:10 Tuple0 6testdata/language-features/basic-values/tuple01.lc 1:8-1:10 Tuple0
diff --git a/testdata/language-features/basic-values/tuple02.out b/testdata/language-features/basic-values/tuple02.out
index 928ad0d1..847bc4ee 100644
--- a/testdata/language-features/basic-values/tuple02.out
+++ b/testdata/language-features/basic-values/tuple02.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3tuple1 :: {a} -> {b : 'Num a} -> 'Tuple5 a 'Float 'Char 'String 'Tuple0
4tuple2 :: 'Tuple2 'Tuple0 'Tuple0
5tuple3 :: 'Tuple2 ('Tuple2 'String 'Char) 'Tuple0
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-values/tuple02.lc 1:1-1:7 {a} -> {b : Num a} -> Tuple5 a Float Char String Tuple0 7testdata/language-features/basic-values/tuple02.lc 1:1-1:7 {a} -> {b : Num a} -> Tuple5 a Float Char String Tuple0
4testdata/language-features/basic-values/tuple02.lc 1:10-1:33 Tuple5 V1 Float Char String Tuple0 8testdata/language-features/basic-values/tuple02.lc 1:10-1:33 Tuple5 V1 Float Char String Tuple0
diff --git a/testdata/language-features/basic-values/typesig01.out b/testdata/language-features/basic-values/typesig01.out
index 9dffd2e6..00c7fd81 100644
--- a/testdata/language-features/basic-values/typesig01.out
+++ b/testdata/language-features/basic-values/typesig01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Char
4value2 :: 'Char
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/typesig01.lc 1:11-1:15 Type 6testdata/language-features/basic-values/typesig01.lc 1:11-1:15 Type
4testdata/language-features/basic-values/typesig01.lc 2:1-2:7 Char 7testdata/language-features/basic-values/typesig01.lc 2:1-2:7 Char
diff --git a/testdata/language-features/basic-values/typesig02.out b/testdata/language-features/basic-values/typesig02.out
index e8fbfa8d..b9d5e913 100644
--- a/testdata/language-features/basic-values/typesig02.out
+++ b/testdata/language-features/basic-values/typesig02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Char
4value2 :: 'Char
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/typesig02.lc 1:1-1:7 Char 6testdata/language-features/basic-values/typesig02.lc 1:1-1:7 Char
4testdata/language-features/basic-values/typesig02.lc 1:10-1:13 Char 7testdata/language-features/basic-values/typesig02.lc 1:10-1:13 Char
diff --git a/testdata/language-features/basic-values/typesig03.out b/testdata/language-features/basic-values/typesig03.out
index 89068e23..0ae5725b 100644
--- a/testdata/language-features/basic-values/typesig03.out
+++ b/testdata/language-features/basic-values/typesig03.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->'Tuple0
4fun2 :: {a} -> {b} -> {c} -> a -> b -> c->'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/typesig03.lc 1:9-1:10 V5 6testdata/language-features/basic-values/typesig03.lc 1:9-1:10 V5
4testdata/language-features/basic-values/typesig03.lc 1:9-1:26 Type 7testdata/language-features/basic-values/typesig03.lc 1:9-1:26 Type
diff --git a/testdata/language-features/basic-values/typesig04.out b/testdata/language-features/basic-values/typesig04.out
index 80406f80..d497b9e3 100644
--- a/testdata/language-features/basic-values/typesig04.out
+++ b/testdata/language-features/basic-values/typesig04.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> b->c -> 'Tuple0
4fun2 :: {a} -> {b} -> {c} -> a -> b->c -> 'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/typesig04.lc 1:9-1:10 V5 6testdata/language-features/basic-values/typesig04.lc 1:9-1:10 V5
4testdata/language-features/basic-values/typesig04.lc 1:9-1:28 Type 7testdata/language-features/basic-values/typesig04.lc 1:9-1:28 Type
diff --git a/testdata/language-features/basic-values/typesig05.out b/testdata/language-features/basic-values/typesig05.out
index a8d61bf4..07a8d216 100644
--- a/testdata/language-features/basic-values/typesig05.out
+++ b/testdata/language-features/basic-values/typesig05.out
@@ -1,4 +1,11 @@
1main is not found 1main is not found
2------------ trace
3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->b
5value1 :: 'Char
6value2 :: 'String
7value3 :: 'Char
8value4 :: 'String
2------------ tooltips 9------------ tooltips
3testdata/language-features/basic-values/typesig05.lc 1:1-1:5 {a} -> {b} -> a -> b->a 10testdata/language-features/basic-values/typesig05.lc 1:1-1:5 {a} -> {b} -> a -> b->a
4testdata/language-features/basic-values/typesig05.lc 1:12-1:13 V3 11testdata/language-features/basic-values/typesig05.lc 1:12-1:13 V3
diff --git a/testdata/language-features/basic-values/typesig06.out b/testdata/language-features/basic-values/typesig06.out
index f5ea0a54..f9454255 100644
--- a/testdata/language-features/basic-values/typesig06.out
+++ b/testdata/language-features/basic-values/typesig06.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3funL :: {a} -> {b} -> a -> b->a
4<@ :: {a} -> {b} -> a -> b->a
5value1 :: 'String
6value2 :: 'String
2------------ tooltips 7------------ tooltips
3testdata/language-features/basic-values/typesig06.lc 1:1-1:5 {a} -> {b} -> a -> b->a 8testdata/language-features/basic-values/typesig06.lc 1:1-1:5 {a} -> {b} -> a -> b->a
4testdata/language-features/basic-values/typesig06.lc 1:12-1:13 V3 9testdata/language-features/basic-values/typesig06.lc 1:12-1:13 V3
diff --git a/testdata/language-features/basic-values/typesig07.out b/testdata/language-features/basic-values/typesig07.out
index 9a9cf28a..2efd57d6 100644
--- a/testdata/language-features/basic-values/typesig07.out
+++ b/testdata/language-features/basic-values/typesig07.out
@@ -1,4 +1,11 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Int
4value2 :: 'Int
5value3 :: 'Int
6value4 :: 'Tuple0 -> 'Tuple0->'Tuple0
7@@@ :: 'Tuple0 -> 'Tuple0->'Tuple0
8value6 :: 'Tuple0 -> 'Tuple0->'Tuple0
2------------ tooltips 9------------ tooltips
3testdata/language-features/basic-values/typesig07.lc 1:27-1:30 Type 10testdata/language-features/basic-values/typesig07.lc 1:27-1:30 Type
4testdata/language-features/basic-values/typesig07.lc 3:1-3:7 Int 11testdata/language-features/basic-values/typesig07.lc 3:1-3:7 Int
diff --git a/testdata/language-features/basic-values/typesig08.reject.out b/testdata/language-features/basic-values/typesig08.reject.out
index e28976d0..0cba15d4 100644
--- a/testdata/language-features/basic-values/typesig08.reject.out
+++ b/testdata/language-features/basic-values/typesig08.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/typesig08.reject.lc:1:1: 1testdata/language-features/basic-values/typesig08.reject.lc:1:1:
2unexpected 'v' 2unexpected 'v'
3expecting end of input or typed ident \ No newline at end of file 3expecting end of input or typed ident
4------------ trace
5!testdata/language-features/basic-values/typesig08.reject.lc:1:1:
6unexpected 'v'
7expecting end of input or typed ident
diff --git a/testdata/language-features/basic-values/typesig09.reject.out b/testdata/language-features/basic-values/typesig09.reject.out
index d85c1eab..ae4b5954 100644
--- a/testdata/language-features/basic-values/typesig09.reject.out
+++ b/testdata/language-features/basic-values/typesig09.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/typesig09.reject.lc:1:1: 1testdata/language-features/basic-values/typesig09.reject.lc:1:1:
2unexpected 'v' 2unexpected 'v'
3expecting end of input or typed ident \ No newline at end of file 3expecting end of input or typed ident
4------------ trace
5!testdata/language-features/basic-values/typesig09.reject.lc:1:1:
6unexpected 'v'
7expecting end of input or typed ident
diff --git a/testdata/language-features/basic-values/typesyn01.out b/testdata/language-features/basic-values/typesyn01.out
index b9130142..3e2d214b 100644
--- a/testdata/language-features/basic-values/typesyn01.out
+++ b/testdata/language-features/basic-values/typesyn01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3'MyUnit :: Type
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/typesyn01.lc 1:6-1:12 Type 5testdata/language-features/basic-values/typesyn01.lc 1:6-1:12 Type
4testdata/language-features/basic-values/typesyn01.lc 1:15-1:17 Type 6testdata/language-features/basic-values/typesyn01.lc 1:15-1:17 Type
diff --git a/testdata/language-features/basic-values/typesyn02.out b/testdata/language-features/basic-values/typesyn02.out
index 4199e7c1..417facac 100644
--- a/testdata/language-features/basic-values/typesyn02.out
+++ b/testdata/language-features/basic-values/typesyn02.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3'MyUnit :: Type
4fun :: {a} -> a -> 'Tuple0->'Tuple0
2------------ tooltips 5------------ tooltips
3testdata/language-features/basic-values/typesyn02.lc 1:6-1:12 Type 6testdata/language-features/basic-values/typesyn02.lc 1:6-1:12 Type
4testdata/language-features/basic-values/typesyn02.lc 1:15-1:17 Type 7testdata/language-features/basic-values/typesyn02.lc 1:15-1:17 Type
diff --git a/testdata/language-features/basic-values/typesyn03.reject.out b/testdata/language-features/basic-values/typesyn03.reject.out
index 53f16b3f..6e4373da 100644
--- a/testdata/language-features/basic-values/typesyn03.reject.out
+++ b/testdata/language-features/basic-values/typesyn03.reject.out
@@ -3,4 +3,14 @@ type MyUnit = ()
3 ^^^^^^ 3 ^^^^^^
4 and at testdata/language-features/basic-values/typesyn03.reject.lc:1:6: 4 and at testdata/language-features/basic-values/typesyn03.reject.lc:1:6:
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ \ No newline at end of file 6 ^^^^^^
7------------ trace
8'MyUnit :: Type
9'MyUnit :: Type
10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn03.reject.lc:2:6
11 and at testdata/language-features/basic-values/typesyn03.reject.lc:1:6
12------------ tooltips
13testdata/language-features/basic-values/typesyn03.reject.lc 1:6-1:12 Type
14testdata/language-features/basic-values/typesyn03.reject.lc 1:15-1:17 Type
15testdata/language-features/basic-values/typesyn03.reject.lc 2:6-2:12 Type
16testdata/language-features/basic-values/typesyn03.reject.lc 2:15-2:17 Type
diff --git a/testdata/language-features/basic-values/typesyn04.reject.out b/testdata/language-features/basic-values/typesyn04.reject.out
index d1b582e9..d7fe48a4 100644
--- a/testdata/language-features/basic-values/typesyn04.reject.out
+++ b/testdata/language-features/basic-values/typesyn04.reject.out
@@ -3,4 +3,14 @@ type MyUnit = ()
3 ^^^^^^ 3 ^^^^^^
4 and at testdata/language-features/basic-values/typesyn04.reject.lc:1:6: 4 and at testdata/language-features/basic-values/typesyn04.reject.lc:1:6:
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ \ No newline at end of file 6 ^^^^^^
7------------ trace
8'MyUnit :: Type
9'MyUnit :: Type
10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn04.reject.lc:2:6
11 and at testdata/language-features/basic-values/typesyn04.reject.lc:1:6
12------------ tooltips
13testdata/language-features/basic-values/typesyn04.reject.lc 1:6-1:12 Type
14testdata/language-features/basic-values/typesyn04.reject.lc 1:15-1:17 Type
15testdata/language-features/basic-values/typesyn04.reject.lc 2:6-2:12 Type
16testdata/language-features/basic-values/typesyn04.reject.lc 2:15-2:17 Type
diff --git a/testdata/language-features/basic-values/where01.out b/testdata/language-features/basic-values/where01.out
index e7ac122a..6dfabd94 100644
--- a/testdata/language-features/basic-values/where01.out
+++ b/testdata/language-features/basic-values/where01.out
@@ -1,4 +1,16 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
4value2 :: 'Tuple0
5value3 :: 'Tuple0
6value4 :: 'Tuple0
7value5 :: 'Tuple0
8value6 :: 'Tuple0
9value7 :: 'Tuple0
10value8 :: 'Tuple0
11value9 :: 'Tuple0
12value10 :: 'Tuple0
13value11 :: 'Tuple0
2------------ tooltips 14------------ tooltips
3testdata/language-features/basic-values/where01.lc 1:1-1:7 Tuple0 15testdata/language-features/basic-values/where01.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/where01.lc 1:10-1:12 Tuple0 16testdata/language-features/basic-values/where01.lc 1:10-1:12 Tuple0
diff --git a/testdata/language-features/basic-values/where02.reject.out b/testdata/language-features/basic-values/where02.reject.out
index a7a50cdb..835dd06f 100644
--- a/testdata/language-features/basic-values/where02.reject.out
+++ b/testdata/language-features/basic-values/where02.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/where02.reject.lc:4:5: 1testdata/language-features/basic-values/where02.reject.lc:4:5:
2unexpected '=' 2unexpected '='
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/basic-values/where02.reject.lc:4:5:
6unexpected '='
7expecting end of input
diff --git a/testdata/language-features/basic-values/where03.reject.out b/testdata/language-features/basic-values/where03.reject.out
index 87af7cec..efc900b5 100644
--- a/testdata/language-features/basic-values/where03.reject.out
+++ b/testdata/language-features/basic-values/where03.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/basic-values/where03.reject.lc:4:2: 1testdata/language-features/basic-values/where03.reject.lc:4:2:
2unexpected 'y' 2unexpected 'y'
3expecting end of input \ No newline at end of file 3expecting end of input
4------------ trace
5!testdata/language-features/basic-values/where03.reject.lc:4:2:
6unexpected 'y'
7expecting end of input
diff --git a/testdata/language-features/basic-values/where04.out b/testdata/language-features/basic-values/where04.out
index df9eab9d..5f026ff7 100644
--- a/testdata/language-features/basic-values/where04.out
+++ b/testdata/language-features/basic-values/where04.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3value1 :: 'Tuple0
4value2 :: 'Tuple0
5value3 :: 'Tuple0
2------------ tooltips 6------------ tooltips
3testdata/language-features/basic-values/where04.lc 1:1-1:7 Tuple0 7testdata/language-features/basic-values/where04.lc 1:1-1:7 Tuple0
4testdata/language-features/basic-values/where04.lc 1:18-1:19 Tuple0 8testdata/language-features/basic-values/where04.lc 1:18-1:19 Tuple0
diff --git a/testdata/language-features/basic-values/where05.out b/testdata/language-features/basic-values/where05.out
index b8885a1c..cd1ac74e 100644
--- a/testdata/language-features/basic-values/where05.out
+++ b/testdata/language-features/basic-values/where05.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3value1 :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
4value2 :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
5value3 :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
6value4 :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
2------------ tooltips 7------------ tooltips
3testdata/language-features/basic-values/where05.lc 1:1-1:7 {a} -> {b : Eq a} -> {c : Num a}->Tuple0 8testdata/language-features/basic-values/where05.lc 1:1-1:7 {a} -> {b : Eq a} -> {c : Num a}->Tuple0
4testdata/language-features/basic-values/where05.lc 1:10-3:10 Tuple0 9testdata/language-features/basic-values/where05.lc 1:10-3:10 Tuple0
diff --git a/testdata/language-features/basic-values/where06.reject.out b/testdata/language-features/basic-values/where06.reject.out
index 2ef694f2..704fc983 100644
--- a/testdata/language-features/basic-values/where06.reject.out
+++ b/testdata/language-features/basic-values/where06.reject.out
@@ -1,2 +1,5 @@
1testdata/language-features/basic-values/where06.reject.lc:7:1: 1testdata/language-features/basic-values/where06.reject.lc:7:1:
2redefined x at testdata/language-features/basic-values/where06.reject.lc 3:1-3:2 \ No newline at end of file 2redefined x at testdata/language-features/basic-values/where06.reject.lc 3:1-3:2
3------------ trace
4!testdata/language-features/basic-values/where06.reject.lc:7:1:
5redefined x at testdata/language-features/basic-values/where06.reject.lc 3:1-3:2
diff --git a/testdata/language-features/basic-values/wildcard01.out b/testdata/language-features/basic-values/wildcard01.out
index 3853bbc2..52e7b6b8 100644
--- a/testdata/language-features/basic-values/wildcard01.out
+++ b/testdata/language-features/basic-values/wildcard01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3funUnit :: {a} -> a->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/basic-values/wildcard01.lc 1:1-1:8 {a} -> a->Tuple0 5testdata/language-features/basic-values/wildcard01.lc 1:1-1:8 {a} -> a->Tuple0
4testdata/language-features/basic-values/wildcard01.lc 1:13-1:15 Tuple0 6testdata/language-features/basic-values/wildcard01.lc 1:13-1:15 Tuple0
diff --git a/testdata/language-features/comment/comment05.reject.out b/testdata/language-features/comment/comment05.reject.out
index 843e91f9..b40aa61f 100644
--- a/testdata/language-features/comment/comment05.reject.out
+++ b/testdata/language-features/comment/comment05.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/comment/comment05.reject.lc:4:1: 1testdata/language-features/comment/comment05.reject.lc:4:1:
2unexpected '-' 2unexpected '-'
3expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident \ No newline at end of file 3expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident
4------------ trace
5!testdata/language-features/comment/comment05.reject.lc:4:1:
6unexpected '-'
7expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident
diff --git a/testdata/language-features/guard/guard01.out b/testdata/language-features/guard/guard01.out
index 836af983..08d55d07 100644
--- a/testdata/language-features/guard/guard01.out
+++ b/testdata/language-features/guard/guard01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard01.lc 1:1-1:6 Tuple0 5testdata/language-features/guard/guard01.lc 1:1-1:6 Tuple0
4testdata/language-features/guard/guard01.lc 1:9-1:13 Bool 6testdata/language-features/guard/guard01.lc 1:9-1:13 Bool
diff --git a/testdata/language-features/guard/guard02.reject.out b/testdata/language-features/guard/guard02.reject.out
index c86f000d..93ab7ae2 100644
--- a/testdata/language-features/guard/guard02.reject.out
+++ b/testdata/language-features/guard/guard02.reject.out
@@ -6,3 +6,93 @@ with
6in testdata/language-features/guard/guard02.reject.lc:2:12: 6in testdata/language-features/guard/guard02.reject.lc:2:12:
7 | True = () 7 | True = ()
8 ^^ 8 ^^
9
10------------ trace
11infer: 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
12infer: 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
13infer: 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
14infer: 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
15infer: 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
16focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
17check: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) ((\_:'Type -> _:'Type) :: 'Bool->Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
18check: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> _:'Type :: Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
19infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> _:'Type : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
20infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> (\f:'Type -> f) : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
21focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> (\f:Type -> f) : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
22infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
23focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
24focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool f -> f:Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
25focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool f g:'Unit -> f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
26focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
27focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e f:'Bool -> e) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
28focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e f:Type -> e) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
29focus: (\a -> (\b:Type c:Type d:Type e:Type -> 'BoolCase b c d e) (\f:Type -> a)) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
30focus: (\a b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False) (labelend Tuple0) True
31focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False)) (labelend Tuple0) True
32check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False :: a)) (labelend Tuple0) True
33infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
34infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
35infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
36infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
37focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\_:'Type -> _:'Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
38check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) ((\_:'Type -> _:'Type) :: 'Bool->Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
39check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> _:'Type :: Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
40infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> _:'Type : Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
41infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> (\k:'Type -> k) : Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
42focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> (\k:Type -> k) : Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
43infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> \k->k : Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
44focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> \k->k : Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
45focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool k -> k:Type) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
46focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool k l:'Unit -> k) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
47focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j:'Bool -> \k->k) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
48focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j k:'Bool -> j) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
49focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type g:Type h:Type i:Type -> 'BoolCase f g h i) (\j k:Type -> j) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
50focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type j:Type -> 'BoolCase g h i j) (\k:Type -> f)) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
51focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labelend undefined) (labelend "") False : a)) (labelend Tuple0) True
52focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labelend undefined)) (labelend "") False : a)) (labelend Tuple0) True
53check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labelend undefined :: f)) (labelend "") False : a)) (labelend Tuple0) True
54check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labEnd undefined::f)) (labelend "") False : a)) (labelend Tuple0) True
55focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labEnd (undefined f))) (labelend "") False : a)) (labelend Tuple0) True
56focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type i:Type -> 'BoolCase (\j:Type -> f) g h i) (labend (undefined f))) (labelend "") False : a)) (labelend Tuple0) True
57focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labelend "") False : a)) (labelend Tuple0) True
58focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labelend "")) False : a)) (labelend Tuple0) True
59check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labelend "" :: f)) False : a)) (labelend Tuple0) True
60check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labEnd ""::f)) False : a)) (labelend Tuple0) True
61infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labEnd "":f)) False : a)) (labelend Tuple0) True
62focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labEnd "":f)) False : a)) (labelend Tuple0) True
63focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labEnd \(j : f~'String)->"")) False : a)) (labelend Tuple0) True
64focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (labEnd (\f:='String -> ""))) False : a)) (labelend Tuple0) True
65focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (\f:='String -> labEnd "")) False : a)) (labelend Tuple0) True
66focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f -> (\g:Type h:Type -> 'BoolCase (\i:Type -> f) (labend (undefined f)) g h) (\f:='String -> labend "")) False : a)) (labelend Tuple0) True
67focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f f:='String -> (\g:Type h:Type -> 'BoolCase (\i:Type -> 'String) (labend (undefined 'String)) g h) (labend "")) False : a)) (labelend Tuple0) True
68focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f f:='String g:Type -> 'BoolCase (\h:Type -> 'String) (labend (undefined 'String)) (labend "") g) False : a)) (labelend Tuple0) True
69focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False : a)) (labelend Tuple0) True
70focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\(f : a~'String) g:Type -> 'BoolCase (\h:Type -> 'String) (labend (undefined 'String)) (labend "") g) False)) (labelend Tuple0) True
71focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) ((\a:='String f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False)) (labelend Tuple0) True
72focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False)) (labelend Tuple0) True
73check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False::'Bool)) (labelend Tuple0) True
74infer: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False:'Bool)) (labelend Tuple0) True
75focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False:'Bool)) (labelend Tuple0) True
76focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) (\h:'Unit -> False))) (labelend Tuple0) True
77focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> (\f:Type -> 'BoolCase (\g:Type -> 'String) (labend (undefined 'String)) (labend "") f) False)) (labelend Tuple0) True
78focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (\a:='String -> labend (undefined 'String))) (labelend Tuple0) True
79focus: (\a a:='String -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> 'String) b c d) (labend (undefined 'String))) (labelend Tuple0) True
80focus: (\a a:='String b:Type c:Type -> 'BoolCase (\d:Type -> 'String) (labend (undefined 'String)) b c) (labelend Tuple0) True
81focus: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labelend Tuple0) True
82check: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labelend Tuple0 :: 'String) True
83check: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labEnd Tuple0::'String) True
84infer: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labEnd Tuple0:'String) True
85focus: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labEnd Tuple0:'String) True
86focus: (\a:Type b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) a b) (labEnd \(d : 'Empty "can not unify\n\ESC[32m'String\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n")->Tuple0) True
87!type error: can not unify
88'String
89with
90'Tuple0
91
92in testdata/language-features/guard/guard02.reject.lc:2:12
93
94------------ tooltips
95testdata/language-features/guard/guard02.reject.lc 2:12-2:14 Tuple0
96testdata/language-features/guard/guard02.reject.lc 3:5-3:10 Bool
97testdata/language-features/guard/guard02.reject.lc 3:5-3:15 String
98testdata/language-features/guard/guard02.reject.lc 3:13-3:15 String
diff --git a/testdata/language-features/guard/guard03.out b/testdata/language-features/guard/guard03.out
index a089657e..3f240c28 100644
--- a/testdata/language-features/guard/guard03.out
+++ b/testdata/language-features/guard/guard03.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard03.lc 1:1-1:6 String 5testdata/language-features/guard/guard03.lc 1:1-1:6 String
4testdata/language-features/guard/guard03.lc 2:5-2:9 Bool 6testdata/language-features/guard/guard03.lc 2:5-2:9 Bool
diff --git a/testdata/language-features/guard/guard04.out b/testdata/language-features/guard/guard04.out
index 32a56e10..c76efc74 100644
--- a/testdata/language-features/guard/guard04.out
+++ b/testdata/language-features/guard/guard04.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard04.lc 1:1-1:6 String 5testdata/language-features/guard/guard04.lc 1:1-1:6 String
4testdata/language-features/guard/guard04.lc 2:5-2:9 Bool 6testdata/language-features/guard/guard04.lc 2:5-2:9 Bool
diff --git a/testdata/language-features/guard/guard05.reject.out b/testdata/language-features/guard/guard05.reject.out
index 22fcb6c1..503ca8c3 100644
--- a/testdata/language-features/guard/guard05.reject.out
+++ b/testdata/language-features/guard/guard05.reject.out
@@ -6,3 +6,57 @@ with
6in testdata/language-features/guard/guard05.reject.lc:1:9: 6in testdata/language-features/guard/guard05.reject.lc:1:9:
7value | () = "wrong" 7value | () = "wrong"
8 ^^ 8 ^^
9
10------------ trace
11infer: 'BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
12infer: 'BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
13infer: 'BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
14infer: 'BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
15infer: 'BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
16focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\_:'Type -> _:'Type) (labelend undefined) (labelend "wrong") Tuple0
17check: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) ((\_:'Type -> _:'Type) :: 'Bool->Type) (labelend undefined) (labelend "wrong") Tuple0
18check: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> _:'Type :: Type) (labelend undefined) (labelend "wrong") Tuple0
19infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> _:'Type : Type) (labelend undefined) (labelend "wrong") Tuple0
20infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> (\f:'Type -> f) : Type) (labelend undefined) (labelend "wrong") Tuple0
21focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> (\f:Type -> f) : Type) (labelend undefined) (labelend "wrong") Tuple0
22infer: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f : Type) (labelend undefined) (labelend "wrong") Tuple0
23focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f : Type) (labelend undefined) (labelend "wrong") Tuple0
24focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool f -> f:Type) (labelend undefined) (labelend "wrong") Tuple0
25focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool f g:'Unit -> f) (labelend undefined) (labelend "wrong") Tuple0
26focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e:'Bool -> \f->f) (labelend undefined) (labelend "wrong") Tuple0
27focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e f:'Bool -> e) (labelend undefined) (labelend "wrong") Tuple0
28focus: (\a:Type b:Type c:Type d:Type -> 'BoolCase a b c d) (\e f:Type -> e) (labelend undefined) (labelend "wrong") Tuple0
29focus: (\a -> (\b:Type c:Type d:Type e:Type -> 'BoolCase b c d e) (\f:Type -> a)) (labelend undefined) (labelend "wrong") Tuple0
30focus: (\a b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labelend undefined) (labelend "wrong") Tuple0
31focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labelend undefined)) (labelend "wrong") Tuple0
32check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labelend undefined :: a)) (labelend "wrong") Tuple0
33check: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labEnd undefined::a)) (labelend "wrong") Tuple0
34focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labEnd (undefined a))) (labelend "wrong") Tuple0
35focus: (\a -> (\b:Type c:Type d:Type -> 'BoolCase (\e:Type -> a) b c d) (labend (undefined a))) (labelend "wrong") Tuple0
36focus: (\a b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labelend "wrong") Tuple0
37focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labelend "wrong")) Tuple0
38check: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labelend "wrong" :: a)) Tuple0
39check: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labEnd "wrong"::a)) Tuple0
40infer: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labEnd "wrong":a)) Tuple0
41focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labEnd "wrong":a)) Tuple0
42focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labEnd \(e : a~'String)->"wrong")) Tuple0
43focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (labEnd (\a:='String -> "wrong"))) Tuple0
44focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (\a:='String -> labEnd "wrong")) Tuple0
45focus: (\a -> (\b:Type c:Type -> 'BoolCase (\d:Type -> a) (labend (undefined a)) b c) (\a:='String -> labend "wrong")) Tuple0
46focus: (\a a:='String -> (\b:Type c:Type -> 'BoolCase (\d:Type -> 'String) (labend (undefined 'String)) b c) (labend "wrong")) Tuple0
47focus: (\a a:='String b:Type -> 'BoolCase (\c:Type -> 'String) (labend (undefined 'String)) (labend "wrong") b) Tuple0
48focus: (\a:Type -> 'BoolCase (\b:Type -> 'String) (labend (undefined 'String)) (labend "wrong") a) Tuple0
49check: (\a:Type -> 'BoolCase (\b:Type -> 'String) (labend (undefined 'String)) (labend "wrong") a) Tuple0::'Bool
50infer: (\a:Type -> 'BoolCase (\b:Type -> 'String) (labend (undefined 'String)) (labend "wrong") a) Tuple0:'Bool
51focus: (\a:Type -> 'BoolCase (\b:Type -> 'String) (labend (undefined 'String)) (labend "wrong") a) Tuple0:'Bool
52focus: (\a:Type -> 'BoolCase (\b:Type -> 'String) (labend (undefined 'String)) (labend "wrong") a) \(c : 'Empty "can not unify\n\ESC[32m'Bool\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n")->Tuple0
53!type error: can not unify
54'Bool
55with
56'Tuple0
57
58in testdata/language-features/guard/guard05.reject.lc:1:9
59
60------------ tooltips
61testdata/language-features/guard/guard05.reject.lc 1:9-1:11 Tuple0
62testdata/language-features/guard/guard05.reject.lc 1:14-1:21 String
diff --git a/testdata/language-features/guard/guard06.out b/testdata/language-features/guard/guard06.out
index e5d34851..b1d4e64a 100644
--- a/testdata/language-features/guard/guard06.out
+++ b/testdata/language-features/guard/guard06.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard06.lc 1:1-1:6 Tuple0 5testdata/language-features/guard/guard06.lc 1:1-1:6 Tuple0
4testdata/language-features/guard/guard06.lc 1:9-1:18 Bool 6testdata/language-features/guard/guard06.lc 1:9-1:18 Bool
diff --git a/testdata/language-features/guard/guard07.out b/testdata/language-features/guard/guard07.out
index 49ff4d32..94f6b321 100644
--- a/testdata/language-features/guard/guard07.out
+++ b/testdata/language-features/guard/guard07.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard07.lc 1:1-1:6 String 5testdata/language-features/guard/guard07.lc 1:1-1:6 String
4testdata/language-features/guard/guard07.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard07.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard08.out b/testdata/language-features/guard/guard08.out
index 28455f56..0fb1cbe1 100644
--- a/testdata/language-features/guard/guard08.out
+++ b/testdata/language-features/guard/guard08.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard08.lc 1:1-1:6 String 5testdata/language-features/guard/guard08.lc 1:1-1:6 String
4testdata/language-features/guard/guard08.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard08.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard09.out b/testdata/language-features/guard/guard09.out
index 3d5a4e4c..58167221 100644
--- a/testdata/language-features/guard/guard09.out
+++ b/testdata/language-features/guard/guard09.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard09.lc 1:1-1:6 String 5testdata/language-features/guard/guard09.lc 1:1-1:6 String
4testdata/language-features/guard/guard09.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard09.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard10.reject.out b/testdata/language-features/guard/guard10.reject.out
index bf0c6c95..def53d7b 100644
--- a/testdata/language-features/guard/guard10.reject.out
+++ b/testdata/language-features/guard/guard10.reject.out
@@ -1,3 +1,7 @@
1testdata/language-features/guard/guard10.reject.lc:2:1: 1testdata/language-features/guard/guard10.reject.lc:2:1:
2unexpected '|' 2unexpected '|'
3expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident \ No newline at end of file 3expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident
4------------ trace
5!testdata/language-features/guard/guard10.reject.lc:2:1:
6unexpected '|'
7expecting "class", "data", "infix", "infixl", "infixr", "instance", "type", end of input, lhs, operator definition, pattern, type family, type instance, or typed ident
diff --git a/testdata/language-features/guard/guard11.out b/testdata/language-features/guard/guard11.out
index f41b910b..7fa45b09 100644
--- a/testdata/language-features/guard/guard11.out
+++ b/testdata/language-features/guard/guard11.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'Bool->'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard11.lc 1:1-1:4 Bool->String 5testdata/language-features/guard/guard11.lc 1:1-1:4 Bool->String
4testdata/language-features/guard/guard11.lc 2:5-2:6 V1 6testdata/language-features/guard/guard11.lc 2:5-2:6 V1
diff --git a/testdata/language-features/guard/guard12.reject.out b/testdata/language-features/guard/guard12.reject.out
index e356d64e..f39309aa 100644
--- a/testdata/language-features/guard/guard12.reject.out
+++ b/testdata/language-features/guard/guard12.reject.out
@@ -6,3 +6,103 @@ with
6in testdata/language-features/guard/guard12.reject.lc:1:13: 6in testdata/language-features/guard/guard12.reject.lc:1:13:
7fun x | x = () | otherwise = 'a' 7fun x | x = () | otherwise = 'a'
8 ^^ 8 ^^
9
10------------ trace
11infer: \(a : _:'Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) a
12infer: \(a : _:'Type : Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) a
13infer: \(b : (\a:'Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
14focus: \(b : (\a:Type -> a) : Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
15infer: \(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
16focus: \(b : \a->a : Type) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
17focus: \(b : (\a -> a:Type)) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
18focus: \(c : (\a b:'Unit -> a)) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) c
19focus: \(b : \a->a) -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
20focus: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
21infer: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
22infer: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
23infer: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
24infer: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
25infer: \a b:a -> 'BoolCase (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
26focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\_:'Type -> _:'Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
27check: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) ((\_:'Type -> _:'Type) :: 'Bool->Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
28check: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type :: Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
29infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> _:'Type : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
30infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:'Type -> h) : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
31focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> (\h:Type -> h) : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
32infer: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
33focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h : Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
34focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h -> h:Type) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
35focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool h i:'Unit -> h) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
36focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g:'Bool -> \h->h) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
37focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:'Bool -> g) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
38focus: \a b:a -> (\c:Type d:Type e:Type f:Type -> 'BoolCase c d e f) (\g h:Type -> g) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
39focus: \a b:a -> (\c -> (\d:Type e:Type f:Type g:Type -> 'BoolCase d e f g) (\h:Type -> c)) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
40focus: \a b:a -> (\c d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise) (labelend Tuple0) b
41focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise)) (labelend Tuple0) b
42check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise :: c)) (labelend Tuple0) b
43infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
44infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
45infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
46infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ('BoolCase (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
47focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\_:'Type -> _:'Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
48check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) ((\_:'Type -> _:'Type) :: 'Bool->Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
49check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> _:'Type :: Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
50infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> _:'Type : Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
51infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> (\m:'Type -> m) : Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
52focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> (\m:Type -> m) : Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
53infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> \m->m : Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
54focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> \m->m : Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
55focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool m -> m:Type) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
56focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool m n:'Unit -> m) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
57focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l:'Bool -> \m->m) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
58focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l m:'Bool -> l) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
59focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type i:Type j:Type k:Type -> 'BoolCase h i j k) (\l m:Type -> l) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
60focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type l:Type -> 'BoolCase i j k l) (\m:Type -> h)) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
61focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labelend undefined) (labelend 'a') otherwise : c)) (labelend Tuple0) b
62focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labelend undefined)) (labelend 'a') otherwise : c)) (labelend Tuple0) b
63check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labelend undefined :: h)) (labelend 'a') otherwise : c)) (labelend Tuple0) b
64check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labEnd undefined::h)) (labelend 'a') otherwise : c)) (labelend Tuple0) b
65focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labEnd (undefined h))) (labelend 'a') otherwise : c)) (labelend Tuple0) b
66focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type k:Type -> 'BoolCase (\l:Type -> h) i j k) (labend (undefined h))) (labelend 'a') otherwise : c)) (labelend Tuple0) b
67focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labelend 'a') otherwise : c)) (labelend Tuple0) b
68focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labelend 'a')) otherwise : c)) (labelend Tuple0) b
69check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labelend 'a' :: h)) otherwise : c)) (labelend Tuple0) b
70check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labEnd 'a'::h)) otherwise : c)) (labelend Tuple0) b
71infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labEnd 'a':h)) otherwise : c)) (labelend Tuple0) b
72focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labEnd 'a':h)) otherwise : c)) (labelend Tuple0) b
73focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labEnd \(l : h~'Char)->'a')) otherwise : c)) (labelend Tuple0) b
74focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (labEnd (\h:='Char -> 'a'))) otherwise : c)) (labelend Tuple0) b
75focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (\h:='Char -> labEnd 'a')) otherwise : c)) (labelend Tuple0) b
76focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h -> (\i:Type j:Type -> 'BoolCase (\k:Type -> h) (labend (undefined h)) i j) (\h:='Char -> labend 'a')) otherwise : c)) (labelend Tuple0) b
77focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h h:='Char -> (\i:Type j:Type -> 'BoolCase (\k:Type -> 'Char) (labend (undefined 'Char)) i j) (labend 'a')) otherwise : c)) (labelend Tuple0) b
78focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h h:='Char i:Type -> 'BoolCase (\j:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') i) otherwise : c)) (labelend Tuple0) b
79focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) otherwise : c)) (labelend Tuple0) b
80focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\(h : c~'Char) i:Type -> 'BoolCase (\j:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') i) otherwise)) (labelend Tuple0) b
81focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) ((\c:='Char h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) otherwise)) (labelend Tuple0) b
82focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) otherwise)) (labelend Tuple0) b
83check: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) otherwise::'Bool)) (labelend Tuple0) b
84infer: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) otherwise:'Bool)) (labelend Tuple0) b
85focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) True:'Bool)) (labelend Tuple0) b
86focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) (\j:'Unit -> True))) (labelend Tuple0) b
87focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> (\h:Type -> 'BoolCase (\i:Type -> 'Char) (labend (undefined 'Char)) (labend 'a') h) True)) (labelend Tuple0) b
88focus: \a b:a -> (\c -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> c) d e f) (\c:='Char -> labend 'a')) (labelend Tuple0) b
89focus: \a b:a -> (\c c:='Char -> (\d:Type e:Type f:Type -> 'BoolCase (\g:Type -> 'Char) d e f) (labend 'a')) (labelend Tuple0) b
90focus: \a b:a -> (\c c:='Char d:Type e:Type -> 'BoolCase (\f:Type -> 'Char) (labend 'a') d e) (labelend Tuple0) b
91focus: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labelend Tuple0) b
92check: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labelend Tuple0 :: 'Char) b
93check: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labEnd Tuple0::'Char) b
94infer: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labEnd Tuple0:'Char) b
95focus: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labEnd Tuple0:'Char) b
96focus: \a b:a -> (\c:Type d:Type -> 'BoolCase (\e:Type -> 'Char) (labend 'a') c d) (labEnd \(f : 'Empty "can not unify\n\ESC[32m'Char\ESC[m\nwith\n\ESC[32m'Tuple0\ESC[m\n")->Tuple0) b
97!type error: can not unify
98'Char
99with
100'Tuple0
101
102in testdata/language-features/guard/guard12.reject.lc:1:13
103
104------------ tooltips
105testdata/language-features/guard/guard12.reject.lc 1:13-1:15 Tuple0
106testdata/language-features/guard/guard12.reject.lc 1:18-1:27 Bool
107testdata/language-features/guard/guard12.reject.lc 1:18-1:33 Char
108testdata/language-features/guard/guard12.reject.lc 1:30-1:33 Char
diff --git a/testdata/language-features/guard/guard13.out b/testdata/language-features/guard/guard13.out
index a7ed9d91..66454293 100644
--- a/testdata/language-features/guard/guard13.out
+++ b/testdata/language-features/guard/guard13.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'Bool->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard13.lc 1:1-1:4 Bool->Tuple0 5testdata/language-features/guard/guard13.lc 1:1-1:4 Bool->Tuple0
4testdata/language-features/guard/guard13.lc 1:7-1:8 V1 6testdata/language-features/guard/guard13.lc 1:7-1:8 V1
diff --git a/testdata/language-features/guard/guard14.out b/testdata/language-features/guard/guard14.out
index 54db63f5..4d3d87b7 100644
--- a/testdata/language-features/guard/guard14.out
+++ b/testdata/language-features/guard/guard14.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard14.lc 1:1-1:6 Tuple0 5testdata/language-features/guard/guard14.lc 1:1-1:6 Tuple0
4testdata/language-features/guard/guard14.lc 1:17-1:21 Bool 6testdata/language-features/guard/guard14.lc 1:17-1:21 Bool
diff --git a/testdata/language-features/guard/guard15.out b/testdata/language-features/guard/guard15.out
index 4e9c4936..39a32bd8 100644
--- a/testdata/language-features/guard/guard15.out
+++ b/testdata/language-features/guard/guard15.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard15.lc 1:1-1:6 Tuple0 5testdata/language-features/guard/guard15.lc 1:1-1:6 Tuple0
4testdata/language-features/guard/guard15.lc 1:9-1:11 Tuple0 6testdata/language-features/guard/guard15.lc 1:9-1:11 Tuple0
diff --git a/testdata/language-features/guard/guard16.out b/testdata/language-features/guard/guard16.out
index 92a1d76f..1bb7ed36 100644
--- a/testdata/language-features/guard/guard16.out
+++ b/testdata/language-features/guard/guard16.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3value :: {a} -> {b : 'Eq a} -> {c : 'Num a}->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/guard/guard16.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a}->Tuple0 5testdata/language-features/guard/guard16.lc 1:1-1:6 {a} -> {b : Eq a} -> {c : Num a}->Tuple0
4testdata/language-features/guard/guard16.lc 1:9-3:10 Tuple0 6testdata/language-features/guard/guard16.lc 1:9-3:10 Tuple0
diff --git a/testdata/language-features/module/Hello01.out b/testdata/language-features/module/Hello01.out
index 4a75d8a2..6d911abc 100644
--- a/testdata/language-features/module/Hello01.out
+++ b/testdata/language-features/module/Hello01.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'String
4world :: 'String
2------------ tooltips 5------------ tooltips
3testdata/language-features/module/Hello01.lc 3:1-3:6 String 6testdata/language-features/module/Hello01.lc 3:1-3:6 String
4testdata/language-features/module/Hello01.lc 3:9-3:16 String 7testdata/language-features/module/Hello01.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/ModulePackage/SubModule01.out b/testdata/language-features/module/ModulePackage/SubModule01.out
index 552ec94a..5d80d9f9 100644
--- a/testdata/language-features/module/ModulePackage/SubModule01.out
+++ b/testdata/language-features/module/ModulePackage/SubModule01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/ModulePackage/SubModule01.lc 3:1-3:6 String 5testdata/language-features/module/ModulePackage/SubModule01.lc 3:1-3:6 String
4testdata/language-features/module/ModulePackage/SubModule01.lc 3:9-3:16 String 6testdata/language-features/module/ModulePackage/SubModule01.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Moduledef02.reject.out b/testdata/language-features/module/Moduledef02.reject.out
index 9b34f38b..5ee63b0c 100644
--- a/testdata/language-features/module/Moduledef02.reject.out
+++ b/testdata/language-features/module/Moduledef02.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef02.reject.lc:2:1: 1testdata/language-features/module/Moduledef02.reject.lc:2:1:
2unexpected end of input 2unexpected end of input
3expecting "where" or '(' \ No newline at end of file 3expecting "where" or '('
diff --git a/testdata/language-features/module/Moduledef03.reject.out b/testdata/language-features/module/Moduledef03.reject.out
index 8a61dd85..848d1159 100644
--- a/testdata/language-features/module/Moduledef03.reject.out
+++ b/testdata/language-features/module/Moduledef03.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef03.reject.lc:1:8: 1testdata/language-features/module/Moduledef03.reject.lc:1:8:
2unexpected 'm' 2unexpected 'm'
3expecting module name \ No newline at end of file 3expecting module name
diff --git a/testdata/language-features/module/Moduledef04.reject.out b/testdata/language-features/module/Moduledef04.reject.out
index b949fc7b..d3fa3e4d 100644
--- a/testdata/language-features/module/Moduledef04.reject.out
+++ b/testdata/language-features/module/Moduledef04.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef04.reject.lc:1:8: 1testdata/language-features/module/Moduledef04.reject.lc:1:8:
2unexpected 'm' 2unexpected 'm'
3expecting module name \ No newline at end of file 3expecting module name
diff --git a/testdata/language-features/module/Moduledef05.reject.out b/testdata/language-features/module/Moduledef05.reject.out
index f0a43dac..8dac151c 100644
--- a/testdata/language-features/module/Moduledef05.reject.out
+++ b/testdata/language-features/module/Moduledef05.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef05.reject.lc:3:1: 1testdata/language-features/module/Moduledef05.reject.lc:3:1:
2unexpected 'h' 2unexpected 'h'
3expecting "where" or '(' \ No newline at end of file 3expecting "where" or '('
diff --git a/testdata/language-features/module/Moduledef06.out b/testdata/language-features/module/Moduledef06.out
index 6287b54e..421619b1 100644
--- a/testdata/language-features/module/Moduledef06.out
+++ b/testdata/language-features/module/Moduledef06.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/Moduledef06.lc 3:1-3:6 String 5testdata/language-features/module/Moduledef06.lc 3:1-3:6 String
4testdata/language-features/module/Moduledef06.lc 3:9-3:16 String 6testdata/language-features/module/Moduledef06.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Moduledef07.out b/testdata/language-features/module/Moduledef07.out
index 5be09755..87502a46 100644
--- a/testdata/language-features/module/Moduledef07.out
+++ b/testdata/language-features/module/Moduledef07.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/Moduledef07.lc 5:1-5:6 String 5testdata/language-features/module/Moduledef07.lc 5:1-5:6 String
4testdata/language-features/module/Moduledef07.lc 5:9-5:16 String 6testdata/language-features/module/Moduledef07.lc 5:9-5:16 String
diff --git a/testdata/language-features/module/Moduledef11.reject.out b/testdata/language-features/module/Moduledef11.reject.out
index 1c71c838..43c5b5b5 100644
--- a/testdata/language-features/module/Moduledef11.reject.out
+++ b/testdata/language-features/module/Moduledef11.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef11.reject.lc:1:8: 1testdata/language-features/module/Moduledef11.reject.lc:1:8:
2unexpected '1' 2unexpected '1'
3expecting module name \ No newline at end of file 3expecting module name
diff --git a/testdata/language-features/module/Moduledef12.reject.out b/testdata/language-features/module/Moduledef12.reject.out
index 738ba12a..f1098d5f 100644
--- a/testdata/language-features/module/Moduledef12.reject.out
+++ b/testdata/language-features/module/Moduledef12.reject.out
@@ -1,3 +1,3 @@
1testdata/language-features/module/Moduledef12.reject.lc:1:8: 1testdata/language-features/module/Moduledef12.reject.lc:1:8:
2unexpected '&' 2unexpected '&'
3expecting module name \ No newline at end of file 3expecting module name
diff --git a/testdata/language-features/module/Moduledef13.out b/testdata/language-features/module/Moduledef13.out
index f6ff90ef..75e35b24 100644
--- a/testdata/language-features/module/Moduledef13.out
+++ b/testdata/language-features/module/Moduledef13.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/Moduledef13.lc 3:1-3:6 String 5testdata/language-features/module/Moduledef13.lc 3:1-3:6 String
4testdata/language-features/module/Moduledef13.lc 3:9-3:16 String 6testdata/language-features/module/Moduledef13.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/TypeSyn01Mod.out b/testdata/language-features/module/TypeSyn01Mod.out
index 74690ade..d1af6425 100644
--- a/testdata/language-features/module/TypeSyn01Mod.out
+++ b/testdata/language-features/module/TypeSyn01Mod.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3'MyUnit :: Type
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/TypeSyn01Mod.lc 2:6-2:12 Type 5testdata/language-features/module/TypeSyn01Mod.lc 2:6-2:12 Type
4testdata/language-features/module/TypeSyn01Mod.lc 2:15-2:17 Type 6testdata/language-features/module/TypeSyn01Mod.lc 2:15-2:17 Type
diff --git a/testdata/language-features/module/import01.out b/testdata/language-features/module/import01.out
index aad58356..0f691e51 100644
--- a/testdata/language-features/module/import01.out
+++ b/testdata/language-features/module/import01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3x :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import01.lc 3:1-3:2 String 5testdata/language-features/module/import01.lc 3:1-3:2 String
4testdata/language-features/module/import01.lc 3:5-3:10 String 6testdata/language-features/module/import01.lc 3:5-3:10 String
diff --git a/testdata/language-features/module/import02.reject.out b/testdata/language-features/module/import02.reject.out
index c643646b..9a3f7bd4 100644
--- a/testdata/language-features/module/import02.reject.out
+++ b/testdata/language-features/module/import02.reject.out
@@ -1,3 +1,7 @@
1can't find: hello2 in testdata/language-features/module/import02.reject.lc:4:5: 1can't find: hello2 in testdata/language-features/module/import02.reject.lc:4:5:
2x = hello2 2x = hello2
3 ^^^^^^ \ No newline at end of file 3 ^^^^^^
4------------ trace
5infer: labelend hello2
6infer: labEnd hello2
7!can't find: hello2 in testdata/language-features/module/import02.reject.lc:4:5
diff --git a/testdata/language-features/module/import03.reject.out b/testdata/language-features/module/import03.reject.out
index 775b67cb..76410065 100644
--- a/testdata/language-features/module/import03.reject.out
+++ b/testdata/language-features/module/import03.reject.out
@@ -1,3 +1,7 @@
1can't find: world in testdata/language-features/module/import03.reject.lc:3:5: 1can't find: world in testdata/language-features/module/import03.reject.lc:3:5:
2x = world 2x = world
3 ^^^^^ \ No newline at end of file 3 ^^^^^
4------------ trace
5infer: labelend world
6infer: labEnd world
7!can't find: world in testdata/language-features/module/import03.reject.lc:3:5
diff --git a/testdata/language-features/module/import04.reject.out b/testdata/language-features/module/import04.reject.out
index ede369bd..5980131e 100644
--- a/testdata/language-features/module/import04.reject.out
+++ b/testdata/language-features/module/import04.reject.out
@@ -3,4 +3,11 @@ hello = "hello"
3^^^^^ 3^^^^^
4 and at testdata/language-features/module/Hello01.lc:3:1: 4 and at testdata/language-features/module/Hello01.lc:3:1:
5hello = "hello" 5hello = "hello"
6^^^^^ \ No newline at end of file 6^^^^^
7------------ trace
8hello :: 'String
9!already defined hello at testdata/language-features/module/import04.reject.lc:4:1
10 and at testdata/language-features/module/Hello01.lc:3:1
11------------ tooltips
12testdata/language-features/module/import04.reject.lc 4:1-4:6 String
13testdata/language-features/module/import04.reject.lc 4:9-4:16 String
diff --git a/testdata/language-features/module/import05.out b/testdata/language-features/module/import05.out
index 660eeb7b..c618c024 100644
--- a/testdata/language-features/module/import05.out
+++ b/testdata/language-features/module/import05.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3x :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import05.lc 3:6-3:12 Type 5testdata/language-features/module/import05.lc 3:6-3:12 Type
4testdata/language-features/module/import05.lc 4:1-4:2 String 6testdata/language-features/module/import05.lc 4:1-4:2 String
diff --git a/testdata/language-features/module/import06.out b/testdata/language-features/module/import06.out
index 707cfa68..8ed501a5 100644
--- a/testdata/language-features/module/import06.out
+++ b/testdata/language-features/module/import06.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'Tuple0
4x :: 'String
2------------ tooltips 5------------ tooltips
3testdata/language-features/module/import06.lc 3:1-3:6 Tuple0 6testdata/language-features/module/import06.lc 3:1-3:6 Tuple0
4testdata/language-features/module/import06.lc 3:9-3:11 Tuple0 7testdata/language-features/module/import06.lc 3:9-3:11 Tuple0
diff --git a/testdata/language-features/module/import07.out b/testdata/language-features/module/import07.out
index 4d9e8864..a813f0f9 100644
--- a/testdata/language-features/module/import07.out
+++ b/testdata/language-features/module/import07.out
@@ -1,4 +1,7 @@
1main is not found 1main is not found
2------------ trace
3hello :: 'Tuple0
4x :: 'String
2------------ tooltips 5------------ tooltips
3testdata/language-features/module/import07.lc 3:1-3:6 Tuple0 6testdata/language-features/module/import07.lc 3:1-3:6 Tuple0
4testdata/language-features/module/import07.lc 3:9-3:11 Tuple0 7testdata/language-features/module/import07.lc 3:9-3:11 Tuple0
diff --git a/testdata/language-features/module/import08.out b/testdata/language-features/module/import08.out
index eaf70740..efb5abf7 100644
--- a/testdata/language-features/module/import08.out
+++ b/testdata/language-features/module/import08.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3value :: 'Tuple0
4g :: 'Char
5h :: 'String
6w :: 'String
2------------ tooltips 7------------ tooltips
3testdata/language-features/module/import08.lc 3:1-3:6 Tuple0 8testdata/language-features/module/import08.lc 3:1-3:6 Tuple0
4testdata/language-features/module/import08.lc 3:9-3:11 Tuple0 9testdata/language-features/module/import08.lc 3:9-3:11 Tuple0
diff --git a/testdata/language-features/module/import09.out b/testdata/language-features/module/import09.out
index bc2e9215..15e350d5 100644
--- a/testdata/language-features/module/import09.out
+++ b/testdata/language-features/module/import09.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> a -> 'Tuple0->'Tuple0
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import09.lc 3:8-3:9 V1 5testdata/language-features/module/import09.lc 3:8-3:9 V1
4testdata/language-features/module/import09.lc 3:8-3:29 Type 6testdata/language-features/module/import09.lc 3:8-3:29 Type
diff --git a/testdata/language-features/module/import10.reject.out b/testdata/language-features/module/import10.reject.out
index 96853649..350a770d 100644
--- a/testdata/language-features/module/import10.reject.out
+++ b/testdata/language-features/module/import10.reject.out
@@ -3,4 +3,11 @@ type MyUnit = ()
3 ^^^^^^ 3 ^^^^^^
4 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6: 4 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6:
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ \ No newline at end of file 6 ^^^^^^
7------------ trace
8'MyUnit :: Type
9!already defined 'MyUnit at testdata/language-features/module/import10.reject.lc:3:6
10 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6
11------------ tooltips
12testdata/language-features/module/import10.reject.lc 3:6-3:12 Type
13testdata/language-features/module/import10.reject.lc 3:15-3:17 Type
diff --git a/testdata/language-features/module/import11.reject.out b/testdata/language-features/module/import11.reject.out
index 00e09d98..9ab1e98d 100644
--- a/testdata/language-features/module/import11.reject.out
+++ b/testdata/language-features/module/import11.reject.out
@@ -3,4 +3,11 @@ type MyUnit = ()
3 ^^^^^^ 3 ^^^^^^
4 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6: 4 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6:
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ \ No newline at end of file 6 ^^^^^^
7------------ trace
8'MyUnit :: Type
9!already defined 'MyUnit at testdata/language-features/module/import11.reject.lc:3:6
10 and at testdata/language-features/module/TypeSyn01Mod.lc:2:6
11------------ tooltips
12testdata/language-features/module/import11.reject.lc 3:6-3:12 Type
13testdata/language-features/module/import11.reject.lc 3:15-3:17 Type
diff --git a/testdata/language-features/module/import12.out b/testdata/language-features/module/import12.out
index c10155d0..f158db78 100644
--- a/testdata/language-features/module/import12.out
+++ b/testdata/language-features/module/import12.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import12.lc 4:1-4:4 String 5testdata/language-features/module/import12.lc 4:1-4:4 String
4testdata/language-features/module/import12.lc 4:7-4:12 String 6testdata/language-features/module/import12.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import13.out b/testdata/language-features/module/import13.out
index a7591cd6..0b4deb36 100644
--- a/testdata/language-features/module/import13.out
+++ b/testdata/language-features/module/import13.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import13.lc 4:1-4:4 String 5testdata/language-features/module/import13.lc 4:1-4:4 String
4testdata/language-features/module/import13.lc 4:7-4:12 String 6testdata/language-features/module/import13.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import14.out b/testdata/language-features/module/import14.out
index 56bf1a11..8d1e2208 100644
--- a/testdata/language-features/module/import14.out
+++ b/testdata/language-features/module/import14.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import14.lc 4:1-4:4 String 5testdata/language-features/module/import14.lc 4:1-4:4 String
4testdata/language-features/module/import14.lc 4:7-4:12 String 6testdata/language-features/module/import14.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import15.out b/testdata/language-features/module/import15.out
index 311a8378..80c15bc6 100644
--- a/testdata/language-features/module/import15.out
+++ b/testdata/language-features/module/import15.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: 'String
2------------ tooltips 4------------ tooltips
3testdata/language-features/module/import15.lc 3:1-3:4 String 5testdata/language-features/module/import15.lc 3:1-3:4 String
4testdata/language-features/module/import15.lc 3:7-3:12 String 6testdata/language-features/module/import15.lc 3:7-3:12 String
diff --git a/testdata/language-features/pattern/pattern01.out b/testdata/language-features/pattern/pattern01.out
index d0b70f5c..49e14ccf 100644
--- a/testdata/language-features/pattern/pattern01.out
+++ b/testdata/language-features/pattern/pattern01.out
@@ -1,4 +1,9 @@
1main is not found 1main is not found
2------------ trace
3fun1 :: {a} -> {b : 'Eq a} -> {c : 'Num a} -> a->'Char
4fun2 :: 'String->'Char
5fun3 :: 'Char->'Char
6fun4 :: 'Tuple0->'Char
2------------ tooltips 7------------ tooltips
3testdata/language-features/pattern/pattern01.lc 1:1-1:5 {a} -> {b : Eq a} -> {c : Num a} -> a->Char 8testdata/language-features/pattern/pattern01.lc 1:1-1:5 {a} -> {b : Eq a} -> {c : Num a} -> a->Char
4testdata/language-features/pattern/pattern01.lc 1:10-1:13 Char 9testdata/language-features/pattern/pattern01.lc 1:10-1:13 Char
diff --git a/testdata/language-features/pragma/pragma05.reject.out b/testdata/language-features/pragma/pragma05.reject.out
index eb782982..8e9ffaed 100644
--- a/testdata/language-features/pragma/pragma05.reject.out
+++ b/testdata/language-features/pragma/pragma05.reject.out
@@ -1,2 +1,2 @@
1testdata/language-features/pragma/pragma05.reject.lc:1:20: 1testdata/language-features/pragma/pragma05.reject.lc:1:20:
2language extension expected instead of ABCDEF \ No newline at end of file 2language extension expected instead of ABCDEF
diff --git a/testdata/language-features/pragma/pragma06.reject.out b/testdata/language-features/pragma/pragma06.reject.out
index d14e0097..13427392 100644
--- a/testdata/language-features/pragma/pragma06.reject.out
+++ b/testdata/language-features/pragma/pragma06.reject.out
@@ -1,2 +1,2 @@
1testdata/language-features/pragma/pragma06.reject.lc:1:18: 1testdata/language-features/pragma/pragma06.reject.lc:1:18:
2language extension expected instead of abcd \ No newline at end of file 2language extension expected instead of abcd
diff --git a/testdata/language-features/recursion/simplerec01.out b/testdata/language-features/recursion/simplerec01.out
index 9c566256..0fe9fad8 100644
--- a/testdata/language-features/recursion/simplerec01.out
+++ b/testdata/language-features/recursion/simplerec01.out
@@ -1,4 +1,6 @@
1main is not found 1main is not found
2------------ trace
3fun :: {a} -> {b : 'Num a} -> {c : 'Eq a} -> {d : 'Num a} -> a->'Char
2------------ tooltips 4------------ tooltips
3testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {b : Num a} -> {c : Eq a} -> {d : Num a} -> a->Char 5testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {b : Num a} -> {c : Eq a} -> {d : Num a} -> a->Char
4testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char 6testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char
diff --git a/testdata/language-features/section/section01.out b/testdata/language-features/section/section01.out
index 90cd2beb..5c52acd3 100644
--- a/testdata/language-features/section/section01.out
+++ b/testdata/language-features/section/section01.out
@@ -1,4 +1,8 @@
1main is not found 1main is not found
2------------ trace
3!@! :: {a} -> {b} -> a -> b->'Tuple0
4value1 :: {a} -> {b} -> a -> b->'Tuple0
5value2 :: {a} -> {b} -> a -> b->'Tuple0
2------------ tooltips 6------------ tooltips
3testdata/language-features/section/section01.lc 1:3-1:6 {a} -> {b} -> a -> b->Tuple0 7testdata/language-features/section/section01.lc 1:3-1:6 {a} -> {b} -> a -> b->Tuple0
4testdata/language-features/section/section01.lc 1:11-1:13 Tuple0 8testdata/language-features/section/section01.lc 1:11-1:13 Tuple0