summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/LambdaCube/Compiler/Pretty.hs12
-rw-r--r--testdata/Builtins.out168
-rw-r--r--testdata/Internals.out34
-rw-r--r--testdata/Prelude.out336
-rw-r--r--testdata/ambig.out2
-rw-r--r--testdata/complex.out30
-rw-r--r--testdata/language-features/basic-list/list11.out2
-rw-r--r--testdata/language-features/basic-list/list12.out10
-rw-r--r--testdata/language-features/basic-list/listcomp01.out2
-rw-r--r--testdata/language-features/basic-list/listcomp02.out2
-rw-r--r--testdata/language-features/basic-list/listcomp03.out2
-rw-r--r--testdata/language-features/basic-list/listcomp04.out4
-rw-r--r--testdata/language-features/basic-list/listcomp05.out2
-rw-r--r--testdata/language-features/basic-list/listcomp06.out4
-rw-r--r--testdata/language-features/basic-list/listcomp07.out6
-rw-r--r--testdata/language-features/basic-list/listcomp08.reject.out2
-rw-r--r--testdata/language-features/basic-list/listcomp09.out2
-rw-r--r--testdata/language-features/basic-values/fixity02.out48
-rw-r--r--testdata/language-features/basic-values/infix02.out2
-rw-r--r--testdata/language-features/basic-values/typesig03.out4
-rw-r--r--testdata/language-features/basic-values/typesig04.out4
-rw-r--r--testdata/language-features/basic-values/typesig05.out4
-rw-r--r--testdata/language-features/pattern/uncovered.out6
-rw-r--r--testdata/language-features/recursion/simplerec01.out2
-rw-r--r--testdata/language-features/recursion/simplerec02.out2
-rw-r--r--testdata/language-features/recursion/simplerec03.out2
-rw-r--r--testdata/record01.reject.out28
-rw-r--r--testdata/typeclass.out2
-rw-r--r--testdata/typesig.reject.out6
-rw-r--r--testdata/zip01.out12
30 files changed, 372 insertions, 370 deletions
diff --git a/src/LambdaCube/Compiler/Pretty.hs b/src/LambdaCube/Compiler/Pretty.hs
index 2fb116f9..455a6e7b 100644
--- a/src/LambdaCube/Compiler/Pretty.hs
+++ b/src/LambdaCube/Compiler/Pretty.hs
@@ -115,13 +115,18 @@ simple x = case strip x of
115 _ -> False 115 _ -> False
116 116
117renderDoc :: Doc -> P.Doc 117renderDoc :: Doc -> P.Doc
118renderDoc = render . addPar (-10) . flip runReader [] . flip evalStateT (flip (:) <$> iterate ('\'':) "" <*> ['a'..'z']) . showVars 118renderDoc
119 = render
120 . addPar (-10)
121 . flip runReader ((\s n -> n: '_': s) <$> iterate ('\'':) "" <*> ['a'..'z'])
122 . flip evalStateT (flip (:) <$> iterate ('\'':) "" <*> ['a'..'z'])
123 . showVars
119 where 124 where
120 showVars x = case x of 125 showVars x = case x of
121 DAtom s -> DAtom <$> showVarA s 126 DAtom s -> DAtom <$> showVarA s
122 DDoc d -> DDoc <$> traverse showVars d 127 DDoc d -> DDoc <$> traverse showVars d
123 DOp s pr x y -> DOp s pr <$> showVars x <*> showVars y 128 DOp s pr x y -> DOp s pr <$> showVars x <*> showVars y
124 DVar i -> asks $ text . lookupVarName i 129 DVar i -> asks $ text . (!! i)
125 DFreshName True x -> gets head >>= \n -> modify tail >> local (n:) (showVars x) 130 DFreshName True x -> gets head >>= \n -> modify tail >> local (n:) (showVars x)
126 DFreshName False x -> local ("_":) $ showVars x 131 DFreshName False x -> local ("_":) $ showVars x
127 DUp i x -> local (dropNth i) $ showVars x 132 DUp i x -> local (dropNth i) $ showVars x
@@ -129,9 +134,6 @@ renderDoc = render . addPar (-10) . flip runReader [] . flip evalStateT (flip (:
129 showVarA (SimpleAtom s) = pure $ SimpleAtom s 134 showVarA (SimpleAtom s) = pure $ SimpleAtom s
130 showVarA (ComplexAtom s i d a) = ComplexAtom s i <$> showVars d <*> showVarA a 135 showVarA (ComplexAtom s i d a) = ComplexAtom s i <$> showVars d <*> showVarA a
131 136
132 lookupVarName i xs | i < length xs = xs !! i
133 lookupVarName i _ = ((\s n -> n: '_': s) <$> iterate ('\'':) "" <*> ['a'..'z']) !! i
134
135 addPar :: Int -> Doc -> Doc 137 addPar :: Int -> Doc -> Doc
136 addPar pr x = case x of 138 addPar pr x = case x of
137 DAtom x -> DAtom $ addParA x 139 DAtom x -> DAtom $ addParA x
diff --git a/testdata/Builtins.out b/testdata/Builtins.out
index 55a1ceed..1c0d0cc2 100644
--- a/testdata/Builtins.out
+++ b/testdata/Builtins.out
@@ -454,44 +454,44 @@ testdata/Builtins.lc 19:40-19:41 Type
454testdata/Builtins.lc 19:42-19:43 Nat 454testdata/Builtins.lc 19:42-19:43 Nat
455testdata/Builtins.lc 20:1-20:7 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c 455testdata/Builtins.lc 20:1-20:7 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c
456testdata/Builtins.lc 20:21-20:23 {a} -> a -> a -> VecS a 2 456testdata/Builtins.lc 20:21-20:23 {a} -> a -> a -> VecS a 2
457testdata/Builtins.lc 20:21-20:29 f_ -> VecS g_ 2 457testdata/Builtins.lc 20:21-20:29 f_ -> VecS f_ 2
458testdata/Builtins.lc 20:21-20:35 VecS f_ 2 | a_ -> b_ -> VecS g_ 2 | b_ -> VecS g_ 2 458testdata/Builtins.lc 20:21-20:35 VecS f_ 2 | a_ -> a_ -> VecS e_ 2 | b_ -> VecS f_ 2
459testdata/Builtins.lc 20:21-21:43 (e_ -> f_ -> g_ -> h_ -> VecS h_ 4) -> {a:Nat} -> VecS g_ a -> VecS g_ a 459testdata/Builtins.lc 20:21-21:43 (e_ -> e_ -> e_ -> e_ -> VecS d_ 4) -> {a:Nat} -> VecS e_ a -> VecS d_ a
460testdata/Builtins.lc 20:21-22:51 (c_->c_) -> VecS d_ b_ -> VecS d_ c_ | VecS d_ b_ -> VecS d_ c_ | {a:Nat} -> VecS f_ a -> VecS f_ a 460testdata/Builtins.lc 20:21-22:51 (c_->b_) -> VecS c_ a_ -> VecS b_ a_ | VecS d_ b_ -> VecS c_ b_ | {a:Nat} -> VecS e_ a -> VecS d_ a
461testdata/Builtins.lc 20:25-20:26 i_->i_ 461testdata/Builtins.lc 20:25-20:26 i_->h_
462testdata/Builtins.lc 20:25-20:28 f_ 462testdata/Builtins.lc 20:25-20:28 f_
463testdata/Builtins.lc 20:27-20:28 c_ 463testdata/Builtins.lc 20:27-20:28 c_
464testdata/Builtins.lc 20:31-20:32 g_->g_ 464testdata/Builtins.lc 20:31-20:32 g_->f_
465testdata/Builtins.lc 20:31-20:34 f_ 465testdata/Builtins.lc 20:31-20:34 f_
466testdata/Builtins.lc 20:33-20:34 g_ 466testdata/Builtins.lc 20:33-20:34 g_
467testdata/Builtins.lc 21:23-21:25 {a} -> a -> a -> a -> VecS a 3 467testdata/Builtins.lc 21:23-21:25 {a} -> a -> a -> a -> VecS a 3
468testdata/Builtins.lc 21:23-21:31 g_ -> h_ -> VecS i_ 3 468testdata/Builtins.lc 21:23-21:31 g_ -> g_ -> VecS g_ 3
469testdata/Builtins.lc 21:23-21:37 g_ -> VecS h_ 3 469testdata/Builtins.lc 21:23-21:37 g_ -> VecS g_ 3
470testdata/Builtins.lc 21:23-21:43 VecS g_ 3 | e_ -> f_ -> g_ -> VecS g_ 3 | f_ -> g_ -> VecS g_ 3 | g_ -> VecS g_ 3 470testdata/Builtins.lc 21:23-21:43 VecS g_ 3 | e_ -> e_ -> e_ -> VecS d_ 3 | f_ -> f_ -> VecS e_ 3 | g_ -> VecS f_ 3
471testdata/Builtins.lc 21:27-21:28 i_->i_ 471testdata/Builtins.lc 21:27-21:28 i_->h_
472testdata/Builtins.lc 21:27-21:30 g_ 472testdata/Builtins.lc 21:27-21:30 g_
473testdata/Builtins.lc 21:29-21:30 h_ 473testdata/Builtins.lc 21:29-21:30 h_
474testdata/Builtins.lc 21:33-21:34 h_->h_ 474testdata/Builtins.lc 21:33-21:34 h_->g_
475testdata/Builtins.lc 21:33-21:36 g_ 475testdata/Builtins.lc 21:33-21:36 g_
476testdata/Builtins.lc 21:35-21:36 h_ 476testdata/Builtins.lc 21:35-21:36 h_
477testdata/Builtins.lc 21:39-21:40 h_->h_ 477testdata/Builtins.lc 21:39-21:40 h_->g_
478testdata/Builtins.lc 21:39-21:42 g_ 478testdata/Builtins.lc 21:39-21:42 g_
479testdata/Builtins.lc 21:41-21:42 h_ 479testdata/Builtins.lc 21:41-21:42 h_
480testdata/Builtins.lc 22:25-22:27 {a} -> a -> a -> a -> a -> VecS a 4 480testdata/Builtins.lc 22:25-22:27 {a} -> a -> a -> a -> a -> VecS a 4
481testdata/Builtins.lc 22:25-22:33 h_ -> i_ -> j_ -> VecS k_ 4 481testdata/Builtins.lc 22:25-22:33 h_ -> h_ -> h_ -> VecS h_ 4
482testdata/Builtins.lc 22:25-22:39 h_ -> i_ -> VecS j_ 4 482testdata/Builtins.lc 22:25-22:39 h_ -> h_ -> VecS h_ 4
483testdata/Builtins.lc 22:25-22:45 h_ -> VecS i_ 4 483testdata/Builtins.lc 22:25-22:45 h_ -> VecS h_ 4
484testdata/Builtins.lc 22:25-22:51 VecS h_ 4 | e_ -> f_ -> g_ -> h_ -> VecS h_ 4 | f_ -> g_ -> h_ -> VecS h_ 4 | g_ -> h_ -> VecS h_ 4 | h_ -> VecS h_ 4 484testdata/Builtins.lc 22:25-22:51 VecS h_ 4 | e_ -> e_ -> e_ -> e_ -> VecS d_ 4 | f_ -> f_ -> f_ -> VecS e_ 4 | g_ -> g_ -> VecS f_ 4 | h_ -> VecS g_ 4
485testdata/Builtins.lc 22:29-22:30 j_->j_ 485testdata/Builtins.lc 22:29-22:30 j_->i_
486testdata/Builtins.lc 22:29-22:32 h_ 486testdata/Builtins.lc 22:29-22:32 h_
487testdata/Builtins.lc 22:31-22:32 i_ 487testdata/Builtins.lc 22:31-22:32 i_
488testdata/Builtins.lc 22:35-22:36 i_->i_ 488testdata/Builtins.lc 22:35-22:36 i_->h_
489testdata/Builtins.lc 22:35-22:38 h_ 489testdata/Builtins.lc 22:35-22:38 h_
490testdata/Builtins.lc 22:37-22:38 i_ 490testdata/Builtins.lc 22:37-22:38 i_
491testdata/Builtins.lc 22:41-22:42 i_->i_ 491testdata/Builtins.lc 22:41-22:42 i_->h_
492testdata/Builtins.lc 22:41-22:44 h_ 492testdata/Builtins.lc 22:41-22:44 h_
493testdata/Builtins.lc 22:43-22:44 i_ 493testdata/Builtins.lc 22:43-22:44 i_
494testdata/Builtins.lc 22:47-22:48 i_->i_ 494testdata/Builtins.lc 22:47-22:48 i_->h_
495testdata/Builtins.lc 22:47-22:50 h_ 495testdata/Builtins.lc 22:47-22:50 h_
496testdata/Builtins.lc 22:49-22:50 i_ 496testdata/Builtins.lc 22:49-22:50 i_
497testdata/Builtins.lc 24:23-24:26 Type 497testdata/Builtins.lc 24:23-24:26 Type
@@ -793,10 +793,10 @@ testdata/Builtins.lc 58:11-58:12 Type
793testdata/Builtins.lc 59:3-59:6 {a} -> {_ : Component a}->a 793testdata/Builtins.lc 59:3-59:6 {a} -> {_ : Component a}->a
794testdata/Builtins.lc 59:10-59:11 Type 794testdata/Builtins.lc 59:10-59:11 Type
795testdata/Builtins.lc 62:10-62:11 b_ 795testdata/Builtins.lc 62:10-62:11 b_
796testdata/Builtins.lc 62:10-89:36 b_ | {_ : Component a_}->b_ | {a} -> {_ : Component a}->a 796testdata/Builtins.lc 62:10-89:36 b_ | {_ : Component a_}->a_ | {a} -> {_ : Component a}->a
797testdata/Builtins.lc 62:15-62:18 Type 797testdata/Builtins.lc 62:15-62:18 Type
798testdata/Builtins.lc 63:9-63:10 b_ 798testdata/Builtins.lc 63:9-63:10 b_
799testdata/Builtins.lc 63:9-90:31 b_ | {_ : Component a_}->b_ | {a} -> {_ : Component a}->a 799testdata/Builtins.lc 63:9-90:31 b_ | {_ : Component a_}->a_ | {a} -> {_ : Component a}->a
800testdata/Builtins.lc 63:14-63:17 Type 800testdata/Builtins.lc 63:14-63:17 Type
801testdata/Builtins.lc 65:10-65:11 b_ 801testdata/Builtins.lc 65:10-65:11 b_
802testdata/Builtins.lc 65:10-89:36 b_ 802testdata/Builtins.lc 65:10-89:36 b_
@@ -812,14 +812,14 @@ testdata/Builtins.lc 71:10-71:12 {a} -> a -> a -> VecS a 2
812testdata/Builtins.lc 71:10-71:16 Float -> VecS Float 2 812testdata/Builtins.lc 71:10-71:16 Float -> VecS Float 2
813testdata/Builtins.lc 71:10-71:20 VecS Float 2 813testdata/Builtins.lc 71:10-71:20 VecS Float 2
814testdata/Builtins.lc 71:10-77:28 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a) 814testdata/Builtins.lc 71:10-77:28 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a)
815testdata/Builtins.lc 71:10-89:36 (a:Nat) -> VecS b_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_ 815testdata/Builtins.lc 71:10-89:36 (a:Nat) -> VecS a_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_
816testdata/Builtins.lc 71:13-71:16 Float 816testdata/Builtins.lc 71:13-71:16 Float
817testdata/Builtins.lc 71:17-71:20 Float 817testdata/Builtins.lc 71:17-71:20 Float
818testdata/Builtins.lc 72:9-72:11 {a} -> a -> a -> VecS a 2 818testdata/Builtins.lc 72:9-72:11 {a} -> a -> a -> VecS a 2
819testdata/Builtins.lc 72:9-72:15 Float -> VecS Float 2 819testdata/Builtins.lc 72:9-72:15 Float -> VecS Float 2
820testdata/Builtins.lc 72:9-72:19 VecS Float 2 820testdata/Builtins.lc 72:9-72:19 VecS Float 2
821testdata/Builtins.lc 72:9-78:27 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a) 821testdata/Builtins.lc 72:9-78:27 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a)
822testdata/Builtins.lc 72:9-90:31 (a:Nat) -> VecS b_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_ 822testdata/Builtins.lc 72:9-90:31 (a:Nat) -> VecS a_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_
823testdata/Builtins.lc 72:12-72:15 Float 823testdata/Builtins.lc 72:12-72:15 Float
824testdata/Builtins.lc 72:16-72:19 Float 824testdata/Builtins.lc 72:16-72:19 Float
825testdata/Builtins.lc 74:10-74:12 {a} -> a -> a -> a -> VecS a 3 825testdata/Builtins.lc 74:10-74:12 {a} -> a -> a -> a -> VecS a 3
@@ -1865,43 +1865,43 @@ testdata/Builtins.lc 187:55-187:66 Type
1865testdata/Builtins.lc 187:59-187:60 b_ 1865testdata/Builtins.lc 187:59-187:60 b_
1866testdata/Builtins.lc 187:61-187:66 Type 1866testdata/Builtins.lc 187:61-187:66 Type
1867testdata/Builtins.lc 201:1-201:5 {a} -> List a -> a 1867testdata/Builtins.lc 201:1-201:5 {a} -> List a -> a
1868testdata/Builtins.lc 201:15-201:16 List c_ -> c_ | b_ -> List c_ -> c_ | d_ 1868testdata/Builtins.lc 201:15-201:16 List c_ -> b_ | b_ -> List b_ -> a_ | d_
1869testdata/Builtins.lc 203:6-203:8 {a} -> List a -> List a -> List a 1869testdata/Builtins.lc 203:6-203:8 {a} -> List a -> List a -> List a
1870testdata/Builtins.lc 203:14-203:16 d_ 1870testdata/Builtins.lc 203:14-203:16 d_
1871testdata/Builtins.lc 203:14-204:26 List a_ -> List b_ | a_->b_ 1871testdata/Builtins.lc 203:14-204:26 List a_ -> List a_ | a_->a_
1872testdata/Builtins.lc 204:14-204:15 d_ 1872testdata/Builtins.lc 204:14-204:15 d_
1873testdata/Builtins.lc 204:14-204:17 List c_ -> List d_ 1873testdata/Builtins.lc 204:14-204:17 List c_ -> List c_
1874testdata/Builtins.lc 204:14-204:26 List b_ -> e_ | List c_ | a_ -> List b_ -> e_ 1874testdata/Builtins.lc 204:14-204:26 List b_ -> d_ | List c_ | a_ -> List a_ -> c_
1875testdata/Builtins.lc 204:16-204:17 {a} -> a -> List a -> List a 1875testdata/Builtins.lc 204:16-204:17 {a} -> a -> List a -> List a
1876testdata/Builtins.lc 204:18-204:20 List f_ 1876testdata/Builtins.lc 204:18-204:20 List f_
1877testdata/Builtins.lc 204:21-204:23 h_ 1877testdata/Builtins.lc 204:21-204:23 h_
1878testdata/Builtins.lc 204:24-204:26 List g_ 1878testdata/Builtins.lc 204:24-204:26 List g_
1879testdata/Builtins.lc 206:1-206:6 {a} -> {b} -> (b -> a->a) -> a -> List b -> a 1879testdata/Builtins.lc 206:1-206:6 {a} -> {b} -> (b -> a->a) -> a -> List b -> a
1880testdata/Builtins.lc 206:16-206:17 f_ 1880testdata/Builtins.lc 206:16-206:17 f_
1881testdata/Builtins.lc 206:16-207:39 List b_ -> g_ | a_->b_ 1881testdata/Builtins.lc 206:16-207:39 List b_ -> f_ | a_->a_
1882testdata/Builtins.lc 207:21-207:22 i_ 1882testdata/Builtins.lc 207:21-207:22 i_
1883testdata/Builtins.lc 207:21-207:39 List b_ -> g_ | a_ -> List b_ -> g_ 1883testdata/Builtins.lc 207:21-207:39 List b_ -> f_ | a_ -> List a_ -> e_
1884testdata/Builtins.lc 207:23-207:24 f_ 1884testdata/Builtins.lc 207:23-207:24 f_
1885testdata/Builtins.lc 207:26-207:31 n_ 1885testdata/Builtins.lc 207:26-207:31 n_
1886testdata/Builtins.lc 207:32-207:33 j_->h_ 1886testdata/Builtins.lc 207:32-207:33 j_->g_
1887testdata/Builtins.lc 207:34-207:35 o_ 1887testdata/Builtins.lc 207:34-207:35 o_
1888testdata/Builtins.lc 207:36-207:38 List k_ 1888testdata/Builtins.lc 207:36-207:38 List k_
1889testdata/Builtins.lc 209:1-209:7 {a} -> List (List a) -> List a 1889testdata/Builtins.lc 209:1-209:7 {a} -> List (List a) -> List a
1890testdata/Builtins.lc 209:10-209:15 {a} -> {b} -> (b -> a->a) -> a -> List b -> a 1890testdata/Builtins.lc 209:10-209:15 {a} -> {b} -> (b -> a->a) -> a -> List b -> a
1891testdata/Builtins.lc 209:10-209:20 List a_ -> List (List b_) -> List c_ 1891testdata/Builtins.lc 209:10-209:20 List a_ -> List (List a_) -> List a_
1892testdata/Builtins.lc 209:10-209:23 List (List a_) -> List b_ 1892testdata/Builtins.lc 209:10-209:23 List (List a_) -> List a_
1893testdata/Builtins.lc 209:16-209:20 {a} -> List a -> List a -> List a 1893testdata/Builtins.lc 209:16-209:20 {a} -> List a -> List a -> List a
1894testdata/Builtins.lc 209:21-209:23 {a} -> List a 1894testdata/Builtins.lc 209:21-209:23 {a} -> List a
1895testdata/Builtins.lc 211:1-211:4 {a} -> {b} -> (a->b) -> List a -> List b 1895testdata/Builtins.lc 211:1-211:4 {a} -> {b} -> (a->b) -> List a -> List b
1896testdata/Builtins.lc 211:16-211:18 {a} -> List a 1896testdata/Builtins.lc 211:16-211:18 {a} -> List a
1897testdata/Builtins.lc 211:16-212:30 List b_ -> List b_ | a_->b_ 1897testdata/Builtins.lc 211:16-212:30 List b_ -> List a_ | a_->a_
1898testdata/Builtins.lc 212:16-212:17 i_ 1898testdata/Builtins.lc 212:16-212:17 i_
1899testdata/Builtins.lc 212:16-212:21 List a_ -> List b_ 1899testdata/Builtins.lc 212:16-212:21 List a_ -> List a_
1900testdata/Builtins.lc 212:16-212:30 List c_ | List c_ -> List c_ | b_ -> List c_ -> List c_ 1900testdata/Builtins.lc 212:16-212:30 List c_ | List c_ -> List b_ | b_ -> List b_ -> List a_
1901testdata/Builtins.lc 212:18-212:19 h_ 1901testdata/Builtins.lc 212:18-212:19 h_
1902testdata/Builtins.lc 212:20-212:21 {a} -> a -> List a -> List a 1902testdata/Builtins.lc 212:20-212:21 {a} -> a -> List a -> List a
1903testdata/Builtins.lc 212:22-212:25 i_ 1903testdata/Builtins.lc 212:22-212:25 i_
1904testdata/Builtins.lc 212:26-212:27 g_->g_ 1904testdata/Builtins.lc 212:26-212:27 g_->f_
1905testdata/Builtins.lc 212:28-212:30 List h_ 1905testdata/Builtins.lc 212:28-212:30 List h_
1906testdata/Builtins.lc 214:14-214:38 Type 1906testdata/Builtins.lc 214:14-214:38 Type
1907testdata/Builtins.lc 214:15-214:16 d_ 1907testdata/Builtins.lc 214:15-214:16 d_
@@ -1914,18 +1914,18 @@ testdata/Builtins.lc 214:35-214:38 Type
1914testdata/Builtins.lc 214:36-214:37 Type 1914testdata/Builtins.lc 214:36-214:37 Type
1915testdata/Builtins.lc 215:1-215:10 {a} -> {b} -> (a -> List b) -> List a -> List b 1915testdata/Builtins.lc 215:1-215:10 {a} -> {b} -> (a -> List b) -> List a -> List b
1916testdata/Builtins.lc 215:17-215:23 {a} -> List (List a) -> List a 1916testdata/Builtins.lc 215:17-215:23 {a} -> List (List a) -> List a
1917testdata/Builtins.lc 215:17-215:33 (b_ -> List b_) -> List c_ -> List c_ | List c_ | List c_ -> List c_ 1917testdata/Builtins.lc 215:17-215:33 (b_ -> List a_) -> List b_ -> List a_ | List c_ | List c_ -> List b_
1918testdata/Builtins.lc 215:25-215:28 {a} -> {b} -> (a->b) -> List a -> List b 1918testdata/Builtins.lc 215:25-215:28 {a} -> {b} -> (a->b) -> List a -> List b
1919testdata/Builtins.lc 215:25-215:30 List e_ -> List (List e_) 1919testdata/Builtins.lc 215:25-215:30 List e_ -> List (List d_)
1920testdata/Builtins.lc 215:25-215:32 List (List c_) 1920testdata/Builtins.lc 215:25-215:32 List (List c_)
1921testdata/Builtins.lc 215:29-215:30 g_ -> List g_ 1921testdata/Builtins.lc 215:29-215:30 g_ -> List f_
1922testdata/Builtins.lc 215:31-215:32 List d_ 1922testdata/Builtins.lc 215:31-215:32 List d_
1923testdata/Builtins.lc 217:1-217:4 {a} -> List a -> Int 1923testdata/Builtins.lc 217:1-217:4 {a} -> List a -> Int
1924testdata/Builtins.lc 217:10-217:11 b_ 1924testdata/Builtins.lc 217:10-217:11 b_
1925testdata/Builtins.lc 217:10-218:35 List b_ -> Int | a_->b_ 1925testdata/Builtins.lc 217:10-218:35 List b_ -> Int | a_->a_
1926testdata/Builtins.lc 218:14-218:15 b_ 1926testdata/Builtins.lc 218:14-218:15 b_
1927testdata/Builtins.lc 218:14-218:28 Int->Int 1927testdata/Builtins.lc 218:14-218:28 Int->Int
1928testdata/Builtins.lc 218:14-218:35 Int | List d_ -> d_ | c_ -> List d_ -> d_ 1928testdata/Builtins.lc 218:14-218:35 Int | List d_ -> c_ | c_ -> List c_ -> b_
1929testdata/Builtins.lc 218:16-218:28 Int -> Int->Int 1929testdata/Builtins.lc 218:16-218:28 Int -> Int->Int
1930testdata/Builtins.lc 218:29-218:32 h_ 1930testdata/Builtins.lc 218:29-218:32 h_
1931testdata/Builtins.lc 218:33-218:35 List g_ 1931testdata/Builtins.lc 218:33-218:35 List g_
@@ -2022,10 +2022,10 @@ testdata/Builtins.lc 252:69-252:70 PrimitiveType
2022testdata/Builtins.lc 252:71-252:72 Type 2022testdata/Builtins.lc 252:71-252:72 Type
2023testdata/Builtins.lc 253:1-253:14 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> List (Primitive a c) -> List (Primitive b c) 2023testdata/Builtins.lc 253:1-253:14 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> List (Primitive a c) -> List (Primitive b c)
2024testdata/Builtins.lc 253:19-253:22 {a} -> {b} -> (a->b) -> List a -> List b 2024testdata/Builtins.lc 253:19-253:22 {a} -> {b} -> (a->b) -> List a -> List b
2025testdata/Builtins.lc 253:19-253:39 (c_->c_) -> PrimitiveStream b_ d_ -> PrimitiveStream c_ d_ | List (Primitive e_ a_) -> List (Primitive e_ b_) 2025testdata/Builtins.lc 253:19-253:39 (c_->b_) -> PrimitiveStream a_ c_ -> PrimitiveStream a_ b_ | List (Primitive e_ a_) -> List (Primitive d_ a_)
2026testdata/Builtins.lc 253:24-253:36 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> Primitive a c -> Primitive b c 2026testdata/Builtins.lc 253:24-253:36 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> Primitive a c -> Primitive b c
2027testdata/Builtins.lc 253:24-253:38 Primitive g_ a_ -> Primitive g_ b_ 2027testdata/Builtins.lc 253:24-253:38 Primitive g_ a_ -> Primitive f_ a_
2028testdata/Builtins.lc 253:37-253:38 i_->i_ 2028testdata/Builtins.lc 253:37-253:38 i_->h_
2029testdata/Builtins.lc 255:30-255:38 Type->Type 2029testdata/Builtins.lc 255:30-255:38 Type->Type
2030testdata/Builtins.lc 255:45-255:46 Type | Type->Type 2030testdata/Builtins.lc 255:45-255:46 Type | Type->Type
2031testdata/Builtins.lc 260:1-260:12 {a:PrimitiveType} -> {b : List Type} -> {c : List Type} -> {_ : b ~ 'map Type Type ListElem c} -> HList c -> PrimitiveStream a (HList b) 2031testdata/Builtins.lc 260:1-260:12 {a:PrimitiveType} -> {b : List Type} -> {c : List Type} -> {_ : b ~ 'map Type Type ListElem c} -> HList c -> PrimitiveStream a (HList b)
@@ -2156,9 +2156,9 @@ testdata/Builtins.lc 281:73-281:74 Nat
2156testdata/Builtins.lc 281:75-281:76 Type 2156testdata/Builtins.lc 281:75-281:76 Type
2157testdata/Builtins.lc 282:1-282:16 {a} -> {b:Nat} -> (a->Float) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a))) 2157testdata/Builtins.lc 282:1-282:16 {a} -> {b:Nat} -> (a->Float) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a)))
2158testdata/Builtins.lc 282:21-282:24 {a} -> {b} -> (a->b) -> List a -> List b 2158testdata/Builtins.lc 282:21-282:24 {a} -> {b} -> (a->b) -> List a -> List b
2159testdata/Builtins.lc 282:21-282:43 (b_->Float) -> FragmentStream b_ c_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) 2159testdata/Builtins.lc 282:21-282:43 (b_->Float) -> FragmentStream a_ b_ -> FragmentStream a_ b_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector a_ (Maybe (SimpleFragment d_)))
2160testdata/Builtins.lc 282:26-282:40 {a} -> {b:Nat} -> (a->Float) -> Fragment b a -> Fragment b a 2160testdata/Builtins.lc 282:26-282:40 {a} -> {b:Nat} -> (a->Float) -> Fragment b a -> Fragment b a
2161testdata/Builtins.lc 282:26-282:42 Fragment a_ f_ -> Fragment b_ g_ 2161testdata/Builtins.lc 282:26-282:42 Fragment a_ f_ -> Fragment a_ f_
2162testdata/Builtins.lc 282:41-282:42 g_->Float 2162testdata/Builtins.lc 282:41-282:42 g_->Float
2163testdata/Builtins.lc 284:1-284:15 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a 2163testdata/Builtins.lc 284:1-284:15 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a
2164testdata/Builtins.lc 284:19-284:62 Type 2164testdata/Builtins.lc 284:19-284:62 Type
@@ -2191,9 +2191,9 @@ testdata/Builtins.lc 286:72-286:73 Nat
2191testdata/Builtins.lc 286:74-286:75 Type 2191testdata/Builtins.lc 286:74-286:75 Type
2192testdata/Builtins.lc 287:1-287:16 {a} -> {b:Nat} -> (a->Bool) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a))) 2192testdata/Builtins.lc 287:1-287:16 {a} -> {b:Nat} -> (a->Bool) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a)))
2193testdata/Builtins.lc 287:21-287:24 {a} -> {b} -> (a->b) -> List a -> List b 2193testdata/Builtins.lc 287:21-287:24 {a} -> {b} -> (a->b) -> List a -> List b
2194testdata/Builtins.lc 287:21-287:43 (b_->Bool) -> FragmentStream b_ c_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) 2194testdata/Builtins.lc 287:21-287:43 (b_->Bool) -> FragmentStream a_ b_ -> FragmentStream a_ b_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector a_ (Maybe (SimpleFragment d_)))
2195testdata/Builtins.lc 287:26-287:40 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a 2195testdata/Builtins.lc 287:26-287:40 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a
2196testdata/Builtins.lc 287:26-287:42 Fragment a_ f_ -> Fragment b_ g_ 2196testdata/Builtins.lc 287:26-287:42 Fragment a_ f_ -> Fragment a_ f_
2197testdata/Builtins.lc 287:41-287:42 g_->Bool 2197testdata/Builtins.lc 287:41-287:42 g_->Bool
2198testdata/Builtins.lc 289:1-289:12 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b 2198testdata/Builtins.lc 289:1-289:12 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b
2199testdata/Builtins.lc 289:16-289:56 Type 2199testdata/Builtins.lc 289:16-289:56 Type
@@ -2226,10 +2226,10 @@ testdata/Builtins.lc 291:66-291:67 Nat
2226testdata/Builtins.lc 291:68-291:69 Type 2226testdata/Builtins.lc 291:68-291:69 Type
2227testdata/Builtins.lc 292:1-292:13 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b))) 2227testdata/Builtins.lc 292:1-292:13 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b)))
2228testdata/Builtins.lc 292:18-292:21 {a} -> {b} -> (a->b) -> List a -> List b 2228testdata/Builtins.lc 292:18-292:21 {a} -> {b} -> (a->b) -> List a -> List b
2229testdata/Builtins.lc 292:18-292:37 (c_->c_) -> FragmentStream b_ d_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment e_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) 2229testdata/Builtins.lc 292:18-292:37 (c_->b_) -> FragmentStream a_ c_ -> FragmentStream a_ b_ | List (Vector a_ (Maybe (SimpleFragment e_))) -> List (Vector a_ (Maybe (SimpleFragment d_)))
2230testdata/Builtins.lc 292:23-292:34 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b 2230testdata/Builtins.lc 292:23-292:34 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b
2231testdata/Builtins.lc 292:23-292:36 Fragment a_ g_ -> Fragment b_ g_ 2231testdata/Builtins.lc 292:23-292:36 Fragment a_ g_ -> Fragment a_ f_
2232testdata/Builtins.lc 292:35-292:36 i_->i_ 2232testdata/Builtins.lc 292:35-292:36 i_->h_
2233testdata/Builtins.lc 296:6-296:15 Type 2233testdata/Builtins.lc 296:6-296:15 Type
2234testdata/Builtins.lc 296:6-299:14 Type 2234testdata/Builtins.lc 296:6-299:14 Type
2235testdata/Builtins.lc 297:7-297:12 ImageKind | Type | Type->ImageKind 2235testdata/Builtins.lc 297:7-297:12 ImageKind | Type | Type->ImageKind
@@ -2239,7 +2239,7 @@ testdata/Builtins.lc 299:7-299:14 ImageKind
2239testdata/Builtins.lc 301:14-301:23 Type 2239testdata/Builtins.lc 301:14-301:23 Type
2240testdata/Builtins.lc 301:27-301:31 Type 2240testdata/Builtins.lc 301:27-301:31 Type
2241testdata/Builtins.lc 302:1-302:10 ImageKind->Type 2241testdata/Builtins.lc 302:1-302:10 ImageKind->Type
2242testdata/Builtins.lc 302:23-302:24 Type | Type->b_ 2242testdata/Builtins.lc 302:23-302:24 Type | Type->a_
2243testdata/Builtins.lc 302:23-303:25 Type -> ImageKind->Type 2243testdata/Builtins.lc 302:23-303:25 Type -> ImageKind->Type
2244testdata/Builtins.lc 302:23-304:25 ImageKind->Type | Type 2244testdata/Builtins.lc 302:23-304:25 ImageKind->Type | Type
2245testdata/Builtins.lc 303:19-303:25 Type 2245testdata/Builtins.lc 303:19-303:25 Type
@@ -2314,19 +2314,19 @@ testdata/Builtins.lc 339:38-339:48 Type
2314testdata/Builtins.lc 339:47-339:48 Type 2314testdata/Builtins.lc 339:47-339:48 Type
2315testdata/Builtins.lc 340:1-340:12 {a} -> {b:Nat} -> Vec b a -> Swizz->a 2315testdata/Builtins.lc 340:1-340:12 {a} -> {b:Nat} -> Vec b a -> Swizz->a
2316testdata/Builtins.lc 340:27-340:28 e_ 2316testdata/Builtins.lc 340:27-340:28 e_
2317testdata/Builtins.lc 340:27-341:28 b_ -> c_->c_ | c_ | c_->c_ | d_ -> e_ -> Swizz->g_ 2317testdata/Builtins.lc 340:27-341:28 b_ -> b_->a_ | c_ | c_->b_ | d_ -> d_ -> Swizz->d_
2318testdata/Builtins.lc 340:27-344:30 (a_ -> b_ -> c_ -> d_->e_) -> {a:Nat} -> VecS c_ a -> d_ 2318testdata/Builtins.lc 340:27-344:30 (a_ -> a_ -> a_ -> a_->a_) -> {a:Nat} -> VecS a_ a -> a_
2319testdata/Builtins.lc 340:27-348:32 Swizz->d_ | Vec a_ b_ -> Swizz->d_ | d_ | {a:Nat} -> VecS b_ a -> c_ 2319testdata/Builtins.lc 340:27-348:32 Swizz->c_ | Vec a_ b_ -> Swizz->b_ | d_ | {a:Nat} -> VecS a_ a -> a_
2320testdata/Builtins.lc 341:27-341:28 d_ 2320testdata/Builtins.lc 341:27-341:28 d_
2321testdata/Builtins.lc 342:29-342:30 e_ 2321testdata/Builtins.lc 342:29-342:30 e_
2322testdata/Builtins.lc 342:29-343:30 d_ -> e_ -> Swizz->g_ 2322testdata/Builtins.lc 342:29-343:30 d_ -> d_ -> Swizz->d_
2323testdata/Builtins.lc 342:29-344:30 a_ -> b_ -> c_->d_ | b_ -> c_->d_ | c_->d_ | d_ | d_ -> Swizz->f_ 2323testdata/Builtins.lc 342:29-344:30 a_ -> a_ -> a_->a_ | b_ -> b_->b_ | c_->c_ | d_ | d_ -> Swizz->d_
2324testdata/Builtins.lc 343:29-343:30 d_ 2324testdata/Builtins.lc 343:29-343:30 d_
2325testdata/Builtins.lc 344:29-344:30 d_ 2325testdata/Builtins.lc 344:29-344:30 d_
2326testdata/Builtins.lc 345:31-345:32 f_ 2326testdata/Builtins.lc 345:31-345:32 f_
2327testdata/Builtins.lc 345:31-346:32 e_ -> f_ -> Swizz->h_ 2327testdata/Builtins.lc 345:31-346:32 e_ -> e_ -> Swizz->e_
2328testdata/Builtins.lc 345:31-347:32 e_ -> Swizz->g_ 2328testdata/Builtins.lc 345:31-347:32 e_ -> Swizz->e_
2329testdata/Builtins.lc 345:31-348:32 Swizz->f_ | a_ -> b_ -> c_ -> d_->e_ | b_ -> c_ -> d_->e_ | c_ -> d_->e_ | d_->e_ | e_ 2329testdata/Builtins.lc 345:31-348:32 Swizz->e_ | a_ -> a_ -> a_ -> a_->a_ | b_ -> b_ -> b_->b_ | c_ -> c_->c_ | d_->d_ | e_
2330testdata/Builtins.lc 346:31-346:32 e_ 2330testdata/Builtins.lc 346:31-346:32 e_
2331testdata/Builtins.lc 347:31-347:32 e_ 2331testdata/Builtins.lc 347:31-347:32 e_
2332testdata/Builtins.lc 348:31-348:32 e_ 2332testdata/Builtins.lc 348:31-348:32 e_
@@ -2338,11 +2338,11 @@ testdata/Builtins.lc 351:32-351:33 b_
2338testdata/Builtins.lc 351:34-351:35 c_ 2338testdata/Builtins.lc 351:34-351:35 c_
2339testdata/Builtins.lc 351:39-351:43 Type 2339testdata/Builtins.lc 351:39-351:43 Type
2340testdata/Builtins.lc 352:1-352:11 {a} -> {b:Nat} -> Vec b a -> Bool 2340testdata/Builtins.lc 352:1-352:11 {a} -> {b:Nat} -> Vec b a -> Bool
2341testdata/Builtins.lc 352:23-352:27 Bool | b_ -> c_->c_ | c_->c_ 2341testdata/Builtins.lc 352:23-352:27 Bool | b_ -> b_->a_ | c_->b_
2342testdata/Builtins.lc 352:23-353:29 (a_ -> b_ -> c_ -> d_->Bool) -> {a:Nat} -> VecS c_ a -> Bool 2342testdata/Builtins.lc 352:23-353:29 (a_ -> a_ -> a_ -> a_->Bool) -> {a:Nat} -> VecS a_ a -> Bool
2343testdata/Builtins.lc 352:23-354:31 Bool | Vec a_ b_ -> Bool | {a:Nat} -> VecS b_ a -> Bool 2343testdata/Builtins.lc 352:23-354:31 Bool | Vec a_ b_ -> Bool | {a:Nat} -> VecS a_ a -> Bool
2344testdata/Builtins.lc 353:25-353:29 Bool | a_ -> b_ -> c_->Bool | b_ -> c_->Bool | c_->Bool 2344testdata/Builtins.lc 353:25-353:29 Bool | a_ -> a_ -> a_->Bool | b_ -> b_->Bool | c_->Bool
2345testdata/Builtins.lc 354:27-354:31 Bool | a_ -> b_ -> c_ -> d_->Bool | b_ -> c_ -> d_->Bool | c_ -> d_->Bool | d_->Bool 2345testdata/Builtins.lc 354:27-354:31 Bool | a_ -> a_ -> a_ -> a_->Bool | b_ -> b_ -> b_->Bool | c_ -> c_->Bool | d_->Bool
2346testdata/Builtins.lc 356:16-356:71 Type 2346testdata/Builtins.lc 356:16-356:71 Type
2347testdata/Builtins.lc 356:27-356:71 Type 2347testdata/Builtins.lc 356:27-356:71 Type
2348testdata/Builtins.lc 356:38-356:41 Nat -> Type->Type 2348testdata/Builtins.lc 356:38-356:41 Nat -> Type->Type
@@ -2365,13 +2365,13 @@ testdata/Builtins.lc 356:70-356:71 Type
2365testdata/Builtins.lc 357:1-357:12 {a} -> {b:Nat} -> {c:Nat} -> Vec b a -> Vec c Swizz -> VecS a c 2365testdata/Builtins.lc 357:1-357:12 {a} -> {b:Nat} -> {c:Nat} -> Vec b a -> Vec c Swizz -> VecS a c
2366testdata/Builtins.lc 357:19-357:29 {a} -> {b:Nat} -> Vec b a -> Bool 2366testdata/Builtins.lc 357:19-357:29 {a} -> {b:Nat} -> Vec b a -> Bool
2367testdata/Builtins.lc 357:19-357:31 Bool 2367testdata/Builtins.lc 357:19-357:31 Bool
2368testdata/Builtins.lc 357:19-357:58 Vec b_ Swizz -> Vec c_ e_ | Vec b_ c_ -> Vec b_ Swizz -> Vec c_ e_ | VecS e_ c_ 2368testdata/Builtins.lc 357:19-357:58 Vec b_ Swizz -> Vec b_ d_ | Vec b_ c_ -> Vec a_ Swizz -> Vec a_ c_ | VecS e_ c_
2369testdata/Builtins.lc 357:30-357:31 Vec f_ g_ 2369testdata/Builtins.lc 357:30-357:31 Vec f_ g_
2370testdata/Builtins.lc 357:34-357:40 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c 2370testdata/Builtins.lc 357:34-357:40 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c
2371testdata/Builtins.lc 357:34-357:56 VecS Swizz a_ -> VecS h_ b_ 2371testdata/Builtins.lc 357:34-357:56 VecS Swizz a_ -> VecS g_ a_
2372testdata/Builtins.lc 357:34-357:58 VecS e_ c_ 2372testdata/Builtins.lc 357:34-357:58 VecS e_ c_
2373testdata/Builtins.lc 357:42-357:53 {a} -> {b:Nat} -> Vec b a -> Swizz->a 2373testdata/Builtins.lc 357:42-357:53 {a} -> {b:Nat} -> Vec b a -> Swizz->a
2374testdata/Builtins.lc 357:42-357:55 Swizz->j_ 2374testdata/Builtins.lc 357:42-357:55 Swizz->i_
2375testdata/Builtins.lc 357:54-357:55 Vec j_ k_ 2375testdata/Builtins.lc 357:54-357:55 Vec j_ k_
2376testdata/Builtins.lc 357:57-357:58 Vec d_ Swizz 2376testdata/Builtins.lc 357:57-357:58 Vec d_ Swizz
2377testdata/Builtins.lc 361:6-361:20 Type 2377testdata/Builtins.lc 361:6-361:20 Type
@@ -2711,11 +2711,11 @@ testdata/Builtins.lc 488:1-488:20 {a : List Type} -> {b:PrimitiveType} -> Raste
2711testdata/Builtins.lc 488:32-488:38 {a} -> List (List a) -> List a 2711testdata/Builtins.lc 488:32-488:38 {a} -> List (List a) -> List a
2712testdata/Builtins.lc 488:32-488:74 List (Vector 1 (Maybe (SimpleFragment (HList b_)))) 2712testdata/Builtins.lc 488:32-488:74 List (Vector 1 (Maybe (SimpleFragment (HList b_))))
2713testdata/Builtins.lc 488:40-488:43 {a} -> {b} -> (a->b) -> List a -> List b 2713testdata/Builtins.lc 488:40-488:43 {a} -> {b} -> (a->b) -> List a -> List b
2714testdata/Builtins.lc 488:40-488:71 List (Primitive (HList ('Cons (Vec 4 Float) b_)) a_) -> List (List (Fragment 1 (HList c_))) 2714testdata/Builtins.lc 488:40-488:71 List (Primitive (HList ('Cons (Vec 4 Float) b_)) a_) -> List (List (Fragment 1 (HList b_)))
2715testdata/Builtins.lc 488:40-488:73 List (List (Fragment 1 (HList b_))) 2715testdata/Builtins.lc 488:40-488:73 List (List (Fragment 1 (HList b_)))
2716testdata/Builtins.lc 488:45-488:63 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a) 2716testdata/Builtins.lc 488:45-488:63 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a)
2717testdata/Builtins.lc 488:45-488:66 RasterContext (HList ('Cons (Vec 4 Float) b_)) a_ -> Primitive (HList ('Cons (Vec 4 Float) c_)) b_ -> FragmentStream 1 (HList d_) 2717testdata/Builtins.lc 488:45-488:66 RasterContext (HList ('Cons (Vec 4 Float) b_)) a_ -> Primitive (HList ('Cons (Vec 4 Float) b_)) a_ -> FragmentStream 1 (HList b_)
2718testdata/Builtins.lc 488:45-488:70 Primitive (HList ('Cons (Vec 4 Float) b_)) a_ -> FragmentStream 1 (HList c_) 2718testdata/Builtins.lc 488:45-488:70 Primitive (HList ('Cons (Vec 4 Float) b_)) a_ -> FragmentStream 1 (HList b_)
2719testdata/Builtins.lc 488:64-488:66 i_ 2719testdata/Builtins.lc 488:64-488:66 i_
2720testdata/Builtins.lc 488:67-488:70 h_ 2720testdata/Builtins.lc 488:67-488:70 h_
2721testdata/Builtins.lc 488:72-488:73 d_ 2721testdata/Builtins.lc 488:72-488:73 d_
@@ -2724,17 +2724,17 @@ testdata/Builtins.lc 490:36-490:43 Type->Nat
2724testdata/Builtins.lc 490:58-490:59 ImageKind->Nat | Nat | Nat -> ImageKind->Nat | Type->Nat 2724testdata/Builtins.lc 490:58-490:59 ImageKind->Nat | Nat | Nat -> ImageKind->Nat | Type->Nat
2725testdata/Builtins.lc 492:12-492:15 Type 2725testdata/Builtins.lc 492:12-492:15 Type
2726testdata/Builtins.lc 492:12-492:23 Type 2726testdata/Builtins.lc 492:12-492:23 Type
2727testdata/Builtins.lc 492:12-495:50 a_->b_ | {a} -> List a -> Type 2727testdata/Builtins.lc 492:12-495:50 a_->a_ | {a} -> List a -> Type
2728testdata/Builtins.lc 492:13-492:14 b_ 2728testdata/Builtins.lc 492:13-492:14 b_
2729testdata/Builtins.lc 492:19-492:23 Type 2729testdata/Builtins.lc 492:19-492:23 Type
2730testdata/Builtins.lc 493:1-493:8 {a} -> List a -> Type 2730testdata/Builtins.lc 493:1-493:8 {a} -> List a -> Type
2731testdata/Builtins.lc 493:14-493:19 Type 2731testdata/Builtins.lc 493:14-493:19 Type
2732testdata/Builtins.lc 493:14-495:50 List a_ -> Type | Type 2732testdata/Builtins.lc 493:14-495:50 List a_ -> Type | Type
2733testdata/Builtins.lc 494:15-494:20 Type 2733testdata/Builtins.lc 494:15-494:20 Type
2734testdata/Builtins.lc 494:15-495:50 List b_ -> Type | List c_ -> Type | Type | a_ -> List b_ -> Type 2734testdata/Builtins.lc 494:15-495:50 List b_ -> Type | List c_ -> Type | Type | a_ -> List a_ -> Type
2735testdata/Builtins.lc 495:22-495:25 Type -> Type->Type 2735testdata/Builtins.lc 495:22-495:25 Type -> Type->Type
2736testdata/Builtins.lc 495:22-495:33 Type->Type 2736testdata/Builtins.lc 495:22-495:33 Type->Type
2737testdata/Builtins.lc 495:22-495:50 List b_ -> Type | Type | a_ -> List b_ -> Type 2737testdata/Builtins.lc 495:22-495:50 List b_ -> Type | Type | a_ -> List a_ -> Type
2738testdata/Builtins.lc 495:27-495:28 g_ 2738testdata/Builtins.lc 495:27-495:28 g_
2739testdata/Builtins.lc 495:27-495:30 f_->Type 2739testdata/Builtins.lc 495:27-495:30 f_->Type
2740testdata/Builtins.lc 495:27-495:32 Type 2740testdata/Builtins.lc 495:27-495:32 Type
@@ -2743,7 +2743,7 @@ testdata/Builtins.lc 495:31-495:32 c_
2743testdata/Builtins.lc 495:35-495:42 {a} -> List a -> Type 2743testdata/Builtins.lc 495:35-495:42 {a} -> List a -> Type
2744testdata/Builtins.lc 495:35-495:49 Type 2744testdata/Builtins.lc 495:35-495:49 Type
2745testdata/Builtins.lc 495:44-495:45 g_ 2745testdata/Builtins.lc 495:44-495:45 g_
2746testdata/Builtins.lc 495:44-495:46 List f_ -> List g_ 2746testdata/Builtins.lc 495:44-495:46 List f_ -> List f_
2747testdata/Builtins.lc 495:44-495:48 List e_ 2747testdata/Builtins.lc 495:44-495:48 List e_
2748testdata/Builtins.lc 495:45-495:46 {a} -> a -> List a -> List a 2748testdata/Builtins.lc 495:45-495:46 {a} -> a -> List a -> List a
2749testdata/Builtins.lc 495:46-495:48 List e_ 2749testdata/Builtins.lc 495:46-495:48 List e_
@@ -2768,12 +2768,12 @@ testdata/Builtins.lc 512:1-512:11 List ImageKind -> List Type
2768testdata/Builtins.lc 512:25-512:28 {a} -> {b} -> (a->b) -> List a -> List b 2768testdata/Builtins.lc 512:25-512:28 {a} -> {b} -> (a->b) -> List a -> List b
2769testdata/Builtins.lc 512:25-512:38 List ImageKind -> List Type 2769testdata/Builtins.lc 512:25-512:38 List ImageKind -> List Type
2770testdata/Builtins.lc 512:25-512:40 List Type 2770testdata/Builtins.lc 512:25-512:40 List Type
2771testdata/Builtins.lc 512:25-513:31 List ImageKind -> List Type | List Type | List Type -> ImageKind -> List Type | List b_ -> List Type | a_ -> List b_ -> List Type 2771testdata/Builtins.lc 512:25-513:31 List ImageKind -> List Type | List Type | List Type -> ImageKind -> List Type | List b_ -> List Type | a_ -> List a_ -> List Type
2772testdata/Builtins.lc 512:29-512:38 ImageKind->Type 2772testdata/Builtins.lc 512:29-512:38 ImageKind->Type
2773testdata/Builtins.lc 512:39-512:40 List c_ 2773testdata/Builtins.lc 512:39-512:40 List c_
2774testdata/Builtins.lc 513:16-513:19 {a} -> {b} -> (a->b) -> List a -> List b 2774testdata/Builtins.lc 513:16-513:19 {a} -> {b} -> (a->b) -> List a -> List b
2775testdata/Builtins.lc 513:16-513:29 List ImageKind -> List Type 2775testdata/Builtins.lc 513:16-513:29 List ImageKind -> List Type
2776testdata/Builtins.lc 513:16-513:31 List Type | Type->b_ 2776testdata/Builtins.lc 513:16-513:31 List Type | Type->a_
2777testdata/Builtins.lc 513:20-513:29 ImageKind->Type 2777testdata/Builtins.lc 513:20-513:29 ImageKind->Type
2778testdata/Builtins.lc 513:30-513:31 List ImageKind 2778testdata/Builtins.lc 513:30-513:31 List ImageKind
2779testdata/Builtins.lc 515:40-515:49 Type 2779testdata/Builtins.lc 515:40-515:49 Type
@@ -2826,9 +2826,9 @@ testdata/Builtins.lc 519:25-519:28 f_
2826testdata/Builtins.lc 519:30-519:31 ((b_)) | e_ 2826testdata/Builtins.lc 519:30-519:31 ((b_)) | e_
2827testdata/Builtins.lc 520:1-520:8 {a:Nat} -> {b : List Type} -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> (HList b, List (Fragment a (HList ('imageType' ('map Type ImageKind FragmentOperationKind b))))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) 2827testdata/Builtins.lc 520:1-520:8 {a:Nat} -> {b : List Type} -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> (HList b, List (Fragment a (HList ('imageType' ('map Type ImageKind FragmentOperationKind b))))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b)
2828testdata/Builtins.lc 520:25-520:35 {a : List ImageKind} -> {b:Nat} -> {c : List Type} -> {_ : a ~ 'map Type ImageKind FragmentOperationKind c} -> HList c -> FragmentStream b (HList ('imageType' a)) -> FrameBuffer b a -> FrameBuffer b a 2828testdata/Builtins.lc 520:25-520:35 {a : List ImageKind} -> {b:Nat} -> {c : List Type} -> {_ : a ~ 'map Type ImageKind FragmentOperationKind c} -> HList c -> FragmentStream b (HList ('imageType' a)) -> FrameBuffer b a -> FrameBuffer b a
2829testdata/Builtins.lc 520:25-520:39 FragmentStream b_ (HList ('imageType' ('map Type ImageKind FragmentOperationKind a_))) -> FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind c_) 2829testdata/Builtins.lc 520:25-520:39 FragmentStream b_ (HList ('imageType' ('map Type ImageKind FragmentOperationKind a_))) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_)
2830testdata/Builtins.lc 520:25-520:43 FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) -> FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) 2830testdata/Builtins.lc 520:25-520:43 FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_)
2831testdata/Builtins.lc 520:25-520:46 FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) | HList c_ -> c_ | c_ -> HList c_ -> c_ 2831testdata/Builtins.lc 520:25-520:46 FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) | HList c_ -> b_ | c_ -> HList b_ -> a_
2832testdata/Builtins.lc 520:36-520:39 m_ 2832testdata/Builtins.lc 520:36-520:39 m_
2833testdata/Builtins.lc 520:40-520:43 h_ 2833testdata/Builtins.lc 520:40-520:43 h_
2834testdata/Builtins.lc 520:44-520:46 n_ 2834testdata/Builtins.lc 520:44-520:46 n_
@@ -2863,12 +2863,12 @@ testdata/Builtins.lc 532:1-532:11 {a : List Type} -> {_ : 'sameLayerCounts a} -
2863testdata/Builtins.lc 532:14-532:25 {a : List Type} -> {_ : 'sameLayerCounts a} -> HList a -> FrameBuffer (ImageLC ('head Type a)) ('map Type ImageKind GetImageKind a) 2863testdata/Builtins.lc 532:14-532:25 {a : List Type} -> {_ : 'sameLayerCounts a} -> HList a -> FrameBuffer (ImageLC ('head Type a)) ('map Type ImageKind GetImageKind a)
2864testdata/Builtins.lc 534:1-534:11 {a:Nat} -> {b : List Type} -> {c} -> HList b -> (c -> HList ('imageType' ('map Type ImageKind FragmentOperationKind b))) -> List (Vector a (Maybe (SimpleFragment c))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) 2864testdata/Builtins.lc 534:1-534:11 {a:Nat} -> {b : List Type} -> {c} -> HList b -> (c -> HList ('imageType' ('map Type ImageKind FragmentOperationKind b))) -> List (Vector a (Maybe (SimpleFragment c))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b)
2865testdata/Builtins.lc 534:34-534:44 {a : List ImageKind} -> {b:Nat} -> {c : List Type} -> {_ : a ~ 'map Type ImageKind FragmentOperationKind c} -> HList c -> FragmentStream b (HList ('imageType' a)) -> FrameBuffer b a -> FrameBuffer b a 2865testdata/Builtins.lc 534:34-534:44 {a : List ImageKind} -> {b:Nat} -> {c : List Type} -> {_ : a ~ 'map Type ImageKind FragmentOperationKind c} -> HList c -> FragmentStream b (HList ('imageType' a)) -> FrameBuffer b a -> FrameBuffer b a
2866testdata/Builtins.lc 534:34-534:48 FragmentStream b_ (HList ('imageType' ('map Type ImageKind FragmentOperationKind a_))) -> FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind c_) 2866testdata/Builtins.lc 534:34-534:48 FragmentStream b_ (HList ('imageType' ('map Type ImageKind FragmentOperationKind a_))) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind a_)
2867testdata/Builtins.lc 534:34-534:76 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind c_) 2867testdata/Builtins.lc 534:34-534:76 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_)
2868testdata/Builtins.lc 534:34-534:79 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) 2868testdata/Builtins.lc 534:34-534:79 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_)
2869testdata/Builtins.lc 534:45-534:48 j_ 2869testdata/Builtins.lc 534:45-534:48 j_
2870testdata/Builtins.lc 534:50-534:62 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b))) 2870testdata/Builtins.lc 534:50-534:62 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b)))
2871testdata/Builtins.lc 534:50-534:70 List (Vector a_ (Maybe (SimpleFragment c_))) -> List (Vector b_ (Maybe (SimpleFragment c_))) 2871testdata/Builtins.lc 534:50-534:70 List (Vector a_ (Maybe (SimpleFragment c_))) -> List (Vector a_ (Maybe (SimpleFragment b_)))
2872testdata/Builtins.lc 534:50-534:75 List (Vector c_ (Maybe (SimpleFragment (HList ('imageType' ('map Type ImageKind FragmentOperationKind b_)))))) 2872testdata/Builtins.lc 534:50-534:75 List (Vector c_ (Maybe (SimpleFragment (HList ('imageType' ('map Type ImageKind FragmentOperationKind b_))))))
2873testdata/Builtins.lc 534:63-534:70 k_ 2873testdata/Builtins.lc 534:63-534:70 k_
2874testdata/Builtins.lc 534:71-534:75 g_ 2874testdata/Builtins.lc 534:71-534:75 g_
diff --git a/testdata/Internals.out b/testdata/Internals.out
index 8f9dc73c..7ca88d81 100644
--- a/testdata/Internals.out
+++ b/testdata/Internals.out
@@ -139,7 +139,7 @@ testdata/Internals.lc 36:84-36:87 Type
139testdata/Internals.lc 36:86-36:87 Type 139testdata/Internals.lc 36:86-36:87 Type
140testdata/Internals.lc 38:6-38:11 {a} -> a -> a->Type 140testdata/Internals.lc 38:6-38:11 {a} -> a -> a->Type
141testdata/Internals.lc 38:14-38:18 (a:Type) -> a -> a->Type 141testdata/Internals.lc 38:14-38:18 (a:Type) -> a -> a->Type
142testdata/Internals.lc 38:14-38:20 a_ -> b_->Type 142testdata/Internals.lc 38:14-38:20 a_ -> a_->Type
143testdata/Internals.lc 41:1-41:4 Unit -> Unit->Unit 143testdata/Internals.lc 41:1-41:4 Unit -> Unit->Unit
144testdata/Internals.lc 41:8-41:12 Type 144testdata/Internals.lc 41:8-41:12 Type
145testdata/Internals.lc 41:16-41:20 Type 145testdata/Internals.lc 41:16-41:20 Type
@@ -236,7 +236,7 @@ testdata/Internals.lc 74:32-74:38 Type
236testdata/Internals.lc 74:37-74:38 Type 236testdata/Internals.lc 74:37-74:38 Type
237testdata/Internals.lc 75:1-75:15 {a} -> Bool -> a -> a->a 237testdata/Internals.lc 75:1-75:15 {a} -> Bool -> a -> a->a
238testdata/Internals.lc 75:28-75:29 d_ 238testdata/Internals.lc 75:28-75:29 d_
239testdata/Internals.lc 75:28-76:29 Bool -> b_ -> c_->d_ | Bool->e_ | b_ -> c_->d_ | c_->d_ | d_ 239testdata/Internals.lc 75:28-76:29 Bool -> a_ -> a_->a_ | Bool->d_ | b_ -> b_->b_ | c_->c_ | d_
240testdata/Internals.lc 76:28-76:29 e_ 240testdata/Internals.lc 76:28-76:29 e_
241testdata/Internals.lc 78:1-78:5 Ordering->Bool 241testdata/Internals.lc 78:1-78:5 Ordering->Bool
242testdata/Internals.lc 78:11-78:15 Bool 242testdata/Internals.lc 78:11-78:15 Bool
@@ -260,30 +260,30 @@ testdata/Internals.lc 85:3-85:9 {a} -> {_ : Num a} -> a->a
260testdata/Internals.lc 85:13-85:14 Type 260testdata/Internals.lc 85:13-85:14 Type
261testdata/Internals.lc 85:13-85:19 Type 261testdata/Internals.lc 85:13-85:19 Type
262testdata/Internals.lc 85:18-85:19 Type 262testdata/Internals.lc 85:18-85:19 Type
263testdata/Internals.lc 88:13-100:25 Int->c_ | {_ : Num a_} -> Int->c_ | {a} -> {_ : Num a} -> Int->a 263testdata/Internals.lc 88:13-100:25 Int->b_ | {_ : Num a_} -> Int->a_ | {a} -> {_ : Num a} -> Int->a
264testdata/Internals.lc 88:19-88:20 b_ 264testdata/Internals.lc 88:19-88:20 b_
265testdata/Internals.lc 89:13-89:27 Int -> Int->Ordering 265testdata/Internals.lc 89:13-89:27 Int -> Int->Ordering
266testdata/Internals.lc 89:13-101:22 b_ -> c_->Ordering | {_ : Num a_} -> b_ -> c_->Ordering | {a} -> {_ : Num a} -> a -> a->Ordering 266testdata/Internals.lc 89:13-101:22 b_ -> b_->Ordering | {_ : Num a_} -> a_ -> a_->Ordering | {a} -> {_ : Num a} -> a -> a->Ordering
267testdata/Internals.lc 90:13-90:26 Int->Int 267testdata/Internals.lc 90:13-90:26 Int->Int
268testdata/Internals.lc 90:13-102:22 b_->c_ | {_ : Num a_} -> b_->c_ | {a} -> {_ : Num a} -> a->a 268testdata/Internals.lc 90:13-102:22 b_->b_ | {_ : Num a_} -> a_->a_ | {a} -> {_ : Num a} -> a->a
269testdata/Internals.lc 92:13-92:26 Int->Word 269testdata/Internals.lc 92:13-92:26 Int->Word
270testdata/Internals.lc 92:13-100:25 Int->c_ 270testdata/Internals.lc 92:13-100:25 Int->b_
271testdata/Internals.lc 93:13-93:28 Word -> Word->Ordering 271testdata/Internals.lc 93:13-93:28 Word -> Word->Ordering
272testdata/Internals.lc 93:13-101:22 b_ -> c_->Ordering 272testdata/Internals.lc 93:13-101:22 b_ -> b_->Ordering
273testdata/Internals.lc 94:13-94:27 Word->Word 273testdata/Internals.lc 94:13-94:27 Word->Word
274testdata/Internals.lc 94:13-102:22 b_->c_ 274testdata/Internals.lc 94:13-102:22 b_->b_
275testdata/Internals.lc 96:13-96:27 Int->Float 275testdata/Internals.lc 96:13-96:27 Int->Float
276testdata/Internals.lc 96:13-100:25 Int->c_ 276testdata/Internals.lc 96:13-100:25 Int->b_
277testdata/Internals.lc 97:13-97:29 Float -> Float->Ordering 277testdata/Internals.lc 97:13-97:29 Float -> Float->Ordering
278testdata/Internals.lc 97:13-101:22 b_ -> c_->Ordering 278testdata/Internals.lc 97:13-101:22 b_ -> b_->Ordering
279testdata/Internals.lc 98:13-98:28 Float->Float 279testdata/Internals.lc 98:13-98:28 Float->Float
280testdata/Internals.lc 98:13-102:22 b_->c_ 280testdata/Internals.lc 98:13-102:22 b_->b_
281testdata/Internals.lc 100:13-100:25 Int->Nat 281testdata/Internals.lc 100:13-100:25 Int->Nat
282testdata/Internals.lc 101:13-101:22 {a}->a 282testdata/Internals.lc 101:13-101:22 {a}->a
283testdata/Internals.lc 102:13-102:22 {a}->a 283testdata/Internals.lc 102:13-102:22 {a}->a
284testdata/Internals.lc 104:7-104:9 Type->Type 284testdata/Internals.lc 104:7-104:9 Type->Type
285testdata/Internals.lc 104:7-105:27 Type 285testdata/Internals.lc 104:7-105:27 Type
286testdata/Internals.lc 104:7-120:29 a_->b_ | {a} -> {_ : Eq a} -> a -> a->Bool 286testdata/Internals.lc 104:7-120:29 a_->a_ | {a} -> {_ : Eq a} -> a -> a->Bool
287testdata/Internals.lc 105:6-105:8 {a} -> {_ : Eq a} -> a -> a->Bool 287testdata/Internals.lc 105:6-105:8 {a} -> {_ : Eq a} -> a -> a->Bool
288testdata/Internals.lc 105:13-105:14 Type 288testdata/Internals.lc 105:13-105:14 Type
289testdata/Internals.lc 105:13-105:27 Type 289testdata/Internals.lc 105:13-105:27 Type
@@ -292,7 +292,7 @@ testdata/Internals.lc 105:18-105:27 Type
292testdata/Internals.lc 105:23-105:27 Type 292testdata/Internals.lc 105:23-105:27 Type
293testdata/Internals.lc 109:35-109:39 Ordering->Bool 293testdata/Internals.lc 109:35-109:39 Ordering->Bool
294testdata/Internals.lc 109:35-109:63 Bool 294testdata/Internals.lc 109:35-109:63 Bool
295testdata/Internals.lc 109:35-120:29 b_ -> c_->Bool | {_ : Eq a_} -> b_ -> c_->Bool | {a} -> {_ : Eq a} -> a -> a->Bool 295testdata/Internals.lc 109:35-120:29 b_ -> b_->Bool | {_ : Eq a_} -> a_ -> a_->Bool | {a} -> {_ : Eq a} -> a -> a->Bool
296testdata/Internals.lc 109:41-109:58 String -> String->Ordering 296testdata/Internals.lc 109:41-109:58 String -> String->Ordering
297testdata/Internals.lc 109:41-109:60 String->Ordering 297testdata/Internals.lc 109:41-109:60 String->Ordering
298testdata/Internals.lc 109:41-109:62 Ordering 298testdata/Internals.lc 109:41-109:62 Ordering
@@ -300,7 +300,7 @@ testdata/Internals.lc 109:59-109:60 d_
300testdata/Internals.lc 109:61-109:62 b_ 300testdata/Internals.lc 109:61-109:62 b_
301testdata/Internals.lc 110:33-110:37 Ordering->Bool 301testdata/Internals.lc 110:33-110:37 Ordering->Bool
302testdata/Internals.lc 110:33-110:59 Bool 302testdata/Internals.lc 110:33-110:59 Bool
303testdata/Internals.lc 110:33-120:29 b_ -> c_->Bool 303testdata/Internals.lc 110:33-120:29 b_ -> b_->Bool
304testdata/Internals.lc 110:39-110:54 Char -> Char->Ordering 304testdata/Internals.lc 110:39-110:54 Char -> Char->Ordering
305testdata/Internals.lc 110:39-110:56 Char->Ordering 305testdata/Internals.lc 110:39-110:56 Char->Ordering
306testdata/Internals.lc 110:39-110:58 Ordering 306testdata/Internals.lc 110:39-110:58 Ordering
@@ -308,7 +308,7 @@ testdata/Internals.lc 110:55-110:56 d_
308testdata/Internals.lc 110:57-110:58 b_ 308testdata/Internals.lc 110:57-110:58 b_
309testdata/Internals.lc 111:32-111:36 Ordering->Bool 309testdata/Internals.lc 111:32-111:36 Ordering->Bool
310testdata/Internals.lc 111:32-111:57 Bool 310testdata/Internals.lc 111:32-111:57 Bool
311testdata/Internals.lc 111:32-120:29 b_ -> c_->Bool 311testdata/Internals.lc 111:32-120:29 b_ -> b_->Bool
312testdata/Internals.lc 111:38-111:52 Int -> Int->Ordering 312testdata/Internals.lc 111:38-111:52 Int -> Int->Ordering
313testdata/Internals.lc 111:38-111:54 Int->Ordering 313testdata/Internals.lc 111:38-111:54 Int->Ordering
314testdata/Internals.lc 111:38-111:56 Ordering 314testdata/Internals.lc 111:38-111:56 Ordering
@@ -316,7 +316,7 @@ testdata/Internals.lc 111:53-111:54 d_
316testdata/Internals.lc 111:55-111:56 b_ 316testdata/Internals.lc 111:55-111:56 b_
317testdata/Internals.lc 112:34-112:38 Ordering->Bool 317testdata/Internals.lc 112:34-112:38 Ordering->Bool
318testdata/Internals.lc 112:34-112:61 Bool 318testdata/Internals.lc 112:34-112:61 Bool
319testdata/Internals.lc 112:34-120:29 b_ -> c_->Bool 319testdata/Internals.lc 112:34-120:29 b_ -> b_->Bool
320testdata/Internals.lc 112:40-112:56 Float -> Float->Ordering 320testdata/Internals.lc 112:40-112:56 Float -> Float->Ordering
321testdata/Internals.lc 112:40-112:58 Float->Ordering 321testdata/Internals.lc 112:40-112:58 Float->Ordering
322testdata/Internals.lc 112:40-112:60 Ordering 322testdata/Internals.lc 112:40-112:60 Ordering
@@ -324,7 +324,7 @@ testdata/Internals.lc 112:57-112:58 d_
324testdata/Internals.lc 112:59-112:60 b_ 324testdata/Internals.lc 112:59-112:60 b_
325testdata/Internals.lc 114:20-114:24 Bool 325testdata/Internals.lc 114:20-114:24 Bool
326testdata/Internals.lc 114:20-116:19 Bool | Bool->Bool 326testdata/Internals.lc 114:20-116:19 Bool | Bool->Bool
327testdata/Internals.lc 114:20-120:29 b_ -> c_->Bool 327testdata/Internals.lc 114:20-120:29 b_ -> b_->Bool
328testdata/Internals.lc 115:22-115:26 Bool 328testdata/Internals.lc 115:22-115:26 Bool
329testdata/Internals.lc 115:22-116:19 Bool | Bool->Bool 329testdata/Internals.lc 115:22-116:19 Bool | Bool->Bool
330testdata/Internals.lc 116:14-116:19 Bool 330testdata/Internals.lc 116:14-116:19 Bool
diff --git a/testdata/Prelude.out b/testdata/Prelude.out
index 99401d65..d5d3852b 100644
--- a/testdata/Prelude.out
+++ b/testdata/Prelude.out
@@ -188,11 +188,11 @@ testdata/Prelude.lc 23:20-23:21 g_
188testdata/Prelude.lc 23:22-23:23 h_ 188testdata/Prelude.lc 23:22-23:23 h_
189testdata/Prelude.lc 25:1-25:8 {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b 189testdata/Prelude.lc 25:1-25:8 {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b
190testdata/Prelude.lc 25:20-25:21 o_ 190testdata/Prelude.lc 25:20-25:21 o_
191testdata/Prelude.lc 25:20-25:25 HList c_ -> c_ | c_ | c_ -> HList c_ -> c_ | d_ 191testdata/Prelude.lc 25:20-25:25 HList c_ -> b_ | c_ | c_ -> HList b_ -> a_ | d_
192testdata/Prelude.lc 25:22-25:23 n_ 192testdata/Prelude.lc 25:22-25:23 n_
193testdata/Prelude.lc 25:24-25:25 j_ 193testdata/Prelude.lc 25:24-25:25 j_
194testdata/Prelude.lc 27:2-27:5 {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d) 194testdata/Prelude.lc 27:2-27:5 {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d)
195testdata/Prelude.lc 27:20-27:30 (b_, a_) | HList c_ -> c_ | c_ -> HList c_ -> c_ 195testdata/Prelude.lc 27:20-27:30 (b_, a_) | HList c_ -> b_ | c_ -> HList b_ -> a_
196testdata/Prelude.lc 27:21-27:22 s_ 196testdata/Prelude.lc 27:21-27:22 s_
197testdata/Prelude.lc 27:23-27:24 p_ 197testdata/Prelude.lc 27:23-27:24 p_
198testdata/Prelude.lc 27:26-27:27 r_ 198testdata/Prelude.lc 27:26-27:27 r_
@@ -202,7 +202,7 @@ testdata/Prelude.lc 29:1-29:3 Float
202testdata/Prelude.lc 29:6-29:23 Float 202testdata/Prelude.lc 29:6-29:23 Float
203testdata/Prelude.lc 31:8-31:11 Type 203testdata/Prelude.lc 31:8-31:11 Type
204testdata/Prelude.lc 31:8-31:29 Type 204testdata/Prelude.lc 31:8-31:29 Type
205testdata/Prelude.lc 31:8-34:39 a_->b_ | {a} -> {b} -> List a -> List b -> List (a, b) 205testdata/Prelude.lc 31:8-34:39 a_->a_ | {a} -> {b} -> List a -> List b -> List (a, b)
206testdata/Prelude.lc 31:9-31:10 d_ 206testdata/Prelude.lc 31:9-31:10 d_
207testdata/Prelude.lc 31:15-31:18 Type 207testdata/Prelude.lc 31:15-31:18 Type
208testdata/Prelude.lc 31:15-31:29 Type 208testdata/Prelude.lc 31:15-31:29 Type
@@ -214,23 +214,23 @@ testdata/Prelude.lc 31:24-31:27 List Type
214testdata/Prelude.lc 31:26-31:27 List Type | Type 214testdata/Prelude.lc 31:26-31:27 List Type | Type
215testdata/Prelude.lc 32:1-32:4 {a} -> {b} -> List a -> List b -> List (a, b) 215testdata/Prelude.lc 32:1-32:4 {a} -> {b} -> List a -> List b -> List (a, b)
216testdata/Prelude.lc 32:22-32:24 {a} -> List a 216testdata/Prelude.lc 32:22-32:24 {a} -> List a
217testdata/Prelude.lc 32:22-34:39 List (d_, c_) | List a_ -> List (b_, e_) | List b_ -> List (d_, c_) | List b_ -> List b_ -> List (d_, c_) 217testdata/Prelude.lc 32:22-34:39 List (d_, c_) | List a_ -> List (a_, d_) | List b_ -> List (c_, b_) | List b_ -> List a_ -> List (b_, a_)
218testdata/Prelude.lc 33:22-33:24 {a} -> List a 218testdata/Prelude.lc 33:22-33:24 {a} -> List a
219testdata/Prelude.lc 33:22-34:39 List (c_, f_) | List a_ -> List (f_, b_) | List c_ -> List c_ | b_ -> List c_ -> List c_ 219testdata/Prelude.lc 33:22-34:39 List (c_, f_) | List a_ -> List (e_, a_) | List c_ -> List b_ | b_ -> List b_ -> List a_
220testdata/Prelude.lc 34:23-34:28 (h_, d_) 220testdata/Prelude.lc 34:23-34:28 (h_, d_)
221testdata/Prelude.lc 34:23-34:29 List (h_, d_) -> List (i_, e_) 221testdata/Prelude.lc 34:23-34:29 List (h_, d_) -> List (h_, d_)
222testdata/Prelude.lc 34:23-34:39 List (g_, c_) | List c_ -> List c_ | b_ -> List c_ -> List c_ 222testdata/Prelude.lc 34:23-34:39 List (g_, c_) | List c_ -> List b_ | b_ -> List b_ -> List a_
223testdata/Prelude.lc 34:24-34:25 k_ 223testdata/Prelude.lc 34:24-34:25 k_
224testdata/Prelude.lc 34:26-34:27 ((d_)) | g_ 224testdata/Prelude.lc 34:26-34:27 ((d_)) | g_
225testdata/Prelude.lc 34:28-34:29 {a} -> a -> List a -> List a 225testdata/Prelude.lc 34:28-34:29 {a} -> a -> List a -> List a
226testdata/Prelude.lc 34:30-34:33 {a} -> {b} -> List a -> List b -> List (a, b) 226testdata/Prelude.lc 34:30-34:33 {a} -> {b} -> List a -> List b -> List (a, b)
227testdata/Prelude.lc 34:30-34:36 List a_ -> List (i_, b_) 227testdata/Prelude.lc 34:30-34:36 List a_ -> List (h_, a_)
228testdata/Prelude.lc 34:30-34:39 List (g_, c_) 228testdata/Prelude.lc 34:30-34:39 List (g_, c_)
229testdata/Prelude.lc 34:34-34:36 List i_ 229testdata/Prelude.lc 34:34-34:36 List i_
230testdata/Prelude.lc 34:37-34:39 List c_ 230testdata/Prelude.lc 34:37-34:39 List c_
231testdata/Prelude.lc 36:10-36:17 Type 231testdata/Prelude.lc 36:10-36:17 Type
232testdata/Prelude.lc 36:10-36:30 Type 232testdata/Prelude.lc 36:10-36:30 Type
233testdata/Prelude.lc 36:10-39:27 a_->b_ | {a} -> {b} -> List (a, b) -> (List a, List b) 233testdata/Prelude.lc 36:10-39:27 a_->a_ | {a} -> {b} -> List (a, b) -> (List a, List b)
234testdata/Prelude.lc 36:11-36:16 Type 234testdata/Prelude.lc 36:11-36:16 Type
235testdata/Prelude.lc 36:12-36:13 e_ 235testdata/Prelude.lc 36:12-36:13 e_
236testdata/Prelude.lc 36:12-36:15 List Type 236testdata/Prelude.lc 36:12-36:15 List Type
@@ -243,40 +243,40 @@ testdata/Prelude.lc 36:26-36:29 List Type | Type
243testdata/Prelude.lc 36:27-36:28 Type 243testdata/Prelude.lc 36:27-36:28 Type
244testdata/Prelude.lc 37:1-37:6 {a} -> {b} -> List (a, b) -> (List a, List b) 244testdata/Prelude.lc 37:1-37:6 {a} -> {b} -> List (a, b) -> (List a, List b)
245testdata/Prelude.lc 37:12-37:19 (List b_, List a_) 245testdata/Prelude.lc 37:12-37:19 (List b_, List a_)
246testdata/Prelude.lc 37:12-39:27 (List c_, List b_) | List (b_, a_) -> (List c_, List b_) 246testdata/Prelude.lc 37:12-39:27 (List c_, List b_) | List (b_, a_) -> (List b_, List a_)
247testdata/Prelude.lc 37:13-37:15 {a} -> List a 247testdata/Prelude.lc 37:13-37:15 {a} -> List a
248testdata/Prelude.lc 37:16-37:18 ((List a_)) | {a} -> List a 248testdata/Prelude.lc 37:16-37:18 ((List a_)) | {a} -> List a
249testdata/Prelude.lc 38:20-38:31 (List n_, List i_) 249testdata/Prelude.lc 38:20-38:31 (List n_, List i_)
250testdata/Prelude.lc 38:20-39:27 (List d_, List a_) | (List d_, List c_) | (List h_, List c_) | HList c_ -> c_ | List d_ -> (List d_, List c_) | c_ -> HList c_ -> c_ | c_ -> List d_ -> (List d_, List c_) 250testdata/Prelude.lc 38:20-39:27 (List d_, List a_) | (List d_, List c_) | (List h_, List c_) | HList c_ -> b_ | List d_ -> (List c_, List b_) | c_ -> HList b_ -> a_ | c_ -> List c_ -> (List b_, List a_)
251testdata/Prelude.lc 38:21-38:22 s_ 251testdata/Prelude.lc 38:21-38:22 s_
252testdata/Prelude.lc 38:21-38:23 List r_ -> List s_ 252testdata/Prelude.lc 38:21-38:23 List r_ -> List r_
253testdata/Prelude.lc 38:21-38:25 List p_ 253testdata/Prelude.lc 38:21-38:25 List p_
254testdata/Prelude.lc 38:22-38:23 {a} -> a -> List a -> List a 254testdata/Prelude.lc 38:22-38:23 {a} -> a -> List a -> List a
255testdata/Prelude.lc 38:23-38:25 List f_ 255testdata/Prelude.lc 38:23-38:25 List f_
256testdata/Prelude.lc 38:26-38:27 n_ 256testdata/Prelude.lc 38:26-38:27 n_
257testdata/Prelude.lc 38:26-38:28 List m_ -> List n_ 257testdata/Prelude.lc 38:26-38:28 List m_ -> List m_
258testdata/Prelude.lc 38:26-38:30 ((List i_)) | List k_ 258testdata/Prelude.lc 38:26-38:30 ((List i_)) | List k_
259testdata/Prelude.lc 38:27-38:28 {a} -> a -> List a -> List a 259testdata/Prelude.lc 38:27-38:28 {a} -> a -> List a -> List a
260testdata/Prelude.lc 38:28-38:30 List f_ 260testdata/Prelude.lc 38:28-38:30 List f_
261testdata/Prelude.lc 39:10-39:12 HList c_ -> c_ | c_ -> HList c_ -> c_ | d_ | h_ | k_ 261testdata/Prelude.lc 39:10-39:12 HList c_ -> b_ | c_ -> HList b_ -> a_ | d_ | h_ | k_
262testdata/Prelude.lc 39:10-39:15 (List e_, List d_) | (List f_, List e_) 262testdata/Prelude.lc 39:10-39:15 (List e_, List d_) | (List f_, List e_)
263testdata/Prelude.lc 39:13-39:15 HList c_ -> c_ | c_ | c_ -> HList c_ -> c_ | f_ 263testdata/Prelude.lc 39:13-39:15 HList c_ -> b_ | c_ | c_ -> HList b_ -> a_ | f_
264testdata/Prelude.lc 39:19-39:24 {a} -> {b} -> List (a, b) -> (List a, List b) 264testdata/Prelude.lc 39:19-39:24 {a} -> {b} -> List (a, b) -> (List a, List b)
265testdata/Prelude.lc 39:19-39:27 (List b_, List a_) 265testdata/Prelude.lc 39:19-39:27 (List b_, List a_)
266testdata/Prelude.lc 39:25-39:27 List r_ 266testdata/Prelude.lc 39:25-39:27 List r_
267testdata/Prelude.lc 41:1-41:7 {a} -> (a->Bool) -> List a -> List a 267testdata/Prelude.lc 41:1-41:7 {a} -> (a->Bool) -> List a -> List a
268testdata/Prelude.lc 41:21-41:23 {a} -> List a 268testdata/Prelude.lc 41:21-41:23 {a} -> List a
269testdata/Prelude.lc 41:21-44:49 List a_ -> List b_ | a_->b_ 269testdata/Prelude.lc 41:21-44:49 List a_ -> List a_ | a_->a_
270testdata/Prelude.lc 42:22-44:49 List c_ | List c_ -> List c_ | b_ -> List c_ -> List c_ 270testdata/Prelude.lc 42:22-44:49 List c_ | List c_ -> List b_ | b_ -> List b_ -> List a_
271testdata/Prelude.lc 42:27-42:31 g_ 271testdata/Prelude.lc 42:27-42:31 g_
272testdata/Prelude.lc 42:32-42:33 f_ 272testdata/Prelude.lc 42:32-42:33 f_
273testdata/Prelude.lc 43:32-44:49 Bool -> List g_ 273testdata/Prelude.lc 43:32-44:49 Bool -> List f_
274testdata/Prelude.lc 43:33-43:34 h_ 274testdata/Prelude.lc 43:33-43:34 h_
275testdata/Prelude.lc 43:33-43:36 List g_ -> List h_ 275testdata/Prelude.lc 43:33-43:36 List g_ -> List g_
276testdata/Prelude.lc 43:33-43:51 List f_ 276testdata/Prelude.lc 43:33-43:51 List f_
277testdata/Prelude.lc 43:35-43:36 {a} -> a -> List a -> List a 277testdata/Prelude.lc 43:35-43:36 {a} -> a -> List a -> List a
278testdata/Prelude.lc 43:37-43:43 j_ -> List g_ -> List h_ 278testdata/Prelude.lc 43:37-43:43 j_ -> List f_ -> List f_
279testdata/Prelude.lc 43:37-43:48 List f_ -> List g_ 279testdata/Prelude.lc 43:37-43:48 List f_ -> List f_
280testdata/Prelude.lc 43:37-43:51 List f_ 280testdata/Prelude.lc 43:37-43:51 List f_
281testdata/Prelude.lc 43:44-43:48 j_ 281testdata/Prelude.lc 43:44-43:48 j_
282testdata/Prelude.lc 43:49-43:51 List f_ 282testdata/Prelude.lc 43:49-43:51 List f_
@@ -289,7 +289,7 @@ testdata/Prelude.lc 49:10-49:11 b_
289testdata/Prelude.lc 49:16-49:19 Type 289testdata/Prelude.lc 49:16-49:19 Type
290testdata/Prelude.lc 49:17-49:18 Type 290testdata/Prelude.lc 49:17-49:18 Type
291testdata/Prelude.lc 50:1-50:5 {a} -> List a -> List a 291testdata/Prelude.lc 50:1-50:5 {a} -> List a -> List a
292testdata/Prelude.lc 50:16-50:18 List a_ -> List b_ | List b_ | List c_ -> c_ | List d_ | b_ -> List c_ -> c_ 292testdata/Prelude.lc 50:16-50:18 List a_ -> List a_ | List b_ | List c_ -> b_ | List d_ | b_ -> List b_ -> a_
293testdata/Prelude.lc 52:10-52:13 Type 293testdata/Prelude.lc 52:10-52:13 Type
294testdata/Prelude.lc 52:10-52:25 Type 294testdata/Prelude.lc 52:10-52:25 Type
295testdata/Prelude.lc 52:11-52:12 b_ 295testdata/Prelude.lc 52:11-52:12 b_
@@ -300,17 +300,17 @@ testdata/Prelude.lc 52:19-52:23 List Type
300testdata/Prelude.lc 52:22-52:23 List Type | Type 300testdata/Prelude.lc 52:22-52:23 List Type | Type
301testdata/Prelude.lc 53:1-53:6 {a} -> List a -> List (a, a) 301testdata/Prelude.lc 53:1-53:6 {a} -> List a -> List (a, a)
302testdata/Prelude.lc 53:11-53:14 {a} -> {b} -> List a -> List b -> List (a, b) 302testdata/Prelude.lc 53:11-53:14 {a} -> {b} -> List a -> List b -> List (a, b)
303testdata/Prelude.lc 53:11-53:16 List a_ -> List (d_, b_) 303testdata/Prelude.lc 53:11-53:16 List a_ -> List (c_, a_)
304testdata/Prelude.lc 53:11-53:25 List (b_, b_) | List a_ -> List (b_, b_) 304testdata/Prelude.lc 53:11-53:25 List (b_, b_) | List a_ -> List (a_, a_)
305testdata/Prelude.lc 53:15-53:16 List d_ 305testdata/Prelude.lc 53:15-53:16 List d_
306testdata/Prelude.lc 53:18-53:22 {a} -> List a -> List a 306testdata/Prelude.lc 53:18-53:22 {a} -> List a -> List a
307testdata/Prelude.lc 53:18-53:24 List b_ 307testdata/Prelude.lc 53:18-53:24 List b_
308testdata/Prelude.lc 53:23-53:24 List c_ 308testdata/Prelude.lc 53:23-53:24 List c_
309testdata/Prelude.lc 55:1-55:7 {a} -> {b} -> (a -> b->a) -> a -> List b -> a 309testdata/Prelude.lc 55:1-55:7 {a} -> {b} -> (a -> b->a) -> a -> List b -> a
310testdata/Prelude.lc 55:17-55:18 f_ 310testdata/Prelude.lc 55:17-55:18 f_
311testdata/Prelude.lc 55:17-56:41 List b_ -> g_ | a_->b_ 311testdata/Prelude.lc 55:17-56:41 List b_ -> f_ | a_->a_
312testdata/Prelude.lc 56:22-56:28 k_ 312testdata/Prelude.lc 56:22-56:28 k_
313testdata/Prelude.lc 56:22-56:41 List b_ -> g_ | a_ -> List b_ -> g_ 313testdata/Prelude.lc 56:22-56:41 List b_ -> f_ | a_ -> List a_ -> e_
314testdata/Prelude.lc 56:29-56:30 l_ 314testdata/Prelude.lc 56:29-56:30 l_
315testdata/Prelude.lc 56:32-56:33 m_ 315testdata/Prelude.lc 56:32-56:33 m_
316testdata/Prelude.lc 56:34-56:35 n_ 316testdata/Prelude.lc 56:34-56:35 n_
@@ -318,60 +318,60 @@ testdata/Prelude.lc 56:36-56:37 k_
318testdata/Prelude.lc 56:39-56:41 List h_ 318testdata/Prelude.lc 56:39-56:41 List h_
319testdata/Prelude.lc 58:1-58:7 {a} -> (a -> a->a) -> List a -> a 319testdata/Prelude.lc 58:1-58:7 {a} -> (a -> a->a) -> List a -> a
320testdata/Prelude.lc 58:20-58:25 {a} -> {b} -> (b -> a->a) -> a -> List b -> a 320testdata/Prelude.lc 58:20-58:25 {a} -> {b} -> (b -> a->a) -> a -> List b -> a
321testdata/Prelude.lc 58:20-58:27 b_ -> List b_ -> d_ 321testdata/Prelude.lc 58:20-58:27 b_ -> List a_ -> b_
322testdata/Prelude.lc 58:20-58:29 List a_ -> f_ 322testdata/Prelude.lc 58:20-58:29 List a_ -> e_
323testdata/Prelude.lc 58:20-58:32 List c_ -> c_ | b_ -> List c_ -> c_ | c_ 323testdata/Prelude.lc 58:20-58:32 List c_ -> b_ | b_ -> List b_ -> a_ | c_
324testdata/Prelude.lc 58:26-58:27 j_ 324testdata/Prelude.lc 58:26-58:27 j_
325testdata/Prelude.lc 58:28-58:29 f_ 325testdata/Prelude.lc 58:28-58:29 f_
326testdata/Prelude.lc 58:30-58:32 List d_ 326testdata/Prelude.lc 58:30-58:32 List d_
327testdata/Prelude.lc 60:1-60:6 {a} -> List a -> (List a, List a) 327testdata/Prelude.lc 60:1-60:6 {a} -> List a -> (List a, List a)
328testdata/Prelude.lc 60:12-60:20 (List b_, List a_) 328testdata/Prelude.lc 60:12-60:20 (List b_, List a_)
329testdata/Prelude.lc 60:12-61:55 List b_ -> (List c_, List b_) | a_->b_ 329testdata/Prelude.lc 60:12-61:55 List b_ -> (List b_, List a_) | a_->a_
330testdata/Prelude.lc 60:13-60:15 {a} -> List a 330testdata/Prelude.lc 60:13-60:15 {a} -> List a
331testdata/Prelude.lc 60:17-60:19 ((List a_)) | {a} -> List a 331testdata/Prelude.lc 60:17-60:19 ((List a_)) | {a} -> List a
332testdata/Prelude.lc 61:17-61:28 (List i_, c_) 332testdata/Prelude.lc 61:17-61:28 (List i_, c_)
333testdata/Prelude.lc 61:17-61:55 List d_ -> (List d_, List c_) | c_ -> List d_ -> (List d_, List c_) 333testdata/Prelude.lc 61:17-61:55 List d_ -> (List c_, List b_) | c_ -> List c_ -> (List b_, List a_)
334testdata/Prelude.lc 61:18-61:19 m_ 334testdata/Prelude.lc 61:18-61:19 m_
335testdata/Prelude.lc 61:18-61:20 List l_ -> List m_ 335testdata/Prelude.lc 61:18-61:20 List l_ -> List l_
336testdata/Prelude.lc 61:18-61:23 List j_ 336testdata/Prelude.lc 61:18-61:23 List j_
337testdata/Prelude.lc 61:19-61:20 {a} -> a -> List a -> List a 337testdata/Prelude.lc 61:19-61:20 {a} -> a -> List a -> List a
338testdata/Prelude.lc 61:21-61:23 d_ 338testdata/Prelude.lc 61:21-61:23 d_
339testdata/Prelude.lc 61:25-61:27 ((c_)) | f_ 339testdata/Prelude.lc 61:25-61:27 ((c_)) | f_
340testdata/Prelude.lc 61:37-61:39 HList c_ -> c_ | c_ -> HList c_ -> c_ | d_ | h_ | k_ 340testdata/Prelude.lc 61:37-61:39 HList c_ -> b_ | c_ -> HList b_ -> a_ | d_ | h_ | k_
341testdata/Prelude.lc 61:37-61:43 (e_, d_) | d_ 341testdata/Prelude.lc 61:37-61:43 (e_, d_) | d_
342testdata/Prelude.lc 61:41-61:43 HList c_ -> c_ | c_ | c_ -> HList c_ -> c_ | f_ 342testdata/Prelude.lc 61:41-61:43 HList c_ -> b_ | c_ | c_ -> HList b_ -> a_ | f_
343testdata/Prelude.lc 61:47-61:52 i_ 343testdata/Prelude.lc 61:47-61:52 i_
344testdata/Prelude.lc 61:53-61:55 List h_ 344testdata/Prelude.lc 61:53-61:55 List h_
345testdata/Prelude.lc 63:1-63:8 {a} -> (a -> a->Ordering) -> List a -> List a -> List a 345testdata/Prelude.lc 63:1-63:8 {a} -> (a -> a->Ordering) -> List a -> List a -> List a
346testdata/Prelude.lc 63:27-65:32 List b_ -> j_ | List e_ | a_ -> List b_ -> j_ 346testdata/Prelude.lc 63:27-65:32 List b_ -> i_ | List e_ | a_ -> List a_ -> h_
347testdata/Prelude.lc 63:27-67:21 List b_ -> e_ | List c_ | List c_ -> List d_ | a_ -> List b_ -> e_ | a_->b_ 347testdata/Prelude.lc 63:27-67:21 List b_ -> d_ | List c_ | List c_ -> List c_ | a_ -> List a_ -> c_ | a_->a_
348testdata/Prelude.lc 63:32-63:33 j_ 348testdata/Prelude.lc 63:32-63:33 j_
349testdata/Prelude.lc 63:34-63:35 h_ 349testdata/Prelude.lc 63:34-63:35 h_
350testdata/Prelude.lc 63:36-63:37 i_ 350testdata/Prelude.lc 63:36-63:37 i_
351testdata/Prelude.lc 64:11-64:12 j_ 351testdata/Prelude.lc 64:11-64:12 j_
352testdata/Prelude.lc 64:11-64:13 List i_ -> List j_ 352testdata/Prelude.lc 64:11-64:13 List i_ -> List i_
353testdata/Prelude.lc 64:11-64:33 List h_ 353testdata/Prelude.lc 64:11-64:33 List h_
354testdata/Prelude.lc 64:11-65:32 List g_ -> Ordering -> List i_ 354testdata/Prelude.lc 64:11-65:32 List g_ -> Ordering -> List g_
355testdata/Prelude.lc 64:12-64:13 {a} -> a -> List a -> List a 355testdata/Prelude.lc 64:12-64:13 {a} -> a -> List a -> List a
356testdata/Prelude.lc 64:14-64:21 p_ 356testdata/Prelude.lc 64:14-64:21 p_
357testdata/Prelude.lc 64:22-64:23 q_ 357testdata/Prelude.lc 64:22-64:23 q_
358testdata/Prelude.lc 64:24-64:26 List l_ 358testdata/Prelude.lc 64:24-64:26 List l_
359testdata/Prelude.lc 64:28-64:29 j_ 359testdata/Prelude.lc 64:28-64:29 j_
360testdata/Prelude.lc 64:28-64:30 List i_ -> List j_ 360testdata/Prelude.lc 64:28-64:30 List i_ -> List i_
361testdata/Prelude.lc 64:28-64:32 List i_ 361testdata/Prelude.lc 64:28-64:32 List i_
362testdata/Prelude.lc 64:29-64:30 {a} -> a -> List a -> List a 362testdata/Prelude.lc 64:29-64:30 {a} -> a -> List a -> List a
363testdata/Prelude.lc 64:30-64:32 List i_ 363testdata/Prelude.lc 64:30-64:32 List i_
364testdata/Prelude.lc 65:10-65:11 f_ | h_ 364testdata/Prelude.lc 65:10-65:11 f_ | h_
365testdata/Prelude.lc 65:10-65:12 List e_ -> List f_ | List g_ -> List h_ 365testdata/Prelude.lc 65:10-65:12 List e_ -> List e_ | List g_ -> List g_
366testdata/Prelude.lc 65:10-65:32 List g_ 366testdata/Prelude.lc 65:10-65:32 List g_
367testdata/Prelude.lc 65:11-65:12 {a} -> a -> List a -> List a 367testdata/Prelude.lc 65:11-65:12 {a} -> a -> List a -> List a
368testdata/Prelude.lc 65:13-65:20 m_ -> List h_ -> List i_ -> List j_ 368testdata/Prelude.lc 65:13-65:20 m_ -> List g_ -> List g_ -> List g_
369testdata/Prelude.lc 65:13-65:22 List g_ -> List h_ -> List i_ 369testdata/Prelude.lc 65:13-65:22 List g_ -> List g_ -> List g_
370testdata/Prelude.lc 65:13-65:29 List g_ -> List h_ 370testdata/Prelude.lc 65:13-65:29 List g_ -> List g_
371testdata/Prelude.lc 65:13-65:32 List g_ 371testdata/Prelude.lc 65:13-65:32 List g_
372testdata/Prelude.lc 65:21-65:22 m_ 372testdata/Prelude.lc 65:21-65:22 m_
373testdata/Prelude.lc 65:24-65:25 h_ 373testdata/Prelude.lc 65:24-65:25 h_
374testdata/Prelude.lc 65:24-65:26 List g_ -> List h_ 374testdata/Prelude.lc 65:24-65:26 List g_ -> List g_
375testdata/Prelude.lc 65:24-65:28 List g_ 375testdata/Prelude.lc 65:24-65:28 List g_
376testdata/Prelude.lc 65:25-65:26 {a} -> a -> List a -> List a 376testdata/Prelude.lc 65:25-65:26 {a} -> a -> List a -> List a
377testdata/Prelude.lc 65:26-65:28 List g_ 377testdata/Prelude.lc 65:26-65:28 List g_
@@ -380,30 +380,30 @@ testdata/Prelude.lc 66:19-66:21 d_
380testdata/Prelude.lc 67:19-67:21 i_ 380testdata/Prelude.lc 67:19-67:21 i_
381testdata/Prelude.lc 69:1-69:7 {a} -> (a -> a->Ordering) -> List a -> List a 381testdata/Prelude.lc 69:1-69:7 {a} -> (a -> a->Ordering) -> List a -> List a
382testdata/Prelude.lc 69:15-69:17 {a} -> List a 382testdata/Prelude.lc 69:15-69:17 {a} -> List a
383testdata/Prelude.lc 69:15-71:71 List b_ -> List c_ | a_->b_ 383testdata/Prelude.lc 69:15-71:71 List b_ -> List b_ | a_->a_
384testdata/Prelude.lc 70:16-70:19 List e_ 384testdata/Prelude.lc 70:16-70:19 List e_
385testdata/Prelude.lc 70:16-71:71 List b_ -> List g_ | List c_ -> List c_ | List d_ | b_ -> List c_ -> List c_ 385testdata/Prelude.lc 70:16-71:71 List b_ -> List f_ | List c_ -> List b_ | List d_ | b_ -> List b_ -> List a_
386testdata/Prelude.lc 70:17-70:18 g_ 386testdata/Prelude.lc 70:17-70:18 g_
387testdata/Prelude.lc 71:15-71:22 {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b 387testdata/Prelude.lc 71:15-71:22 {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b
388testdata/Prelude.lc 71:15-71:34 (List a_, List a_) -> List b_ 388testdata/Prelude.lc 71:15-71:34 (List a_, List a_) -> List a_
389testdata/Prelude.lc 71:15-71:71 List b_ -> List g_ | List h_ | a_ -> List b_ -> List g_ 389testdata/Prelude.lc 71:15-71:71 List b_ -> List f_ | List h_ | a_ -> List a_ -> List e_
390testdata/Prelude.lc 71:24-71:31 {a} -> (a -> a->Ordering) -> List a -> List a -> List a 390testdata/Prelude.lc 71:24-71:31 {a} -> (a -> a->Ordering) -> List a -> List a -> List a
391testdata/Prelude.lc 71:24-71:33 List a_ -> List b_ -> List c_ 391testdata/Prelude.lc 71:24-71:33 List a_ -> List a_ -> List a_
392testdata/Prelude.lc 71:32-71:33 o_ 392testdata/Prelude.lc 71:32-71:33 o_
393testdata/Prelude.lc 71:36-71:70 (List h_, List h_) 393testdata/Prelude.lc 71:36-71:70 (List h_, List h_)
394testdata/Prelude.lc 71:37-71:43 p_ 394testdata/Prelude.lc 71:37-71:43 p_
395testdata/Prelude.lc 71:37-71:49 (c_->b_) -> (e_, d_)->(d_, c_) 395testdata/Prelude.lc 71:37-71:49 (c_->a_) -> (d_, c_)->(b_, a_)
396testdata/Prelude.lc 71:37-71:58 (b_, b_)->(b_, b_) 396testdata/Prelude.lc 71:37-71:58 (b_, b_)->(a_, a_)
397testdata/Prelude.lc 71:44-71:45 n_ -> o_->Ordering 397testdata/Prelude.lc 71:44-71:45 n_ -> n_->Ordering
398testdata/Prelude.lc 71:46-71:49 {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d) 398testdata/Prelude.lc 71:46-71:49 {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d)
399testdata/Prelude.lc 71:50-71:56 (k_ -> l_->Ordering) -> e_->d_ 399testdata/Prelude.lc 71:50-71:56 (k_ -> k_->Ordering) -> d_->b_
400testdata/Prelude.lc 71:50-71:58 b_->b_ 400testdata/Prelude.lc 71:50-71:58 b_->a_
401testdata/Prelude.lc 71:57-71:58 i_ -> j_->Ordering 401testdata/Prelude.lc 71:57-71:58 i_ -> i_->Ordering
402testdata/Prelude.lc 71:61-71:66 {a} -> List a -> (List a, List a) 402testdata/Prelude.lc 71:61-71:66 {a} -> List a -> (List a, List a)
403testdata/Prelude.lc 71:61-71:69 (List a_, List a_) 403testdata/Prelude.lc 71:61-71:69 (List a_, List a_)
404testdata/Prelude.lc 71:67-71:69 k_ 404testdata/Prelude.lc 71:67-71:69 k_
405testdata/Prelude.lc 73:12-73:32 Type 405testdata/Prelude.lc 73:12-73:32 Type
406testdata/Prelude.lc 73:12-74:35 a_->b_ | {a} -> (a->a) -> a -> List a 406testdata/Prelude.lc 73:12-74:35 a_->a_ | {a} -> (a->a) -> a -> List a
407testdata/Prelude.lc 73:13-73:14 b_ 407testdata/Prelude.lc 73:13-73:14 b_
408testdata/Prelude.lc 73:18-73:19 Type 408testdata/Prelude.lc 73:18-73:19 Type
409testdata/Prelude.lc 73:24-73:25 Type 409testdata/Prelude.lc 73:24-73:25 Type
@@ -412,20 +412,20 @@ testdata/Prelude.lc 73:29-73:32 Type
412testdata/Prelude.lc 73:30-73:31 Type 412testdata/Prelude.lc 73:30-73:31 Type
413testdata/Prelude.lc 74:1-74:8 {a} -> (a->a) -> a -> List a 413testdata/Prelude.lc 74:1-74:8 {a} -> (a->a) -> a -> List a
414testdata/Prelude.lc 74:16-74:17 d_ 414testdata/Prelude.lc 74:16-74:17 d_
415testdata/Prelude.lc 74:16-74:19 List c_ -> List d_ 415testdata/Prelude.lc 74:16-74:19 List c_ -> List c_
416testdata/Prelude.lc 74:16-74:35 (a_->b_) -> b_ -> List c_ | List c_ | b_ -> List c_ 416testdata/Prelude.lc 74:16-74:35 (a_->a_) -> a_ -> List a_ | List c_ | b_ -> List b_
417testdata/Prelude.lc 74:18-74:19 {a} -> a -> List a -> List a 417testdata/Prelude.lc 74:18-74:19 {a} -> a -> List a -> List a
418testdata/Prelude.lc 74:20-74:27 {a} -> (a->a) -> a -> List a 418testdata/Prelude.lc 74:20-74:27 {a} -> (a->a) -> a -> List a
419testdata/Prelude.lc 74:20-74:29 c_ -> List d_ 419testdata/Prelude.lc 74:20-74:29 c_ -> List c_
420testdata/Prelude.lc 74:20-74:35 List c_ 420testdata/Prelude.lc 74:20-74:35 List c_
421testdata/Prelude.lc 74:28-74:29 d_->e_ 421testdata/Prelude.lc 74:28-74:29 d_->d_
422testdata/Prelude.lc 74:31-74:32 c_->d_ 422testdata/Prelude.lc 74:31-74:32 c_->c_
423testdata/Prelude.lc 74:31-74:34 c_ 423testdata/Prelude.lc 74:31-74:34 c_
424testdata/Prelude.lc 74:33-74:34 c_ 424testdata/Prelude.lc 74:33-74:34 c_
425testdata/Prelude.lc 76:1-76:4 {a} -> {b} -> (a, b)->a 425testdata/Prelude.lc 76:1-76:4 {a} -> {b} -> (a, b)->a
426testdata/Prelude.lc 76:14-76:15 HList c_ -> c_ | c_ -> HList c_ -> c_ | d_ | h_ | k_ 426testdata/Prelude.lc 76:14-76:15 HList c_ -> b_ | c_ -> HList b_ -> a_ | d_ | h_ | k_
427testdata/Prelude.lc 77:1-77:4 {a} -> {b} -> (a, b)->b 427testdata/Prelude.lc 77:1-77:4 {a} -> {b} -> (a, b)->b
428testdata/Prelude.lc 77:14-77:15 HList c_ -> c_ | c_ | c_ -> HList c_ -> c_ | f_ 428testdata/Prelude.lc 77:14-77:15 HList c_ -> b_ | c_ | c_ -> HList b_ -> a_ | f_
429testdata/Prelude.lc 79:7-79:10 Bool -> Bool->Bool 429testdata/Prelude.lc 79:7-79:10 Bool -> Bool->Bool
430testdata/Prelude.lc 79:15-79:16 c_ 430testdata/Prelude.lc 79:15-79:16 c_
431testdata/Prelude.lc 79:15-80:18 Bool->Bool 431testdata/Prelude.lc 79:15-80:18 Bool->Bool
@@ -441,7 +441,7 @@ testdata/Prelude.lc 122:16-122:23 RecItem | String -> Type->RecItem | Type
441testdata/Prelude.lc 122:24-122:30 Type 441testdata/Prelude.lc 122:24-122:30 Type
442testdata/Prelude.lc 122:31-122:35 Type 442testdata/Prelude.lc 122:31-122:35 Type
443testdata/Prelude.lc 124:1-124:12 RecItem->Type 443testdata/Prelude.lc 124:1-124:12 RecItem->Type
444testdata/Prelude.lc 124:29-124:30 String -> Type->c_ | Type | Type->c_ 444testdata/Prelude.lc 124:29-124:30 String -> Type->a_ | Type | Type->b_
445testdata/Prelude.lc 126:6-126:13 List RecItem -> Type | Type 445testdata/Prelude.lc 126:6-126:13 List RecItem -> Type | Type
446testdata/Prelude.lc 126:6-126:17 Type 446testdata/Prelude.lc 126:6-126:17 Type
447testdata/Prelude.lc 126:6-127:17 Type 447testdata/Prelude.lc 126:6-127:17 Type
@@ -460,9 +460,9 @@ testdata/Prelude.lc 127:42-127:44 List RecItem
460testdata/Prelude.lc 129:1-129:7 String -> Type -> List RecItem -> Type 460testdata/Prelude.lc 129:1-129:7 String -> Type -> List RecItem -> Type
461testdata/Prelude.lc 129:17-129:23 String->Type 461testdata/Prelude.lc 129:17-129:23 String->Type
462testdata/Prelude.lc 129:17-129:26 Type 462testdata/Prelude.lc 129:17-129:26 Type
463testdata/Prelude.lc 129:17-130:75 List RecItem -> Type | a_->b_ 463testdata/Prelude.lc 129:17-130:75 List RecItem -> Type | a_->a_
464testdata/Prelude.lc 129:24-129:26 String 464testdata/Prelude.lc 129:24-129:26 String
465testdata/Prelude.lc 130:34-130:75 List b_ -> Type | String -> Type->c_ | Type | Type->c_ | a_ -> List b_ -> Type 465testdata/Prelude.lc 130:34-130:75 List b_ -> Type | String -> Type->a_ | Type | Type->b_ | a_ -> List a_ -> Type
466testdata/Prelude.lc 130:37-130:38 o_ 466testdata/Prelude.lc 130:37-130:38 o_
467testdata/Prelude.lc 130:37-130:41 n_->Bool 467testdata/Prelude.lc 130:37-130:41 n_->Bool
468testdata/Prelude.lc 130:37-130:44 Bool 468testdata/Prelude.lc 130:37-130:44 Bool
@@ -480,17 +480,17 @@ testdata/Prelude.lc 130:71-130:72 Type
480testdata/Prelude.lc 130:73-130:75 List i_ 480testdata/Prelude.lc 130:73-130:75 List i_
481testdata/Prelude.lc 132:1-132:7 {a} -> {b : List Type} -> HList ('Cons a b) -> a 481testdata/Prelude.lc 132:1-132:7 {a} -> {b : List Type} -> HList ('Cons a b) -> a
482testdata/Prelude.lc 132:10-132:23 {a} -> {b : List Type} -> (c:Type) -> (a -> HList b -> c) -> HList ('Cons a b) -> c 482testdata/Prelude.lc 132:10-132:23 {a} -> {b : List Type} -> (c:Type) -> (a -> HList b -> c) -> HList ('Cons a b) -> c
483testdata/Prelude.lc 132:10-132:25 (c_ -> HList c_ -> c_) -> HList ('Cons d_ c_) -> c_ 483testdata/Prelude.lc 132:10-132:25 (c_ -> HList b_ -> a_) -> HList ('Cons c_ b_) -> a_
484testdata/Prelude.lc 132:10-132:37 HList ('Cons b_ a_) -> c_ 484testdata/Prelude.lc 132:10-132:37 HList ('Cons b_ a_) -> b_
485testdata/Prelude.lc 132:27-132:36 c_ -> HList c_ -> c_ 485testdata/Prelude.lc 132:27-132:36 c_ -> HList b_ -> a_
486testdata/Prelude.lc 132:35-132:36 HList c_ -> c_ | e_ 486testdata/Prelude.lc 132:35-132:36 HList c_ -> b_ | e_
487testdata/Prelude.lc 133:1-133:7 {a} -> {b : List Type} -> HList ('Cons a b) -> HList b 487testdata/Prelude.lc 133:1-133:7 {a} -> {b : List Type} -> HList ('Cons a b) -> HList b
488testdata/Prelude.lc 133:10-133:23 {a} -> {b : List Type} -> (c:Type) -> (a -> HList b -> c) -> HList ('Cons a b) -> c 488testdata/Prelude.lc 133:10-133:23 {a} -> {b : List Type} -> (c:Type) -> (a -> HList b -> c) -> HList ('Cons a b) -> c
489testdata/Prelude.lc 133:10-133:25 (c_ -> HList c_ -> c_) -> HList ('Cons d_ c_) -> c_ 489testdata/Prelude.lc 133:10-133:25 (c_ -> HList b_ -> a_) -> HList ('Cons c_ b_) -> a_
490testdata/Prelude.lc 133:10-133:37 HList ('Cons b_ a_) -> HList b_ 490testdata/Prelude.lc 133:10-133:37 HList ('Cons b_ a_) -> HList a_
491testdata/Prelude.lc 133:27-133:36 c_ -> HList c_ -> c_ 491testdata/Prelude.lc 133:27-133:36 c_ -> HList b_ -> a_
492testdata/Prelude.lc 133:35-133:36 HList c_ -> c_ | HList d_ 492testdata/Prelude.lc 133:35-133:36 HList c_ -> b_ | HList d_
493testdata/Prelude.lc 136:12-138:181 a_->b_ | {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a 493testdata/Prelude.lc 136:12-138:181 a_->a_ | {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a
494testdata/Prelude.lc 136:28-136:37 Type 494testdata/Prelude.lc 136:28-136:37 Type
495testdata/Prelude.lc 136:28-136:97 Type 495testdata/Prelude.lc 136:28-136:97 Type
496testdata/Prelude.lc 136:29-136:36 Type 496testdata/Prelude.lc 136:29-136:36 Type
@@ -513,15 +513,15 @@ testdata/Prelude.lc 137:1-137:8 {a} -> {b : List RecItem} -> (c:String) -> {_ :
513testdata/Prelude.lc 137:57-137:58 String 513testdata/Prelude.lc 137:57-137:58 String
514testdata/Prelude.lc 137:57-137:61 String->Bool 514testdata/Prelude.lc 137:57-137:61 String->Bool
515testdata/Prelude.lc 137:57-137:64 Bool 515testdata/Prelude.lc 137:57-137:64 Bool
516testdata/Prelude.lc 137:57-138:181 (a:String) -> {_ : 'isKeyC a c_ b_} -> RecordC c_ -> e_ | HList ('map RecItem Type 'recItemType b_) -> b_ | List c_ -> c_ | RecordC c_ -> e_ | String -> Type->c_ | Type->c_ | b_ -> List c_ -> c_ | e_ | g_ | j_ | m_ | {_ : 'isKeyC a_ c_ b_} -> RecordC c_ -> e_ | {a : List RecItem} -> (b:String) -> {_ : 'isKeyC b c_ a} -> RecordC a -> e_ | {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a 516testdata/Prelude.lc 137:57-138:181 (a:String) -> {_ : 'isKeyC a b_ a_} -> RecordC a_ -> b_ | HList ('map RecItem Type 'recItemType b_) -> a_ | List c_ -> b_ | RecordC c_ -> d_ | String -> Type->a_ | Type->b_ | b_ -> List b_ -> a_ | e_ | g_ | j_ | m_ | {_ : 'isKeyC a_ c_ b_} -> RecordC b_ -> c_ | {a : List RecItem} -> (b:String) -> {_ : 'isKeyC b a_ a} -> RecordC a -> a_ | {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a
517testdata/Prelude.lc 137:59-137:61 {a} -> {_ : Eq a} -> a -> a->Bool 517testdata/Prelude.lc 137:59-137:61 {a} -> {_ : Eq a} -> a -> a->Bool
518testdata/Prelude.lc 137:62-137:64 String 518testdata/Prelude.lc 137:62-137:64 String
519testdata/Prelude.lc 137:67-137:73 {a} -> {b : List Type} -> HList ('Cons a b) -> a 519testdata/Prelude.lc 137:67-137:73 {a} -> {b : List Type} -> HList ('Cons a b) -> a
520testdata/Prelude.lc 137:67-137:129 n_ 520testdata/Prelude.lc 137:67-137:129 n_
521testdata/Prelude.lc 137:67-138:181 Bool->o_ 521testdata/Prelude.lc 137:67-138:181 Bool->n_
522testdata/Prelude.lc 137:75-137:87 {a} -> {b} -> a->b 522testdata/Prelude.lc 137:75-137:87 {a} -> {b} -> a->b
523testdata/Prelude.lc 137:75-137:90 {a} -> b_->a 523testdata/Prelude.lc 137:75-137:90 {a} -> a_->a
524testdata/Prelude.lc 137:75-137:125 a_ -> HList ('Cons r_ ('map RecItem Type 'recItemType k_)) 524testdata/Prelude.lc 137:75-137:125 a_ -> HList ('Cons q_ ('map RecItem Type 'recItemType j_))
525testdata/Prelude.lc 137:75-137:128 HList ('Cons n_ ('map RecItem Type 'recItemType g_)) 525testdata/Prelude.lc 137:75-137:128 HList ('Cons n_ ('map RecItem Type 'recItemType g_))
526testdata/Prelude.lc 137:93-137:98 List Type -> Type 526testdata/Prelude.lc 137:93-137:98 List Type -> Type
527testdata/Prelude.lc 137:93-137:124 Type 527testdata/Prelude.lc 137:93-137:124 Type
@@ -536,10 +536,10 @@ testdata/Prelude.lc 137:109-137:120 RecItem->Type
536testdata/Prelude.lc 137:121-137:123 List RecItem 536testdata/Prelude.lc 137:121-137:123 List RecItem
537testdata/Prelude.lc 137:126-137:128 HList ('map RecItem Type 'recItemType d_) 537testdata/Prelude.lc 137:126-137:128 HList ('map RecItem Type 'recItemType d_)
538testdata/Prelude.lc 138:57-138:64 {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a 538testdata/Prelude.lc 138:57-138:64 {a} -> {b : List RecItem} -> (c:String) -> {_ : 'isKeyC c a b} -> RecordC b -> a
539testdata/Prelude.lc 138:57-138:67 {a : List RecItem} -> (b:String) -> {_ : 'isKeyC b r_ a} -> RecordC a -> t_ 539testdata/Prelude.lc 138:57-138:67 {a : List RecItem} -> (b:String) -> {_ : 'isKeyC b p_ a} -> RecordC a -> p_
540testdata/Prelude.lc 138:57-138:71 (a:String) -> {_ : 'isKeyC a p_ i_} -> RecordC j_ -> r_ 540testdata/Prelude.lc 138:57-138:71 (a:String) -> {_ : 'isKeyC a o_ h_} -> RecordC h_ -> o_
541testdata/Prelude.lc 138:57-138:73 {_ : 'isKeyC m_ o_ h_} -> RecordC i_ -> q_ 541testdata/Prelude.lc 138:57-138:73 {_ : 'isKeyC m_ o_ h_} -> RecordC h_ -> o_
542testdata/Prelude.lc 138:57-138:103 RecordC h_ -> p_ 542testdata/Prelude.lc 138:57-138:103 RecordC h_ -> o_
543testdata/Prelude.lc 138:57-138:181 n_ 543testdata/Prelude.lc 138:57-138:181 n_
544testdata/Prelude.lc 138:66-138:67 Type 544testdata/Prelude.lc 138:66-138:67 Type
545testdata/Prelude.lc 138:69-138:71 List k_ 545testdata/Prelude.lc 138:69-138:71 List k_
@@ -558,8 +558,8 @@ testdata/Prelude.lc 138:105-138:180 RecordC b_
558testdata/Prelude.lc 138:117-138:123 {a} -> {b : List Type} -> HList ('Cons a b) -> HList b 558testdata/Prelude.lc 138:117-138:123 {a} -> {b : List Type} -> HList ('Cons a b) -> HList b
559testdata/Prelude.lc 138:117-138:179 HList ('map RecItem Type 'recItemType h_) 559testdata/Prelude.lc 138:117-138:179 HList ('map RecItem Type 'recItemType h_)
560testdata/Prelude.lc 138:125-138:137 {a} -> {b} -> a->b 560testdata/Prelude.lc 138:125-138:137 {a} -> {b} -> a->b
561testdata/Prelude.lc 138:125-138:140 {a} -> b_->a 561testdata/Prelude.lc 138:125-138:140 {a} -> a_->a
562testdata/Prelude.lc 138:125-138:175 a_ -> HList ('Cons s_ ('map RecItem Type 'recItemType l_)) 562testdata/Prelude.lc 138:125-138:175 a_ -> HList ('Cons r_ ('map RecItem Type 'recItemType k_))
563testdata/Prelude.lc 138:125-138:178 HList ('Cons o_ ('map RecItem Type 'recItemType h_)) 563testdata/Prelude.lc 138:125-138:178 HList ('Cons o_ ('map RecItem Type 'recItemType h_))
564testdata/Prelude.lc 138:143-138:148 List Type -> Type 564testdata/Prelude.lc 138:143-138:148 List Type -> Type
565testdata/Prelude.lc 138:143-138:174 Type 565testdata/Prelude.lc 138:143-138:174 Type
@@ -575,9 +575,9 @@ testdata/Prelude.lc 138:171-138:173 List RecItem
575testdata/Prelude.lc 138:176-138:178 HList ('map RecItem Type 'recItemType e_) 575testdata/Prelude.lc 138:176-138:178 HList ('map RecItem Type 'recItemType e_)
576testdata/Prelude.lc 142:1-142:4 Float -> Float -> Float -> VecS Float 4 576testdata/Prelude.lc 142:1-142:4 Float -> Float -> Float -> VecS Float 4
577testdata/Prelude.lc 142:13-142:15 {a} -> a -> a -> a -> a -> VecS a 4 577testdata/Prelude.lc 142:13-142:15 {a} -> a -> a -> a -> a -> VecS a 4
578testdata/Prelude.lc 142:13-142:17 f_ -> g_ -> h_ -> VecS i_ 4 578testdata/Prelude.lc 142:13-142:17 f_ -> f_ -> f_ -> VecS f_ 4
579testdata/Prelude.lc 142:13-142:19 e_ -> f_ -> VecS g_ 4 579testdata/Prelude.lc 142:13-142:19 e_ -> e_ -> VecS e_ 4
580testdata/Prelude.lc 142:13-142:21 d_ -> VecS e_ 4 580testdata/Prelude.lc 142:13-142:21 d_ -> VecS d_ 4
581testdata/Prelude.lc 142:13-142:25 VecS Float 4 581testdata/Prelude.lc 142:13-142:25 VecS Float 4
582testdata/Prelude.lc 142:16-142:17 g_ 582testdata/Prelude.lc 142:16-142:17 g_
583testdata/Prelude.lc 142:18-142:19 d_ 583testdata/Prelude.lc 142:18-142:19 d_
@@ -906,31 +906,31 @@ testdata/Prelude.lc 263:1-263:16 {a:Nat} -> VecScalar a Word -> VecScalar a Flo
906testdata/Prelude.lc 263:19-263:38 {a:Nat} -> VecScalar a Word -> VecScalar a Float 906testdata/Prelude.lc 263:19-263:38 {a:Nat} -> VecScalar a Word -> VecScalar a Float
907testdata/Prelude.lc 281:3-281:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 907testdata/Prelude.lc 281:3-281:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
908testdata/Prelude.lc 281:9-281:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 908testdata/Prelude.lc 281:9-281:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
909testdata/Prelude.lc 281:9-281:18 e_->f_ 909testdata/Prelude.lc 281:9-281:18 e_->e_
910testdata/Prelude.lc 281:9-281:20 d_ 910testdata/Prelude.lc 281:9-281:20 d_
911testdata/Prelude.lc 281:17-281:18 f_ 911testdata/Prelude.lc 281:17-281:18 f_
912testdata/Prelude.lc 281:19-281:20 c_ 912testdata/Prelude.lc 281:19-281:20 c_
913testdata/Prelude.lc 282:3-282:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 913testdata/Prelude.lc 282:3-282:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
914testdata/Prelude.lc 282:9-282:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 914testdata/Prelude.lc 282:9-282:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
915testdata/Prelude.lc 282:9-282:18 e_->f_ 915testdata/Prelude.lc 282:9-282:18 e_->e_
916testdata/Prelude.lc 282:9-282:20 d_ 916testdata/Prelude.lc 282:9-282:20 d_
917testdata/Prelude.lc 282:17-282:18 f_ 917testdata/Prelude.lc 282:17-282:18 f_
918testdata/Prelude.lc 282:19-282:20 c_ 918testdata/Prelude.lc 282:19-282:20 c_
919testdata/Prelude.lc 283:3-283:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 919testdata/Prelude.lc 283:3-283:4 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
920testdata/Prelude.lc 283:9-283:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 920testdata/Prelude.lc 283:9-283:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
921testdata/Prelude.lc 283:9-283:18 e_->f_ 921testdata/Prelude.lc 283:9-283:18 e_->e_
922testdata/Prelude.lc 283:9-283:20 d_ 922testdata/Prelude.lc 283:9-283:20 d_
923testdata/Prelude.lc 283:17-283:18 f_ 923testdata/Prelude.lc 283:17-283:18 f_
924testdata/Prelude.lc 283:19-283:20 c_ 924testdata/Prelude.lc 283:19-283:20 c_
925testdata/Prelude.lc 284:3-284:4 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a 925testdata/Prelude.lc 284:3-284:4 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a
926testdata/Prelude.lc 284:9-284:16 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> b->b 926testdata/Prelude.lc 284:9-284:16 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> b->b
927testdata/Prelude.lc 284:9-284:18 VecScalar b_ c_ -> VecScalar c_ d_ 927testdata/Prelude.lc 284:9-284:18 VecScalar b_ c_ -> VecScalar b_ c_
928testdata/Prelude.lc 284:9-284:20 VecScalar b_ c_ 928testdata/Prelude.lc 284:9-284:20 VecScalar b_ c_
929testdata/Prelude.lc 284:17-284:18 g_ 929testdata/Prelude.lc 284:17-284:18 g_
930testdata/Prelude.lc 284:19-284:20 e_ 930testdata/Prelude.lc 284:19-284:20 e_
931testdata/Prelude.lc 285:3-285:4 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a 931testdata/Prelude.lc 285:3-285:4 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a
932testdata/Prelude.lc 285:9-285:16 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> b->b 932testdata/Prelude.lc 285:9-285:16 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> b->b
933testdata/Prelude.lc 285:9-285:18 VecScalar b_ c_ -> VecScalar c_ d_ 933testdata/Prelude.lc 285:9-285:18 VecScalar b_ c_ -> VecScalar b_ c_
934testdata/Prelude.lc 285:9-285:20 VecScalar b_ c_ 934testdata/Prelude.lc 285:9-285:20 VecScalar b_ c_
935testdata/Prelude.lc 285:17-285:18 g_ 935testdata/Prelude.lc 285:17-285:18 g_
936testdata/Prelude.lc 285:19-285:20 e_ 936testdata/Prelude.lc 285:19-285:20 e_
@@ -946,25 +946,25 @@ testdata/Prelude.lc 291:23-291:24 e_
946testdata/Prelude.lc 291:25-291:26 b_ 946testdata/Prelude.lc 291:25-291:26 b_
947testdata/Prelude.lc 292:3-292:4 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool 947testdata/Prelude.lc 292:3-292:4 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool
948testdata/Prelude.lc 292:9-292:21 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d 948testdata/Prelude.lc 292:9-292:21 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d
949testdata/Prelude.lc 292:9-292:23 VecScalar c_ b_ -> VecScalar d_ Bool 949testdata/Prelude.lc 292:9-292:23 VecScalar c_ b_ -> VecScalar c_ Bool
950testdata/Prelude.lc 292:9-292:25 VecScalar c_ Bool 950testdata/Prelude.lc 292:9-292:25 VecScalar c_ Bool
951testdata/Prelude.lc 292:22-292:23 g_ 951testdata/Prelude.lc 292:22-292:23 g_
952testdata/Prelude.lc 292:24-292:25 e_ 952testdata/Prelude.lc 292:24-292:25 e_
953testdata/Prelude.lc 293:3-293:5 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool 953testdata/Prelude.lc 293:3-293:5 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool
954testdata/Prelude.lc 293:10-293:27 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d 954testdata/Prelude.lc 293:10-293:27 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d
955testdata/Prelude.lc 293:10-293:29 VecScalar c_ b_ -> VecScalar d_ Bool 955testdata/Prelude.lc 293:10-293:29 VecScalar c_ b_ -> VecScalar c_ Bool
956testdata/Prelude.lc 293:10-293:31 VecScalar c_ Bool 956testdata/Prelude.lc 293:10-293:31 VecScalar c_ Bool
957testdata/Prelude.lc 293:28-293:29 g_ 957testdata/Prelude.lc 293:28-293:29 g_
958testdata/Prelude.lc 293:30-293:31 e_ 958testdata/Prelude.lc 293:30-293:31 e_
959testdata/Prelude.lc 294:3-294:5 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool 959testdata/Prelude.lc 294:3-294:5 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool
960testdata/Prelude.lc 294:10-294:30 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d 960testdata/Prelude.lc 294:10-294:30 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d
961testdata/Prelude.lc 294:10-294:32 VecScalar c_ b_ -> VecScalar d_ Bool 961testdata/Prelude.lc 294:10-294:32 VecScalar c_ b_ -> VecScalar c_ Bool
962testdata/Prelude.lc 294:10-294:34 VecScalar c_ Bool 962testdata/Prelude.lc 294:10-294:34 VecScalar c_ Bool
963testdata/Prelude.lc 294:31-294:32 g_ 963testdata/Prelude.lc 294:31-294:32 g_
964testdata/Prelude.lc 294:33-294:34 e_ 964testdata/Prelude.lc 294:33-294:34 e_
965testdata/Prelude.lc 295:3-295:4 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool 965testdata/Prelude.lc 295:3-295:4 {a:Nat} -> {b} -> {_ : Num b} -> VecScalar a b -> VecScalar a b -> VecScalar a Bool
966testdata/Prelude.lc 295:9-295:24 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d 966testdata/Prelude.lc 295:9-295:24 {a} -> {b:Nat} -> {c} -> {d} -> {_ : Num c} -> {_ : a ~ VecScalar b c} -> {_ : d ~ VecScalar b Bool} -> a -> a->d
967testdata/Prelude.lc 295:9-295:26 VecScalar c_ b_ -> VecScalar d_ Bool 967testdata/Prelude.lc 295:9-295:26 VecScalar c_ b_ -> VecScalar c_ Bool
968testdata/Prelude.lc 295:9-295:28 VecScalar c_ Bool 968testdata/Prelude.lc 295:9-295:28 VecScalar c_ Bool
969testdata/Prelude.lc 295:25-295:26 g_ 969testdata/Prelude.lc 295:25-295:26 g_
970testdata/Prelude.lc 295:27-295:28 e_ 970testdata/Prelude.lc 295:27-295:28 e_
@@ -996,49 +996,49 @@ testdata/Prelude.lc 303:9-303:18 Bool
996testdata/Prelude.lc 303:17-303:18 c_ 996testdata/Prelude.lc 303:17-303:18 c_
997testdata/Prelude.lc 306:3-306:6 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 997testdata/Prelude.lc 306:3-306:6 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
998testdata/Prelude.lc 306:11-306:24 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 998testdata/Prelude.lc 306:11-306:24 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
999testdata/Prelude.lc 306:11-306:26 Mat c_ a_ b_ -> Mat e_ b_ c_ 999testdata/Prelude.lc 306:11-306:26 Mat c_ a_ b_ -> Mat d_ a_ b_
1000testdata/Prelude.lc 306:11-306:28 Mat d_ a_ b_ 1000testdata/Prelude.lc 306:11-306:28 Mat d_ a_ b_
1001testdata/Prelude.lc 306:25-306:26 h_ 1001testdata/Prelude.lc 306:25-306:26 h_
1002testdata/Prelude.lc 306:27-306:28 f_ 1002testdata/Prelude.lc 306:27-306:28 f_
1003testdata/Prelude.lc 307:3-307:5 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> Vec a c 1003testdata/Prelude.lc 307:3-307:5 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> Vec a c
1004testdata/Prelude.lc 307:10-307:23 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Vec b c -> Vec a c 1004testdata/Prelude.lc 307:10-307:23 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Vec b c -> Vec a c
1005testdata/Prelude.lc 307:10-307:25 Vec b_ a_ -> Vec d_ b_ 1005testdata/Prelude.lc 307:10-307:25 Vec b_ a_ -> Vec c_ a_
1006testdata/Prelude.lc 307:10-307:27 Vec c_ a_ 1006testdata/Prelude.lc 307:10-307:27 Vec c_ a_
1007testdata/Prelude.lc 307:24-307:25 g_ 1007testdata/Prelude.lc 307:24-307:25 g_
1008testdata/Prelude.lc 307:26-307:27 e_ 1008testdata/Prelude.lc 307:26-307:27 e_
1009testdata/Prelude.lc 308:3-308:5 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> Vec c b 1009testdata/Prelude.lc 308:3-308:5 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> Vec c b
1010testdata/Prelude.lc 308:10-308:23 {a:Nat} -> {b} -> {c:Nat} -> Vec a b -> Mat a c b -> Vec c b 1010testdata/Prelude.lc 308:10-308:23 {a:Nat} -> {b} -> {c:Nat} -> Vec a b -> Mat a c b -> Vec c b
1011testdata/Prelude.lc 308:10-308:25 Mat c_ a_ b_ -> Vec b_ c_ 1011testdata/Prelude.lc 308:10-308:25 Mat c_ a_ b_ -> Vec a_ b_
1012testdata/Prelude.lc 308:10-308:27 Vec a_ b_ 1012testdata/Prelude.lc 308:10-308:27 Vec a_ b_
1013testdata/Prelude.lc 308:24-308:25 g_ 1013testdata/Prelude.lc 308:24-308:25 g_
1014testdata/Prelude.lc 308:26-308:27 e_ 1014testdata/Prelude.lc 308:26-308:27 e_
1015testdata/Prelude.lc 315:3-315:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 1015testdata/Prelude.lc 315:3-315:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
1016testdata/Prelude.lc 315:10-315:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b 1016testdata/Prelude.lc 315:10-315:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b
1017testdata/Prelude.lc 315:10-315:20 MatVecScalarElem e_ -> f_ 1017testdata/Prelude.lc 315:10-315:20 MatVecScalarElem e_ -> e_
1018testdata/Prelude.lc 315:10-315:22 d_ 1018testdata/Prelude.lc 315:10-315:22 d_
1019testdata/Prelude.lc 315:19-315:20 f_ 1019testdata/Prelude.lc 315:19-315:20 f_
1020testdata/Prelude.lc 315:21-315:22 c_ 1020testdata/Prelude.lc 315:21-315:22 c_
1021testdata/Prelude.lc 316:3-316:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 1021testdata/Prelude.lc 316:3-316:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
1022testdata/Prelude.lc 316:10-316:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b 1022testdata/Prelude.lc 316:10-316:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b
1023testdata/Prelude.lc 316:10-316:20 MatVecScalarElem e_ -> f_ 1023testdata/Prelude.lc 316:10-316:20 MatVecScalarElem e_ -> e_
1024testdata/Prelude.lc 316:10-316:22 d_ 1024testdata/Prelude.lc 316:10-316:22 d_
1025testdata/Prelude.lc 316:19-316:20 f_ 1025testdata/Prelude.lc 316:19-316:20 f_
1026testdata/Prelude.lc 316:21-316:22 c_ 1026testdata/Prelude.lc 316:21-316:22 c_
1027testdata/Prelude.lc 317:3-317:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 1027testdata/Prelude.lc 317:3-317:5 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
1028testdata/Prelude.lc 317:10-317:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b 1028testdata/Prelude.lc 317:10-317:18 {a} -> {b} -> {_ : a ~ MatVecScalarElem b} -> {_ : Num a} -> b -> a->b
1029testdata/Prelude.lc 317:10-317:20 MatVecScalarElem e_ -> f_ 1029testdata/Prelude.lc 317:10-317:20 MatVecScalarElem e_ -> e_
1030testdata/Prelude.lc 317:10-317:22 d_ 1030testdata/Prelude.lc 317:10-317:22 d_
1031testdata/Prelude.lc 317:19-317:20 f_ 1031testdata/Prelude.lc 317:19-317:20 f_
1032testdata/Prelude.lc 317:21-317:22 c_ 1032testdata/Prelude.lc 317:21-317:22 c_
1033testdata/Prelude.lc 318:3-318:5 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> a -> VecScalar b a 1033testdata/Prelude.lc 318:3-318:5 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> a -> VecScalar b a
1034testdata/Prelude.lc 318:10-318:18 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> a->b 1034testdata/Prelude.lc 318:10-318:18 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> a->b
1035testdata/Prelude.lc 318:10-318:20 c_ -> VecScalar c_ d_ 1035testdata/Prelude.lc 318:10-318:20 c_ -> VecScalar b_ c_
1036testdata/Prelude.lc 318:10-318:22 VecScalar b_ d_ 1036testdata/Prelude.lc 318:10-318:22 VecScalar b_ d_
1037testdata/Prelude.lc 318:19-318:20 g_ 1037testdata/Prelude.lc 318:19-318:20 g_
1038testdata/Prelude.lc 318:21-318:22 e_ 1038testdata/Prelude.lc 318:21-318:22 e_
1039testdata/Prelude.lc 319:3-319:5 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> a -> VecScalar b a 1039testdata/Prelude.lc 319:3-319:5 {a} -> {b:Nat} -> {_ : Num a} -> VecScalar b a -> a -> VecScalar b a
1040testdata/Prelude.lc 319:10-319:18 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> a->b 1040testdata/Prelude.lc 319:10-319:18 {a} -> {b} -> {c:Nat} -> {_ : Num a} -> {_ : b ~ VecScalar c a} -> b -> a->b
1041testdata/Prelude.lc 319:10-319:20 c_ -> VecScalar c_ d_ 1041testdata/Prelude.lc 319:10-319:20 c_ -> VecScalar b_ c_
1042testdata/Prelude.lc 319:10-319:22 VecScalar b_ d_ 1042testdata/Prelude.lc 319:10-319:22 VecScalar b_ d_
1043testdata/Prelude.lc 319:19-319:20 g_ 1043testdata/Prelude.lc 319:19-319:20 g_
1044testdata/Prelude.lc 319:21-319:22 e_ 1044testdata/Prelude.lc 319:21-319:22 e_
@@ -1069,7 +1069,7 @@ testdata/Prelude.lc 332:11-332:29 Float -> Float -> VecS Float 4
1069testdata/Prelude.lc 332:11-332:43 Float -> VecS Float 4 1069testdata/Prelude.lc 332:11-332:43 Float -> VecS Float 4
1070testdata/Prelude.lc 332:11-332:58 VecS Float 4 1070testdata/Prelude.lc 332:11-332:58 VecS Float 4
1071testdata/Prelude.lc 332:15-332:16 b_ 1071testdata/Prelude.lc 332:15-332:16 b_
1072testdata/Prelude.lc 332:15-332:17 c_->d_ 1072testdata/Prelude.lc 332:15-332:17 c_->c_
1073testdata/Prelude.lc 332:15-332:18 VecScalar 1 Float 1073testdata/Prelude.lc 332:15-332:18 VecScalar 1 Float
1074testdata/Prelude.lc 332:15-332:19 VecScalar 1 Float -> VecScalar 1 Float 1074testdata/Prelude.lc 332:15-332:19 VecScalar 1 Float -> VecScalar 1 Float
1075testdata/Prelude.lc 332:15-332:24 VecScalar 1 Float 1075testdata/Prelude.lc 332:15-332:24 VecScalar 1 Float
@@ -1085,13 +1085,13 @@ testdata/Prelude.lc 332:28-332:29 b_
1085testdata/Prelude.lc 332:42-332:43 b_ 1085testdata/Prelude.lc 332:42-332:43 b_
1086testdata/Prelude.lc 332:57-332:58 b_ 1086testdata/Prelude.lc 332:57-332:58 b_
1087testdata/Prelude.lc 333:11-333:13 {a} -> a -> a -> a -> a -> VecS a 4 1087testdata/Prelude.lc 333:11-333:13 {a} -> a -> a -> a -> a -> VecS a 4
1088testdata/Prelude.lc 333:11-333:15 b_ -> c_ -> d_ -> VecS e_ 4 1088testdata/Prelude.lc 333:11-333:15 b_ -> b_ -> b_ -> VecS b_ 4
1089testdata/Prelude.lc 333:11-333:39 Float -> Float -> VecS Float 4 1089testdata/Prelude.lc 333:11-333:39 Float -> Float -> VecS Float 4
1090testdata/Prelude.lc 333:11-333:43 Float -> VecS Float 4 1090testdata/Prelude.lc 333:11-333:43 Float -> VecS Float 4
1091testdata/Prelude.lc 333:11-333:58 VecS Float 4 1091testdata/Prelude.lc 333:11-333:58 VecS Float 4
1092testdata/Prelude.lc 333:14-333:15 b_ 1092testdata/Prelude.lc 333:14-333:15 b_
1093testdata/Prelude.lc 333:29-333:30 b_ 1093testdata/Prelude.lc 333:29-333:30 b_
1094testdata/Prelude.lc 333:29-333:31 c_->d_ 1094testdata/Prelude.lc 333:29-333:31 c_->c_
1095testdata/Prelude.lc 333:29-333:32 VecScalar 1 Float 1095testdata/Prelude.lc 333:29-333:32 VecScalar 1 Float
1096testdata/Prelude.lc 333:29-333:33 VecScalar 1 Float -> VecScalar 1 Float 1096testdata/Prelude.lc 333:29-333:33 VecScalar 1 Float -> VecScalar 1 Float
1097testdata/Prelude.lc 333:29-333:38 VecScalar 1 Float 1097testdata/Prelude.lc 333:29-333:38 VecScalar 1 Float
@@ -1155,8 +1155,8 @@ testdata/Prelude.lc 334:58-334:59 {a} -> {_ : Num (MatVecScalarElem a)} -> a ->
1155testdata/Prelude.lc 334:58-334:60 Float 1155testdata/Prelude.lc 334:58-334:60 Float
1156testdata/Prelude.lc 334:59-334:60 b_ 1156testdata/Prelude.lc 334:59-334:60 b_
1157testdata/Prelude.lc 335:11-335:13 {a} -> a -> a -> a -> a -> VecS a 4 1157testdata/Prelude.lc 335:11-335:13 {a} -> a -> a -> a -> a -> VecS a 4
1158testdata/Prelude.lc 335:11-335:15 b_ -> c_ -> d_ -> VecS e_ 4 1158testdata/Prelude.lc 335:11-335:15 b_ -> b_ -> b_ -> VecS b_ 4
1159testdata/Prelude.lc 335:11-335:29 c_ -> d_ -> VecS e_ 4 1159testdata/Prelude.lc 335:11-335:29 c_ -> c_ -> VecS c_ 4
1160testdata/Prelude.lc 335:11-335:56 Float -> VecS Float 4 1160testdata/Prelude.lc 335:11-335:56 Float -> VecS Float 4
1161testdata/Prelude.lc 335:11-335:58 VecS Float 4 1161testdata/Prelude.lc 335:11-335:58 VecS Float 4
1162testdata/Prelude.lc 335:14-335:15 b_ 1162testdata/Prelude.lc 335:14-335:15 b_
@@ -1164,7 +1164,7 @@ testdata/Prelude.lc 335:28-335:29 b_
1164testdata/Prelude.lc 335:43-335:44 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 1164testdata/Prelude.lc 335:43-335:44 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
1165testdata/Prelude.lc 335:43-335:55 Float 1165testdata/Prelude.lc 335:43-335:55 Float
1166testdata/Prelude.lc 335:44-335:45 b_ 1166testdata/Prelude.lc 335:44-335:45 b_
1167testdata/Prelude.lc 335:44-335:46 c_->d_ 1167testdata/Prelude.lc 335:44-335:46 c_->c_
1168testdata/Prelude.lc 335:44-335:47 Float 1168testdata/Prelude.lc 335:44-335:47 Float
1169testdata/Prelude.lc 335:44-335:48 Float->Float 1169testdata/Prelude.lc 335:44-335:48 Float->Float
1170testdata/Prelude.lc 335:44-335:49 Float 1170testdata/Prelude.lc 335:44-335:49 Float
@@ -1210,9 +1210,9 @@ testdata/Prelude.lc 342:16-342:49 Vec 4 Float -> Vec 4 Float -> Mat 4 4 Float
1210testdata/Prelude.lc 342:16-342:62 Vec 4 Float -> Mat 4 4 Float 1210testdata/Prelude.lc 342:16-342:62 Vec 4 Float -> Mat 4 4 Float
1211testdata/Prelude.lc 342:16-342:75 Mat 4 4 Float 1211testdata/Prelude.lc 342:16-342:75 Mat 4 4 Float
1212testdata/Prelude.lc 342:22-342:24 {a} -> a -> a -> a -> a -> VecS a 4 1212testdata/Prelude.lc 342:22-342:24 {a} -> a -> a -> a -> a -> VecS a 4
1213testdata/Prelude.lc 342:22-342:26 VecScalar c_ Float -> VecScalar d_ Float -> VecScalar e_ Float -> VecS (VecScalar f_ Float) 4 1213testdata/Prelude.lc 342:22-342:26 VecScalar c_ Float -> VecScalar c_ Float -> VecScalar c_ Float -> VecS (VecScalar c_ Float) 4
1214testdata/Prelude.lc 342:22-342:28 VecScalar c_ Float -> VecScalar d_ Float -> VecS (VecScalar e_ Float) 4 1214testdata/Prelude.lc 342:22-342:28 VecScalar c_ Float -> VecScalar c_ Float -> VecS (VecScalar c_ Float) 4
1215testdata/Prelude.lc 342:22-342:30 VecScalar d_ Float -> VecS (VecScalar e_ Float) 4 1215testdata/Prelude.lc 342:22-342:30 VecScalar d_ Float -> VecS (VecScalar d_ Float) 4
1216testdata/Prelude.lc 342:22-342:32 VecS (VecScalar 1 Float) 4 1216testdata/Prelude.lc 342:22-342:32 VecS (VecScalar 1 Float) 4
1217testdata/Prelude.lc 342:25-342:26 VecScalar d_ Float 1217testdata/Prelude.lc 342:25-342:26 VecScalar d_ Float
1218testdata/Prelude.lc 342:27-342:28 VecScalar c_ Float 1218testdata/Prelude.lc 342:27-342:28 VecScalar c_ Float
@@ -1230,18 +1230,18 @@ testdata/Prelude.lc 342:43-342:44 VecScalar 1 Float
1230testdata/Prelude.lc 342:45-342:46 b_ 1230testdata/Prelude.lc 342:45-342:46 b_
1231testdata/Prelude.lc 342:47-342:48 b_ 1231testdata/Prelude.lc 342:47-342:48 b_
1232testdata/Prelude.lc 342:51-342:53 {a} -> a -> a -> a -> a -> VecS a 4 1232testdata/Prelude.lc 342:51-342:53 {a} -> a -> a -> a -> a -> VecS a 4
1233testdata/Prelude.lc 342:51-342:55 b_ -> c_ -> d_ -> VecS e_ 4 1233testdata/Prelude.lc 342:51-342:55 b_ -> b_ -> b_ -> VecS b_ 4
1234testdata/Prelude.lc 342:51-342:57 c_ -> d_ -> VecS e_ 4 1234testdata/Prelude.lc 342:51-342:57 c_ -> c_ -> VecS c_ 4
1235testdata/Prelude.lc 342:51-342:59 c_ -> VecS d_ 4 1235testdata/Prelude.lc 342:51-342:59 c_ -> VecS c_ 4
1236testdata/Prelude.lc 342:51-342:61 VecS Float 4 1236testdata/Prelude.lc 342:51-342:61 VecS Float 4
1237testdata/Prelude.lc 342:54-342:55 b_ 1237testdata/Prelude.lc 342:54-342:55 b_
1238testdata/Prelude.lc 342:56-342:57 b_ 1238testdata/Prelude.lc 342:56-342:57 b_
1239testdata/Prelude.lc 342:58-342:59 b_ 1239testdata/Prelude.lc 342:58-342:59 b_
1240testdata/Prelude.lc 342:60-342:61 b_ 1240testdata/Prelude.lc 342:60-342:61 b_
1241testdata/Prelude.lc 342:64-342:66 {a} -> a -> a -> a -> a -> VecS a 4 1241testdata/Prelude.lc 342:64-342:66 {a} -> a -> a -> a -> a -> VecS a 4
1242testdata/Prelude.lc 342:64-342:68 b_ -> c_ -> d_ -> VecS e_ 4 1242testdata/Prelude.lc 342:64-342:68 b_ -> b_ -> b_ -> VecS b_ 4
1243testdata/Prelude.lc 342:64-342:70 c_ -> d_ -> VecS e_ 4 1243testdata/Prelude.lc 342:64-342:70 c_ -> c_ -> VecS c_ 4
1244testdata/Prelude.lc 342:64-342:72 c_ -> VecS d_ 4 1244testdata/Prelude.lc 342:64-342:72 c_ -> VecS c_ 4
1245testdata/Prelude.lc 342:64-342:74 VecS Float 4 1245testdata/Prelude.lc 342:64-342:74 VecS Float 4
1246testdata/Prelude.lc 342:67-342:68 b_ 1246testdata/Prelude.lc 342:67-342:68 b_
1247testdata/Prelude.lc 342:69-342:70 b_ 1247testdata/Prelude.lc 342:69-342:70 b_
@@ -1260,9 +1260,9 @@ testdata/Prelude.lc 347:16-347:49 Vec 4 Float -> Vec 4 Float -> Mat 4 4 Float
1260testdata/Prelude.lc 347:16-347:62 Vec 4 Float -> Mat 4 4 Float 1260testdata/Prelude.lc 347:16-347:62 Vec 4 Float -> Mat 4 4 Float
1261testdata/Prelude.lc 347:16-347:75 Mat 4 4 Float 1261testdata/Prelude.lc 347:16-347:75 Mat 4 4 Float
1262testdata/Prelude.lc 347:22-347:24 {a} -> a -> a -> a -> a -> VecS a 4 1262testdata/Prelude.lc 347:22-347:24 {a} -> a -> a -> a -> a -> VecS a 4
1263testdata/Prelude.lc 347:22-347:26 VecScalar c_ Float -> VecScalar d_ Float -> VecScalar e_ Float -> VecS (VecScalar f_ Float) 4 1263testdata/Prelude.lc 347:22-347:26 VecScalar c_ Float -> VecScalar c_ Float -> VecScalar c_ Float -> VecS (VecScalar c_ Float) 4
1264testdata/Prelude.lc 347:22-347:28 VecScalar d_ Float -> VecScalar e_ Float -> VecS (VecScalar f_ Float) 4 1264testdata/Prelude.lc 347:22-347:28 VecScalar d_ Float -> VecScalar d_ Float -> VecS (VecScalar d_ Float) 4
1265testdata/Prelude.lc 347:22-347:33 VecScalar f_ Float -> VecS (VecScalar g_ Float) 4 1265testdata/Prelude.lc 347:22-347:33 VecScalar f_ Float -> VecS (VecScalar f_ Float) 4
1266testdata/Prelude.lc 347:22-347:35 VecS (VecScalar 1 Float) 4 1266testdata/Prelude.lc 347:22-347:35 VecS (VecScalar 1 Float) 4
1267testdata/Prelude.lc 347:25-347:26 VecScalar d_ Float 1267testdata/Prelude.lc 347:25-347:26 VecScalar d_ Float
1268testdata/Prelude.lc 347:27-347:28 b_ 1268testdata/Prelude.lc 347:27-347:28 b_
@@ -1271,9 +1271,9 @@ testdata/Prelude.lc 347:30-347:32 VecScalar f_ Float
1271testdata/Prelude.lc 347:31-347:32 VecScalar f_ Float 1271testdata/Prelude.lc 347:31-347:32 VecScalar f_ Float
1272testdata/Prelude.lc 347:34-347:35 b_ 1272testdata/Prelude.lc 347:34-347:35 b_
1273testdata/Prelude.lc 347:38-347:40 {a} -> a -> a -> a -> a -> VecS a 4 1273testdata/Prelude.lc 347:38-347:40 {a} -> a -> a -> a -> a -> VecS a 4
1274testdata/Prelude.lc 347:38-347:42 b_ -> c_ -> d_ -> VecS e_ 4 1274testdata/Prelude.lc 347:38-347:42 b_ -> b_ -> b_ -> VecS b_ 4
1275testdata/Prelude.lc 347:38-347:44 c_ -> d_ -> VecS e_ 4 1275testdata/Prelude.lc 347:38-347:44 c_ -> c_ -> VecS c_ 4
1276testdata/Prelude.lc 347:38-347:46 c_ -> VecS d_ 4 1276testdata/Prelude.lc 347:38-347:46 c_ -> VecS c_ 4
1277testdata/Prelude.lc 347:38-347:48 VecS Float 4 1277testdata/Prelude.lc 347:38-347:48 VecS Float 4
1278testdata/Prelude.lc 347:41-347:42 b_ 1278testdata/Prelude.lc 347:41-347:42 b_
1279testdata/Prelude.lc 347:43-347:44 b_ 1279testdata/Prelude.lc 347:43-347:44 b_
@@ -1289,9 +1289,9 @@ testdata/Prelude.lc 347:56-347:57 b_
1289testdata/Prelude.lc 347:58-347:59 VecScalar 1 Float 1289testdata/Prelude.lc 347:58-347:59 VecScalar 1 Float
1290testdata/Prelude.lc 347:60-347:61 b_ 1290testdata/Prelude.lc 347:60-347:61 b_
1291testdata/Prelude.lc 347:64-347:66 {a} -> a -> a -> a -> a -> VecS a 4 1291testdata/Prelude.lc 347:64-347:66 {a} -> a -> a -> a -> a -> VecS a 4
1292testdata/Prelude.lc 347:64-347:68 b_ -> c_ -> d_ -> VecS e_ 4 1292testdata/Prelude.lc 347:64-347:68 b_ -> b_ -> b_ -> VecS b_ 4
1293testdata/Prelude.lc 347:64-347:70 c_ -> d_ -> VecS e_ 4 1293testdata/Prelude.lc 347:64-347:70 c_ -> c_ -> VecS c_ 4
1294testdata/Prelude.lc 347:64-347:72 c_ -> VecS d_ 4 1294testdata/Prelude.lc 347:64-347:72 c_ -> VecS c_ 4
1295testdata/Prelude.lc 347:64-347:74 VecS Float 4 1295testdata/Prelude.lc 347:64-347:74 VecS Float 4
1296testdata/Prelude.lc 347:67-347:68 b_ 1296testdata/Prelude.lc 347:67-347:68 b_
1297testdata/Prelude.lc 347:69-347:70 b_ 1297testdata/Prelude.lc 347:69-347:70 b_
@@ -1310,25 +1310,25 @@ testdata/Prelude.lc 352:16-352:46 Vec 4 Float -> Vec 4 Float -> Mat 4 4 Float
1310testdata/Prelude.lc 352:16-352:62 Vec 4 Float -> Mat 4 4 Float 1310testdata/Prelude.lc 352:16-352:62 Vec 4 Float -> Mat 4 4 Float
1311testdata/Prelude.lc 352:16-352:75 Mat 4 4 Float 1311testdata/Prelude.lc 352:16-352:75 Mat 4 4 Float
1312testdata/Prelude.lc 352:22-352:24 {a} -> a -> a -> a -> a -> VecS a 4 1312testdata/Prelude.lc 352:22-352:24 {a} -> a -> a -> a -> a -> VecS a 4
1313testdata/Prelude.lc 352:22-352:26 b_ -> c_ -> d_ -> VecS e_ 4 1313testdata/Prelude.lc 352:22-352:26 b_ -> b_ -> b_ -> VecS b_ 4
1314testdata/Prelude.lc 352:22-352:28 c_ -> d_ -> VecS e_ 4 1314testdata/Prelude.lc 352:22-352:28 c_ -> c_ -> VecS c_ 4
1315testdata/Prelude.lc 352:22-352:30 c_ -> VecS d_ 4 1315testdata/Prelude.lc 352:22-352:30 c_ -> VecS c_ 4
1316testdata/Prelude.lc 352:22-352:32 VecS Float 4 1316testdata/Prelude.lc 352:22-352:32 VecS Float 4
1317testdata/Prelude.lc 352:25-352:26 b_ 1317testdata/Prelude.lc 352:25-352:26 b_
1318testdata/Prelude.lc 352:27-352:28 b_ 1318testdata/Prelude.lc 352:27-352:28 b_
1319testdata/Prelude.lc 352:29-352:30 b_ 1319testdata/Prelude.lc 352:29-352:30 b_
1320testdata/Prelude.lc 352:31-352:32 b_ 1320testdata/Prelude.lc 352:31-352:32 b_
1321testdata/Prelude.lc 352:35-352:37 {a} -> a -> a -> a -> a -> VecS a 4 1321testdata/Prelude.lc 352:35-352:37 {a} -> a -> a -> a -> a -> VecS a 4
1322testdata/Prelude.lc 352:35-352:39 b_ -> c_ -> d_ -> VecS e_ 4 1322testdata/Prelude.lc 352:35-352:39 b_ -> b_ -> b_ -> VecS b_ 4
1323testdata/Prelude.lc 352:35-352:41 VecScalar d_ Float -> VecScalar e_ Float -> VecS (VecScalar f_ Float) 4 1323testdata/Prelude.lc 352:35-352:41 VecScalar d_ Float -> VecScalar d_ Float -> VecS (VecScalar d_ Float) 4
1324testdata/Prelude.lc 352:35-352:43 VecScalar d_ Float -> VecS (VecScalar e_ Float) 4 1324testdata/Prelude.lc 352:35-352:43 VecScalar d_ Float -> VecS (VecScalar d_ Float) 4
1325testdata/Prelude.lc 352:35-352:45 VecS (VecScalar 1 Float) 4 1325testdata/Prelude.lc 352:35-352:45 VecS (VecScalar 1 Float) 4
1326testdata/Prelude.lc 352:38-352:39 b_ 1326testdata/Prelude.lc 352:38-352:39 b_
1327testdata/Prelude.lc 352:40-352:41 VecScalar e_ Float 1327testdata/Prelude.lc 352:40-352:41 VecScalar e_ Float
1328testdata/Prelude.lc 352:42-352:43 VecScalar d_ Float 1328testdata/Prelude.lc 352:42-352:43 VecScalar d_ Float
1329testdata/Prelude.lc 352:44-352:45 b_ 1329testdata/Prelude.lc 352:44-352:45 b_
1330testdata/Prelude.lc 352:48-352:50 {a} -> a -> a -> a -> a -> VecS a 4 1330testdata/Prelude.lc 352:48-352:50 {a} -> a -> a -> a -> a -> VecS a 4
1331testdata/Prelude.lc 352:48-352:52 b_ -> c_ -> d_ -> VecS e_ 4 1331testdata/Prelude.lc 352:48-352:52 b_ -> b_ -> b_ -> VecS b_ 4
1332testdata/Prelude.lc 352:48-352:57 Float -> Float -> VecS Float 4 1332testdata/Prelude.lc 352:48-352:57 Float -> Float -> VecS Float 4
1333testdata/Prelude.lc 352:48-352:59 Float -> VecS Float 4 1333testdata/Prelude.lc 352:48-352:59 Float -> VecS Float 4
1334testdata/Prelude.lc 352:48-352:61 VecS Float 4 1334testdata/Prelude.lc 352:48-352:61 VecS Float 4
@@ -1339,9 +1339,9 @@ testdata/Prelude.lc 352:55-352:56 VecScalar 1 Float
1339testdata/Prelude.lc 352:58-352:59 VecScalar 1 Float 1339testdata/Prelude.lc 352:58-352:59 VecScalar 1 Float
1340testdata/Prelude.lc 352:60-352:61 b_ 1340testdata/Prelude.lc 352:60-352:61 b_
1341testdata/Prelude.lc 352:64-352:66 {a} -> a -> a -> a -> a -> VecS a 4 1341testdata/Prelude.lc 352:64-352:66 {a} -> a -> a -> a -> a -> VecS a 4
1342testdata/Prelude.lc 352:64-352:68 b_ -> c_ -> d_ -> VecS e_ 4 1342testdata/Prelude.lc 352:64-352:68 b_ -> b_ -> b_ -> VecS b_ 4
1343testdata/Prelude.lc 352:64-352:70 c_ -> d_ -> VecS e_ 4 1343testdata/Prelude.lc 352:64-352:70 c_ -> c_ -> VecS c_ 4
1344testdata/Prelude.lc 352:64-352:72 c_ -> VecS d_ 4 1344testdata/Prelude.lc 352:64-352:72 c_ -> VecS c_ 4
1345testdata/Prelude.lc 352:64-352:74 VecS Float 4 1345testdata/Prelude.lc 352:64-352:74 VecS Float 4
1346testdata/Prelude.lc 352:67-352:68 b_ 1346testdata/Prelude.lc 352:67-352:68 b_
1347testdata/Prelude.lc 352:69-352:70 b_ 1347testdata/Prelude.lc 352:69-352:70 b_
@@ -1356,9 +1356,9 @@ testdata/Prelude.lc 355:13-355:14 VecScalar c_ Float
1356testdata/Prelude.lc 357:1-357:14 Float -> Float -> Float -> Mat 4 4 Float 1356testdata/Prelude.lc 357:1-357:14 Float -> Float -> Float -> Mat 4 4 Float
1357testdata/Prelude.lc 357:23-357:33 VecScalar 1 Float -> Mat 4 4 Float 1357testdata/Prelude.lc 357:23-357:33 VecScalar 1 Float -> Mat 4 4 Float
1358testdata/Prelude.lc 357:23-357:35 Mat 4 4 Float 1358testdata/Prelude.lc 357:23-357:35 Mat 4 4 Float
1359testdata/Prelude.lc 357:23-357:39 Mat 4 a_ Float -> Mat 4 b_ Float 1359testdata/Prelude.lc 357:23-357:39 Mat 4 a_ Float -> Mat 4 a_ Float
1360testdata/Prelude.lc 357:23-357:52 Mat 4 4 Float 1360testdata/Prelude.lc 357:23-357:52 Mat 4 4 Float
1361testdata/Prelude.lc 357:23-357:56 Mat 4 a_ Float -> Mat 4 b_ Float 1361testdata/Prelude.lc 357:23-357:56 Mat 4 a_ Float -> Mat 4 a_ Float
1362testdata/Prelude.lc 357:23-357:69 Mat 4 4 Float 1362testdata/Prelude.lc 357:23-357:69 Mat 4 4 Float
1363testdata/Prelude.lc 357:34-357:35 k_ 1363testdata/Prelude.lc 357:34-357:35 k_
1364testdata/Prelude.lc 357:36-357:39 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 1364testdata/Prelude.lc 357:36-357:39 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
@@ -1393,27 +1393,27 @@ testdata/Prelude.lc 360:30-360:32 {a} -> {_ : Num a} -> VecS a 4
1393testdata/Prelude.lc 360:33-360:35 {a} -> {_ : Num a} -> VecS a 4 1393testdata/Prelude.lc 360:33-360:35 {a} -> {_ : Num a} -> VecS a 4
1394testdata/Prelude.lc 360:36-360:38 VecS Float 4 1394testdata/Prelude.lc 360:36-360:38 VecS Float 4
1395testdata/Prelude.lc 362:9-362:11 {a} -> a -> a -> a -> a -> VecS a 4 1395testdata/Prelude.lc 362:9-362:11 {a} -> a -> a -> a -> a -> VecS a 4
1396testdata/Prelude.lc 362:9-362:13 b_ -> c_ -> d_ -> VecS e_ 4 1396testdata/Prelude.lc 362:9-362:13 b_ -> b_ -> b_ -> VecS b_ 4
1397testdata/Prelude.lc 362:9-362:15 c_ -> d_ -> VecS e_ 4 1397testdata/Prelude.lc 362:9-362:15 c_ -> c_ -> VecS c_ 4
1398testdata/Prelude.lc 362:9-362:17 c_ -> VecS d_ 4 1398testdata/Prelude.lc 362:9-362:17 c_ -> VecS c_ 4
1399testdata/Prelude.lc 362:9-362:19 VecS c_ 4 1399testdata/Prelude.lc 362:9-362:19 VecS c_ 4
1400testdata/Prelude.lc 362:12-362:13 b_ 1400testdata/Prelude.lc 362:12-362:13 b_
1401testdata/Prelude.lc 362:14-362:15 b_ 1401testdata/Prelude.lc 362:14-362:15 b_
1402testdata/Prelude.lc 362:16-362:17 b_ 1402testdata/Prelude.lc 362:16-362:17 b_
1403testdata/Prelude.lc 362:18-362:19 b_ 1403testdata/Prelude.lc 362:18-362:19 b_
1404testdata/Prelude.lc 363:9-363:11 {a} -> a -> a -> a -> a -> VecS a 4 1404testdata/Prelude.lc 363:9-363:11 {a} -> a -> a -> a -> a -> VecS a 4
1405testdata/Prelude.lc 363:9-363:13 b_ -> c_ -> d_ -> VecS e_ 4 1405testdata/Prelude.lc 363:9-363:13 b_ -> b_ -> b_ -> VecS b_ 4
1406testdata/Prelude.lc 363:9-363:15 c_ -> d_ -> VecS e_ 4 1406testdata/Prelude.lc 363:9-363:15 c_ -> c_ -> VecS c_ 4
1407testdata/Prelude.lc 363:9-363:17 c_ -> VecS d_ 4 1407testdata/Prelude.lc 363:9-363:17 c_ -> VecS c_ 4
1408testdata/Prelude.lc 363:9-363:19 VecS c_ 4 1408testdata/Prelude.lc 363:9-363:19 VecS c_ 4
1409testdata/Prelude.lc 363:12-363:13 b_ 1409testdata/Prelude.lc 363:12-363:13 b_
1410testdata/Prelude.lc 363:14-363:15 b_ 1410testdata/Prelude.lc 363:14-363:15 b_
1411testdata/Prelude.lc 363:16-363:17 b_ 1411testdata/Prelude.lc 363:16-363:17 b_
1412testdata/Prelude.lc 363:18-363:19 b_ 1412testdata/Prelude.lc 363:18-363:19 b_
1413testdata/Prelude.lc 364:9-364:11 {a} -> a -> a -> a -> a -> VecS a 4 1413testdata/Prelude.lc 364:9-364:11 {a} -> a -> a -> a -> a -> VecS a 4
1414testdata/Prelude.lc 364:9-364:13 b_ -> c_ -> d_ -> VecS e_ 4 1414testdata/Prelude.lc 364:9-364:13 b_ -> b_ -> b_ -> VecS b_ 4
1415testdata/Prelude.lc 364:9-364:15 c_ -> d_ -> VecS e_ 4 1415testdata/Prelude.lc 364:9-364:15 c_ -> c_ -> VecS c_ 4
1416testdata/Prelude.lc 364:9-364:17 c_ -> VecS d_ 4 1416testdata/Prelude.lc 364:9-364:17 c_ -> VecS c_ 4
1417testdata/Prelude.lc 364:9-364:19 VecS c_ 4 1417testdata/Prelude.lc 364:9-364:19 VecS c_ 4
1418testdata/Prelude.lc 364:12-364:13 b_ 1418testdata/Prelude.lc 364:12-364:13 b_
1419testdata/Prelude.lc 364:14-364:15 b_ 1419testdata/Prelude.lc 364:14-364:15 b_
@@ -1457,7 +1457,7 @@ testdata/Prelude.lc 371:17-371:18 b_
1457testdata/Prelude.lc 371:19-371:24 Type 1457testdata/Prelude.lc 371:19-371:24 Type
1458testdata/Prelude.lc 372:1-372:7 Vec 3 Float -> Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float 1458testdata/Prelude.lc 372:1-372:7 Vec 3 Float -> Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float
1459testdata/Prelude.lc 372:24-372:25 Mat 4 4 Float 1459testdata/Prelude.lc 372:24-372:25 Mat 4 4 Float
1460testdata/Prelude.lc 372:24-372:29 Mat 4 a_ Float -> Mat 4 b_ Float 1460testdata/Prelude.lc 372:24-372:29 Mat 4 a_ Float -> Mat 4 a_ Float
1461testdata/Prelude.lc 372:24-372:56 Mat 4 4 Float 1461testdata/Prelude.lc 372:24-372:56 Mat 4 4 Float
1462testdata/Prelude.lc 372:24-378:65 Vec 3 Float -> Mat 4 4 Float | Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float | Vec 3 Float -> Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float 1462testdata/Prelude.lc 372:24-378:65 Vec 3 Float -> Mat 4 4 Float | Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float | Vec 3 Float -> Vec 3 Float -> Vec 3 Float -> Mat 4 4 Float
1463testdata/Prelude.lc 372:26-372:29 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 1463testdata/Prelude.lc 372:26-372:29 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
@@ -1467,9 +1467,9 @@ testdata/Prelude.lc 372:48-372:51 {a} -> {_ : Signed (MatVecScalarElem a)} -> a
1467testdata/Prelude.lc 372:48-372:55 VecS Float 3 1467testdata/Prelude.lc 372:48-372:55 VecS Float 3
1468testdata/Prelude.lc 372:52-372:55 Vec 3 Float 1468testdata/Prelude.lc 372:52-372:55 Vec 3 Float
1469testdata/Prelude.lc 374:14-374:16 {a} -> a -> a -> a -> a -> VecS a 4 1469testdata/Prelude.lc 374:14-374:16 {a} -> a -> a -> a -> a -> VecS a 4
1470testdata/Prelude.lc 374:14-374:20 b_ -> c_ -> d_ -> VecS e_ 4 1470testdata/Prelude.lc 374:14-374:20 b_ -> b_ -> b_ -> VecS b_ 4
1471testdata/Prelude.lc 374:14-374:24 b_ -> c_ -> VecS d_ 4 1471testdata/Prelude.lc 374:14-374:24 b_ -> b_ -> VecS b_ 4
1472testdata/Prelude.lc 374:14-374:28 b_ -> VecS c_ 4 1472testdata/Prelude.lc 374:14-374:28 b_ -> VecS b_ 4
1473testdata/Prelude.lc 374:14-374:30 VecS c_ 4 1473testdata/Prelude.lc 374:14-374:30 VecS c_ 4
1474testdata/Prelude.lc 374:17-374:18 e_ 1474testdata/Prelude.lc 374:17-374:18 e_
1475testdata/Prelude.lc 374:17-374:20 b_ 1475testdata/Prelude.lc 374:17-374:20 b_
@@ -1479,7 +1479,7 @@ testdata/Prelude.lc 374:25-374:26 VecS d_ c_
1479testdata/Prelude.lc 374:25-374:28 b_ 1479testdata/Prelude.lc 374:25-374:28 b_
1480testdata/Prelude.lc 374:29-374:30 b_ 1480testdata/Prelude.lc 374:29-374:30 b_
1481testdata/Prelude.lc 375:9-375:18 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a 1481testdata/Prelude.lc 375:9-375:18 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a
1482testdata/Prelude.lc 375:9-375:20 VecScalar a_ Float -> VecScalar b_ Float 1482testdata/Prelude.lc 375:9-375:20 VecScalar a_ Float -> VecScalar a_ Float
1483testdata/Prelude.lc 375:9-375:33 VecScalar 3 Float 1483testdata/Prelude.lc 375:9-375:33 VecScalar 3 Float
1484testdata/Prelude.lc 375:19-375:20 {a} -> {b} -> (a->b) -> a->b 1484testdata/Prelude.lc 375:19-375:20 {a} -> {b} -> (a->b) -> a->b
1485testdata/Prelude.lc 375:21-375:24 Vec 3 Float 1485testdata/Prelude.lc 375:21-375:24 Vec 3 Float
@@ -1488,7 +1488,7 @@ testdata/Prelude.lc 375:21-375:33 VecS Float 3
1488testdata/Prelude.lc 375:25-375:26 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 1488testdata/Prelude.lc 375:25-375:26 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
1489testdata/Prelude.lc 375:27-375:33 Vec 3 Float 1489testdata/Prelude.lc 375:27-375:33 Vec 3 Float
1490testdata/Prelude.lc 376:9-376:18 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a 1490testdata/Prelude.lc 376:9-376:18 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a
1491testdata/Prelude.lc 376:9-376:20 VecScalar a_ Float -> VecScalar b_ Float 1491testdata/Prelude.lc 376:9-376:20 VecScalar a_ Float -> VecScalar a_ Float
1492testdata/Prelude.lc 376:9-376:33 VecScalar 3 Float 1492testdata/Prelude.lc 376:9-376:33 VecScalar 3 Float
1493testdata/Prelude.lc 376:19-376:20 {a} -> {b} -> (a->b) -> a->b 1493testdata/Prelude.lc 376:19-376:20 {a} -> {b} -> (a->b) -> a->b
1494testdata/Prelude.lc 376:21-376:23 Vec 3 Float 1494testdata/Prelude.lc 376:21-376:23 Vec 3 Float
@@ -1502,7 +1502,7 @@ testdata/Prelude.lc 377:9-377:20 VecS Float 3
1502testdata/Prelude.lc 377:11-377:18 {a} -> {_ : a ~ VecS Float 3} -> a -> a->a 1502testdata/Prelude.lc 377:11-377:18 {a} -> {_ : a ~ VecS Float 3} -> a -> a->a
1503testdata/Prelude.lc 377:19-377:20 VecScalar 3 Float 1503testdata/Prelude.lc 377:19-377:20 VecScalar 3 Float
1504testdata/Prelude.lc 378:9-378:18 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c 1504testdata/Prelude.lc 378:9-378:18 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c
1505testdata/Prelude.lc 378:9-378:20 Mat c_ b_ a_ -> Mat c_ d_ b_ 1505testdata/Prelude.lc 378:9-378:20 Mat c_ b_ a_ -> Mat b_ c_ a_
1506testdata/Prelude.lc 378:9-378:65 Mat 4 4 Float 1506testdata/Prelude.lc 378:9-378:65 Mat 4 4 Float
1507testdata/Prelude.lc 378:19-378:20 {a} -> {b} -> (a->b) -> a->b 1507testdata/Prelude.lc 378:19-378:20 {a} -> {b} -> (a->b) -> a->b
1508testdata/Prelude.lc 378:21-378:25 Vec 4 Float -> Vec 4 Float -> Vec 4 Float -> Vec 4 Float -> Mat 4 4 Float 1508testdata/Prelude.lc 378:21-378:25 Vec 4 Float -> Vec 4 Float -> Vec 4 Float -> Vec 4 Float -> Mat 4 4 Float
@@ -1520,9 +1520,9 @@ testdata/Prelude.lc 378:45-378:49 {a} -> {b:Nat} -> {_ : Num a} -> VecS a b ->
1520testdata/Prelude.lc 378:45-378:51 VecS Float 4 1520testdata/Prelude.lc 378:45-378:51 VecS Float 4
1521testdata/Prelude.lc 378:50-378:51 VecScalar 3 Float 1521testdata/Prelude.lc 378:50-378:51 VecScalar 3 Float
1522testdata/Prelude.lc 378:54-378:56 {a} -> a -> a -> a -> a -> VecS a 4 1522testdata/Prelude.lc 378:54-378:56 {a} -> a -> a -> a -> a -> VecS a 4
1523testdata/Prelude.lc 378:54-378:58 b_ -> c_ -> d_ -> VecS e_ 4 1523testdata/Prelude.lc 378:54-378:58 b_ -> b_ -> b_ -> VecS b_ 4
1524testdata/Prelude.lc 378:54-378:60 c_ -> d_ -> VecS e_ 4 1524testdata/Prelude.lc 378:54-378:60 c_ -> c_ -> VecS c_ 4
1525testdata/Prelude.lc 378:54-378:62 c_ -> VecS d_ 4 1525testdata/Prelude.lc 378:54-378:62 c_ -> VecS c_ 4
1526testdata/Prelude.lc 378:54-378:64 VecS Float 4 1526testdata/Prelude.lc 378:54-378:64 VecS Float 4
1527testdata/Prelude.lc 378:57-378:58 b_ 1527testdata/Prelude.lc 378:57-378:58 b_
1528testdata/Prelude.lc 378:59-378:60 b_ 1528testdata/Prelude.lc 378:59-378:60 b_
@@ -1530,20 +1530,20 @@ testdata/Prelude.lc 378:61-378:62 b_
1530testdata/Prelude.lc 378:63-378:64 b_ 1530testdata/Prelude.lc 378:63-378:64 b_
1531testdata/Prelude.lc 380:1-380:6 Float -> VecS Float 4 -> VecS Float 4 1531testdata/Prelude.lc 380:1-380:6 Float -> VecS Float 4 -> VecS Float 4
1532testdata/Prelude.lc 380:13-380:14 d_ 1532testdata/Prelude.lc 380:13-380:14 d_
1533testdata/Prelude.lc 380:13-380:16 c_->d_ 1533testdata/Prelude.lc 380:13-380:16 c_->c_
1534testdata/Prelude.lc 380:13-380:29 VecS Float 4 1534testdata/Prelude.lc 380:13-380:29 VecS Float 4
1535testdata/Prelude.lc 380:15-380:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 1535testdata/Prelude.lc 380:15-380:16 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
1536testdata/Prelude.lc 380:17-380:19 {a} -> a -> a -> a -> a -> VecS a 4 1536testdata/Prelude.lc 380:17-380:19 {a} -> a -> a -> a -> a -> VecS a 4
1537testdata/Prelude.lc 380:17-380:21 e_ -> f_ -> g_ -> VecS h_ 4 1537testdata/Prelude.lc 380:17-380:21 e_ -> e_ -> e_ -> VecS e_ 4
1538testdata/Prelude.lc 380:17-380:23 e_ -> f_ -> VecS g_ 4 1538testdata/Prelude.lc 380:17-380:23 e_ -> e_ -> VecS e_ 4
1539testdata/Prelude.lc 380:17-380:25 e_ -> VecS f_ 4 1539testdata/Prelude.lc 380:17-380:25 e_ -> VecS e_ 4
1540testdata/Prelude.lc 380:17-380:29 VecS Float 4 1540testdata/Prelude.lc 380:17-380:29 VecS Float 4
1541testdata/Prelude.lc 380:20-380:21 f_ 1541testdata/Prelude.lc 380:20-380:21 f_
1542testdata/Prelude.lc 380:22-380:23 e_ 1542testdata/Prelude.lc 380:22-380:23 e_
1543testdata/Prelude.lc 380:24-380:25 e_ 1543testdata/Prelude.lc 380:24-380:25 e_
1544testdata/Prelude.lc 380:26-380:29 Float 1544testdata/Prelude.lc 380:26-380:29 Float
1545testdata/Prelude.lc 382:11-382:16 Type 1545testdata/Prelude.lc 382:11-382:16 Type
1546testdata/Prelude.lc 382:11-385:38 Float -> Float -> List Float | a_->b_ 1546testdata/Prelude.lc 382:11-385:38 Float -> Float -> List Float | a_->a_
1547testdata/Prelude.lc 382:20-382:25 Type 1547testdata/Prelude.lc 382:20-382:25 Type
1548testdata/Prelude.lc 382:20-382:36 Type 1548testdata/Prelude.lc 382:20-382:36 Type
1549testdata/Prelude.lc 382:29-382:36 Type 1549testdata/Prelude.lc 382:29-382:36 Type
@@ -1572,16 +1572,16 @@ testdata/Prelude.lc 385:34-385:35 b_
1572testdata/Prelude.lc 385:37-385:38 Float 1572testdata/Prelude.lc 385:37-385:38 Float
1573testdata/Prelude.lc 387:9-387:12 Type 1573testdata/Prelude.lc 387:9-387:12 Type
1574testdata/Prelude.lc 387:9-387:24 Type 1574testdata/Prelude.lc 387:9-387:24 Type
1575testdata/Prelude.lc 387:9-389:30 a_->b_ | {a} -> List a -> Int->a 1575testdata/Prelude.lc 387:9-389:30 a_->a_ | {a} -> List a -> Int->a
1576testdata/Prelude.lc 387:10-387:11 b_ 1576testdata/Prelude.lc 387:10-387:11 b_
1577testdata/Prelude.lc 387:16-387:19 Type 1577testdata/Prelude.lc 387:16-387:19 Type
1578testdata/Prelude.lc 387:16-387:24 Type 1578testdata/Prelude.lc 387:16-387:24 Type
1579testdata/Prelude.lc 387:23-387:24 Type 1579testdata/Prelude.lc 387:23-387:24 Type
1580testdata/Prelude.lc 388:10-388:12 {a} -> List a -> Int->a 1580testdata/Prelude.lc 388:10-388:12 {a} -> List a -> Int->a
1581testdata/Prelude.lc 388:19-388:20 d_ 1581testdata/Prelude.lc 388:19-388:20 d_
1582testdata/Prelude.lc 388:19-389:30 Bool->e_ | Int->c_ | List a_ -> Int->c_ | List c_ -> c_ | b_ -> List c_ -> c_ | c_ 1582testdata/Prelude.lc 388:19-389:30 Bool->d_ | Int->b_ | List a_ -> Int->a_ | List c_ -> b_ | b_ -> List b_ -> a_ | c_
1583testdata/Prelude.lc 389:19-389:21 List f_ 1583testdata/Prelude.lc 389:19-389:21 List f_
1584testdata/Prelude.lc 389:19-389:24 Int->f_ 1584testdata/Prelude.lc 389:19-389:24 Int->e_
1585testdata/Prelude.lc 389:19-389:30 d_ 1585testdata/Prelude.lc 389:19-389:30 d_
1586testdata/Prelude.lc 389:22-389:24 {a} -> List a -> Int->a 1586testdata/Prelude.lc 389:22-389:24 {a} -> List a -> Int->a
1587testdata/Prelude.lc 389:26-389:27 Int 1587testdata/Prelude.lc 389:26-389:27 Int
diff --git a/testdata/ambig.out b/testdata/ambig.out
index 04e30108..04665182 100644
--- a/testdata/ambig.out
+++ b/testdata/ambig.out
@@ -6,7 +6,7 @@ testdata/ambig.lc 4:1-4:2 {a} -> {b} -> {c} -> {d} -> (b -> d->c) -> (b, d) ->
6testdata/ambig.lc 4:11-4:12 c_ 6testdata/ambig.lc 4:11-4:12 c_
7testdata/ambig.lc 7:9-7:29 b_ 7testdata/ambig.lc 7:9-7:29 b_
8testdata/ambig.lc 7:21-7:22 s_ 8testdata/ambig.lc 7:21-7:22 s_
9testdata/ambig.lc 7:21-7:26 HList c_ -> c_ | c_ | c_ -> HList c_ -> c_ | d_ 9testdata/ambig.lc 7:21-7:26 HList c_ -> b_ | c_ | c_ -> HList b_ -> a_ | d_
10testdata/ambig.lc 7:23-7:24 n_ 10testdata/ambig.lc 7:23-7:24 n_
11testdata/ambig.lc 7:25-7:26 j_ 11testdata/ambig.lc 7:25-7:26 j_
12testdata/ambig.lc 7:28-7:29 g_ 12testdata/ambig.lc 7:28-7:29 g_
diff --git a/testdata/complex.out b/testdata/complex.out
index 59a9beaa..6152c39a 100644
--- a/testdata/complex.out
+++ b/testdata/complex.out
@@ -55,7 +55,7 @@ testdata/complex.lc 11:29-11:43 Type
55testdata/complex.lc 11:37-11:43 Repr 55testdata/complex.lc 11:37-11:43 Repr
56testdata/complex.lc 12:1-12:7 Float -> Float -> Complex 'Normal 56testdata/complex.lc 12:1-12:7 Float -> Float -> Complex 'Normal
57testdata/complex.lc 12:14-12:21 {a:Repr} -> Float -> Float -> Complex a 57testdata/complex.lc 12:14-12:21 {a:Repr} -> Float -> Float -> Complex a
58testdata/complex.lc 12:14-12:23 Float -> Complex b_ 58testdata/complex.lc 12:14-12:23 Float -> Complex a_
59testdata/complex.lc 12:14-12:25 Complex 'Normal | Float -> Complex 'Normal | Float -> Float -> Complex 'Normal 59testdata/complex.lc 12:14-12:25 Complex 'Normal | Float -> Complex 'Normal | Float -> Float -> Complex 'Normal
60testdata/complex.lc 12:22-12:23 Float 60testdata/complex.lc 12:22-12:23 Float
61testdata/complex.lc 12:24-12:25 Float 61testdata/complex.lc 12:24-12:25 Float
@@ -67,7 +67,7 @@ testdata/complex.lc 14:28-14:41 Type
67testdata/complex.lc 14:36-14:41 Repr 67testdata/complex.lc 14:36-14:41 Repr
68testdata/complex.lc 15:1-15:6 Float -> Float -> Complex 'Polar 68testdata/complex.lc 15:1-15:6 Float -> Float -> Complex 'Polar
69testdata/complex.lc 15:13-15:20 {a:Repr} -> Float -> Float -> Complex a 69testdata/complex.lc 15:13-15:20 {a:Repr} -> Float -> Float -> Complex a
70testdata/complex.lc 15:13-15:22 Float -> Complex b_ 70testdata/complex.lc 15:13-15:22 Float -> Complex a_
71testdata/complex.lc 15:13-15:24 Complex 'Polar | Float -> Complex 'Polar | Float -> Float -> Complex 'Polar 71testdata/complex.lc 15:13-15:24 Complex 'Polar | Float -> Complex 'Polar | Float -> Float -> Complex 'Polar
72testdata/complex.lc 15:21-15:22 Float 72testdata/complex.lc 15:21-15:22 Float
73testdata/complex.lc 15:23-15:24 Float 73testdata/complex.lc 15:23-15:24 Float
@@ -78,7 +78,7 @@ testdata/complex.lc 18:28-18:29 b_
78testdata/complex.lc 18:33-18:38 Type 78testdata/complex.lc 18:33-18:38 Type
79testdata/complex.lc 19:1-19:5 {a:Repr} -> Complex a -> Float 79testdata/complex.lc 19:1-19:5 {a:Repr} -> Complex a -> Float
80testdata/complex.lc 19:34-19:38 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a 80testdata/complex.lc 19:34-19:38 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -> a->a
81testdata/complex.lc 19:34-19:50 Float | Float -> Float->d_ | Float->d_ | VecScalar 1 Float 81testdata/complex.lc 19:34-19:50 Float | Float -> Float->b_ | Float->c_ | VecScalar 1 Float
82testdata/complex.lc 19:34-20:35 Complex a_ -> Float | Float | Repr->Float | {a:Repr} -> Complex a -> Float 82testdata/complex.lc 19:34-20:35 Complex a_ -> Float | Float | Repr->Float | {a:Repr} -> Complex a -> Float
83testdata/complex.lc 19:40-19:41 Float 83testdata/complex.lc 19:40-19:41 Float
84testdata/complex.lc 19:40-19:42 Float->Float 84testdata/complex.lc 19:40-19:42 Float->Float
@@ -93,7 +93,7 @@ testdata/complex.lc 19:46-19:48 Float->Float
93testdata/complex.lc 19:46-19:49 Float 93testdata/complex.lc 19:46-19:49 Float
94testdata/complex.lc 19:47-19:48 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 94testdata/complex.lc 19:47-19:48 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
95testdata/complex.lc 19:48-19:49 Float 95testdata/complex.lc 19:48-19:49 Float
96testdata/complex.lc 20:34-20:35 Float | Float -> Float->d_ | Float->d_ 96testdata/complex.lc 20:34-20:35 Float | Float -> Float->b_ | Float->c_
97testdata/complex.lc 22:12-22:19 Repr->Type 97testdata/complex.lc 22:12-22:19 Repr->Type
98testdata/complex.lc 22:12-22:26 Type 98testdata/complex.lc 22:12-22:26 Type
99testdata/complex.lc 22:20-22:26 Repr 99testdata/complex.lc 22:20-22:26 Repr
@@ -102,7 +102,7 @@ testdata/complex.lc 22:30-22:43 Type
102testdata/complex.lc 22:38-22:43 Repr 102testdata/complex.lc 22:38-22:43 Repr
103testdata/complex.lc 23:1-23:8 Complex 'Normal -> Complex 'Polar 103testdata/complex.lc 23:1-23:8 Complex 'Normal -> Complex 'Polar
104testdata/complex.lc 24:8-29:17 Complex 'Polar 104testdata/complex.lc 24:8-29:17 Complex 'Polar
105testdata/complex.lc 24:8-31:25 Complex 'Normal -> Complex 'Polar | Complex 'Polar | Float -> Float->d_ | Float->d_ 105testdata/complex.lc 24:8-31:25 Complex 'Normal -> Complex 'Polar | Complex 'Polar | Float -> Float->b_ | Float->c_
106testdata/complex.lc 24:11-24:12 Float 106testdata/complex.lc 24:11-24:12 Float
107testdata/complex.lc 24:11-24:14 VecScalar 1 Float -> VecScalar 1 Bool 107testdata/complex.lc 24:11-24:14 VecScalar 1 Float -> VecScalar 1 Bool
108testdata/complex.lc 24:11-24:19 VecScalar 1 Bool 108testdata/complex.lc 24:11-24:19 VecScalar 1 Bool
@@ -254,8 +254,8 @@ testdata/complex.lc 64:30-64:44 Type
254testdata/complex.lc 64:38-64:44 Repr 254testdata/complex.lc 64:38-64:44 Repr
255testdata/complex.lc 65:1-65:9 Complex 'Polar -> Complex 'Normal 255testdata/complex.lc 65:1-65:9 Complex 'Polar -> Complex 'Normal
256testdata/complex.lc 65:28-65:35 {a:Repr} -> Float -> Float -> Complex a 256testdata/complex.lc 65:28-65:35 {a:Repr} -> Float -> Float -> Complex a
257testdata/complex.lc 65:28-65:49 Float -> Complex b_ 257testdata/complex.lc 65:28-65:49 Float -> Complex a_
258testdata/complex.lc 65:28-65:63 Complex 'Polar -> Complex 'Normal | Complex a_ | Float -> Float->d_ | Float->d_ 258testdata/complex.lc 65:28-65:63 Complex 'Polar -> Complex 'Normal | Complex a_ | Float -> Float->b_ | Float->c_
259testdata/complex.lc 65:37-65:38 Float 259testdata/complex.lc 65:37-65:38 Float
260testdata/complex.lc 65:37-65:40 Float->Float 260testdata/complex.lc 65:37-65:40 Float->Float
261testdata/complex.lc 65:37-65:48 Float 261testdata/complex.lc 65:37-65:48 Float
@@ -271,7 +271,7 @@ testdata/complex.lc 65:55-65:58 {a} -> {b:Nat} -> {_ : a ~ VecScalar b Float} -
271testdata/complex.lc 65:55-65:62 VecScalar 1 Float 271testdata/complex.lc 65:55-65:62 VecScalar 1 Float
272testdata/complex.lc 65:59-65:62 Float 272testdata/complex.lc 65:59-65:62 Float
273testdata/complex.lc 111:1-111:15 {a:Repr} -> Complex a -> Float 273testdata/complex.lc 111:1-111:15 {a:Repr} -> Complex a -> Float
274testdata/complex.lc 111:38-111:39 Float | Float -> Float->d_ | Float->d_ 274testdata/complex.lc 111:38-111:39 Float | Float -> Float->b_ | Float->c_
275testdata/complex.lc 113:20-113:70 Type 275testdata/complex.lc 113:20-113:70 Type
276testdata/complex.lc 113:32-113:39 Repr->Type 276testdata/complex.lc 113:32-113:39 Repr->Type
277testdata/complex.lc 113:32-113:42 Type 277testdata/complex.lc 113:32-113:42 Type
@@ -286,8 +286,8 @@ testdata/complex.lc 113:60-113:70 Type
286testdata/complex.lc 113:68-113:70 Repr 286testdata/complex.lc 113:68-113:70 Repr
287testdata/complex.lc 114:1-114:4 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a 287testdata/complex.lc 114:1-114:4 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a
288testdata/complex.lc 114:53-114:60 {a:Repr} -> Float -> Float -> Complex a 288testdata/complex.lc 114:53-114:60 {a:Repr} -> Float -> Float -> Complex a
289testdata/complex.lc 114:53-114:68 Float -> Complex b_ 289testdata/complex.lc 114:53-114:68 Float -> Complex a_
290testdata/complex.lc 114:53-114:76 Complex a_ | Complex b_ -> Complex b_ -> Complex d_ | Complex b_ -> Complex d_ | Complex d_ | Float -> Float->d_ | Float->d_ | {a:Repr} -> Complex b_ -> Complex a -> Complex d_ | {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a 290testdata/complex.lc 114:53-114:76 Complex a_ | Complex b_ -> Complex a_ -> Complex b_ | Complex b_ -> Complex c_ | Complex d_ | Float -> Float->b_ | Float->c_ | {a:Repr} -> Complex a_ -> Complex a -> Complex a_ | {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a
291testdata/complex.lc 114:62-114:63 Float 291testdata/complex.lc 114:62-114:63 Float
292testdata/complex.lc 114:62-114:65 Float->Float 292testdata/complex.lc 114:62-114:65 Float->Float
293testdata/complex.lc 114:62-114:67 Float 293testdata/complex.lc 114:62-114:67 Float
@@ -311,8 +311,8 @@ testdata/complex.lc 128:51-128:61 Type
311testdata/complex.lc 128:59-128:61 Repr 311testdata/complex.lc 128:59-128:61 Repr
312testdata/complex.lc 129:1-129:4 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a 312testdata/complex.lc 129:1-129:4 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a
313testdata/complex.lc 129:53-129:60 {a:Repr} -> Float -> Float -> Complex a 313testdata/complex.lc 129:53-129:60 {a:Repr} -> Float -> Float -> Complex a
314testdata/complex.lc 129:53-129:72 Float -> Complex b_ 314testdata/complex.lc 129:53-129:72 Float -> Complex a_
315testdata/complex.lc 129:53-129:84 Complex a_ | Complex b_ -> Complex b_ -> Complex d_ | Complex b_ -> Complex d_ | Complex d_ | Float -> Float->d_ | Float->d_ | {a:Repr} -> Complex b_ -> Complex a -> Complex d_ | {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a 315testdata/complex.lc 129:53-129:84 Complex a_ | Complex b_ -> Complex a_ -> Complex b_ | Complex b_ -> Complex c_ | Complex d_ | Float -> Float->b_ | Float->c_ | {a:Repr} -> Complex a_ -> Complex a -> Complex a_ | {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a
316testdata/complex.lc 129:62-129:63 Float 316testdata/complex.lc 129:62-129:63 Float
317testdata/complex.lc 129:62-129:64 Float->Float 317testdata/complex.lc 129:62-129:64 Float->Float
318testdata/complex.lc 129:62-129:65 Float 318testdata/complex.lc 129:62-129:65 Float
@@ -347,10 +347,10 @@ testdata/complex.lc 137:19-137:26 Repr->Type
347testdata/complex.lc 137:19-137:28 Type 347testdata/complex.lc 137:19-137:28 Type
348testdata/complex.lc 137:27-137:28 Repr 348testdata/complex.lc 137:27-137:28 Repr
349testdata/complex.lc 138:1-138:2 {a:Repr} -> Complex a -> Complex a 349testdata/complex.lc 138:1-138:2 {a:Repr} -> Complex a -> Complex a
350testdata/complex.lc 138:7-138:22 Complex a_ -> Complex d_ 350testdata/complex.lc 138:7-138:22 Complex a_ -> Complex c_
351testdata/complex.lc 138:7-138:24 Complex a_ -> Complex b_ | Complex b_ 351testdata/complex.lc 138:7-138:24 Complex a_ -> Complex a_ | Complex b_
352testdata/complex.lc 138:8-138:11 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a 352testdata/complex.lc 138:8-138:11 {a:Repr} -> {b:Repr} -> Complex a -> Complex b -> Complex a
353testdata/complex.lc 138:8-138:13 Complex a_ -> Complex f_ 353testdata/complex.lc 138:8-138:13 Complex a_ -> Complex e_
354testdata/complex.lc 138:8-138:15 Complex c_ 354testdata/complex.lc 138:8-138:15 Complex c_
355testdata/complex.lc 138:12-138:13 Complex f_ 355testdata/complex.lc 138:12-138:13 Complex f_
356testdata/complex.lc 138:14-138:15 Complex d_ 356testdata/complex.lc 138:14-138:15 Complex d_
diff --git a/testdata/language-features/basic-list/list11.out b/testdata/language-features/basic-list/list11.out
index db160d1b..53a243cf 100644
--- a/testdata/language-features/basic-list/list11.out
+++ b/testdata/language-features/basic-list/list11.out
@@ -4,7 +4,7 @@ value :: {a} -> {_ : 'Num a[
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {_ : Num a} -> List a 5testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {_ : Num a} -> List a
6testdata/language-features/basic-list/list11.lc 1:9-1:10 b_ 6testdata/language-features/basic-list/list11.lc 1:9-1:10 b_
7testdata/language-features/basic-list/list11.lc 1:9-1:11 List b_ -> List c_ 7testdata/language-features/basic-list/list11.lc 1:9-1:11 List b_ -> List b_
8testdata/language-features/basic-list/list11.lc 1:9-1:13 List b_ 8testdata/language-features/basic-list/list11.lc 1:9-1:13 List b_
9testdata/language-features/basic-list/list11.lc 1:10-1:11 {a} -> a -> List a -> List a 9testdata/language-features/basic-list/list11.lc 1:10-1:11 {a} -> a -> List a -> List a
10testdata/language-features/basic-list/list11.lc 1:11-1:13 {a} -> List a 10testdata/language-features/basic-list/list11.lc 1:11-1:13 {a} -> List a
diff --git a/testdata/language-features/basic-list/list12.out b/testdata/language-features/basic-list/list12.out
index eebc55d2..78811ae1 100644
--- a/testdata/language-features/basic-list/list12.out
+++ b/testdata/language-features/basic-list/list12.out
@@ -4,23 +4,23 @@ value :: {a} -> {_ : 'Num a[
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {_ : Num a} -> List a 5testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {_ : Num a} -> List a
6testdata/language-features/basic-list/list12.lc 1:9-1:10 b_ 6testdata/language-features/basic-list/list12.lc 1:9-1:10 b_
7testdata/language-features/basic-list/list12.lc 1:9-1:11 List b_ -> List c_ 7testdata/language-features/basic-list/list12.lc 1:9-1:11 List b_ -> List b_
8testdata/language-features/basic-list/list12.lc 1:9-1:21 List c_ 8testdata/language-features/basic-list/list12.lc 1:9-1:21 List c_
9testdata/language-features/basic-list/list12.lc 1:10-1:11 {a} -> a -> List a -> List a 9testdata/language-features/basic-list/list12.lc 1:10-1:11 {a} -> a -> List a -> List a
10testdata/language-features/basic-list/list12.lc 1:11-1:12 b_ 10testdata/language-features/basic-list/list12.lc 1:11-1:12 b_
11testdata/language-features/basic-list/list12.lc 1:11-1:13 List b_ -> List c_ 11testdata/language-features/basic-list/list12.lc 1:11-1:13 List b_ -> List b_
12testdata/language-features/basic-list/list12.lc 1:11-1:21 List d_ 12testdata/language-features/basic-list/list12.lc 1:11-1:21 List d_
13testdata/language-features/basic-list/list12.lc 1:12-1:13 {a} -> a -> List a -> List a 13testdata/language-features/basic-list/list12.lc 1:12-1:13 {a} -> a -> List a -> List a
14testdata/language-features/basic-list/list12.lc 1:13-1:14 b_ 14testdata/language-features/basic-list/list12.lc 1:13-1:14 b_
15testdata/language-features/basic-list/list12.lc 1:13-1:15 List b_ -> List c_ 15testdata/language-features/basic-list/list12.lc 1:13-1:15 List b_ -> List b_
16testdata/language-features/basic-list/list12.lc 1:13-1:21 List e_ 16testdata/language-features/basic-list/list12.lc 1:13-1:21 List e_
17testdata/language-features/basic-list/list12.lc 1:14-1:15 {a} -> a -> List a -> List a 17testdata/language-features/basic-list/list12.lc 1:14-1:15 {a} -> a -> List a -> List a
18testdata/language-features/basic-list/list12.lc 1:15-1:16 b_ 18testdata/language-features/basic-list/list12.lc 1:15-1:16 b_
19testdata/language-features/basic-list/list12.lc 1:15-1:17 List b_ -> List c_ 19testdata/language-features/basic-list/list12.lc 1:15-1:17 List b_ -> List b_
20testdata/language-features/basic-list/list12.lc 1:15-1:21 List f_ 20testdata/language-features/basic-list/list12.lc 1:15-1:21 List f_
21testdata/language-features/basic-list/list12.lc 1:16-1:17 {a} -> a -> List a -> List a 21testdata/language-features/basic-list/list12.lc 1:16-1:17 {a} -> a -> List a -> List a
22testdata/language-features/basic-list/list12.lc 1:17-1:18 b_ 22testdata/language-features/basic-list/list12.lc 1:17-1:18 b_
23testdata/language-features/basic-list/list12.lc 1:17-1:19 List b_ -> List c_ 23testdata/language-features/basic-list/list12.lc 1:17-1:19 List b_ -> List b_
24testdata/language-features/basic-list/list12.lc 1:17-1:21 List f_ 24testdata/language-features/basic-list/list12.lc 1:17-1:21 List f_
25testdata/language-features/basic-list/list12.lc 1:18-1:19 {a} -> a -> List a -> List a 25testdata/language-features/basic-list/list12.lc 1:18-1:19 {a} -> a -> List a -> List a
26testdata/language-features/basic-list/list12.lc 1:19-1:21 {a} -> List a 26testdata/language-features/basic-list/list12.lc 1:19-1:21 {a} -> List a
diff --git a/testdata/language-features/basic-list/listcomp01.out b/testdata/language-features/basic-list/listcomp01.out
index 8b857f79..649a2f20 100644
--- a/testdata/language-features/basic-list/listcomp01.out
+++ b/testdata/language-features/basic-list/listcomp01.out
@@ -4,7 +4,7 @@ value :: 'List ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List () 6testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List ()
7testdata/language-features/basic-list/listcomp01.lc 1:10-1:12 () | List () | b_ -> List b_ 7testdata/language-features/basic-list/listcomp01.lc 1:10-1:12 () | List () | b_ -> List a_
8testdata/language-features/basic-list/listcomp01.lc 1:20-1:33 List () 8testdata/language-features/basic-list/listcomp01.lc 1:20-1:33 List ()
9testdata/language-features/basic-list/listcomp01.lc 1:21-1:23 () 9testdata/language-features/basic-list/listcomp01.lc 1:21-1:23 ()
10testdata/language-features/basic-list/listcomp01.lc 1:24-1:26 () 10testdata/language-features/basic-list/listcomp01.lc 1:24-1:26 ()
diff --git a/testdata/language-features/basic-list/listcomp02.out b/testdata/language-features/basic-list/listcomp02.out
index 464eb751..691c04df 100644
--- a/testdata/language-features/basic-list/listcomp02.out
+++ b/testdata/language-features/basic-list/listcomp02.out
@@ -13,5 +13,5 @@ testdata/language-features/basic-list/listcomp02.lc 1:12-1:17 List ()
13testdata/language-features/basic-list/listcomp02.lc 1:15-1:17 () | List () 13testdata/language-features/basic-list/listcomp02.lc 1:15-1:17 () | List ()
14testdata/language-features/basic-list/listcomp02.lc 2:1-2:6 List () 14testdata/language-features/basic-list/listcomp02.lc 2:1-2:6 List ()
15testdata/language-features/basic-list/listcomp02.lc 2:9-2:21 List () 15testdata/language-features/basic-list/listcomp02.lc 2:9-2:21 List ()
16testdata/language-features/basic-list/listcomp02.lc 2:10-2:11 List b_ | b_ -> List b_ | d_ 16testdata/language-features/basic-list/listcomp02.lc 2:10-2:11 List b_ | b_ -> List a_ | d_
17testdata/language-features/basic-list/listcomp02.lc 2:19-2:20 List () 17testdata/language-features/basic-list/listcomp02.lc 2:19-2:20 List ()
diff --git a/testdata/language-features/basic-list/listcomp03.out b/testdata/language-features/basic-list/listcomp03.out
index 1873533b..d9d98c75 100644
--- a/testdata/language-features/basic-list/listcomp03.out
+++ b/testdata/language-features/basic-list/listcomp03.out
@@ -5,7 +5,7 @@ value :: 'List ()
5testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List () 6testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List ()
7testdata/language-features/basic-list/listcomp03.lc 1:10-1:12 () | List () 7testdata/language-features/basic-list/listcomp03.lc 1:10-1:12 () | List ()
8testdata/language-features/basic-list/listcomp03.lc 1:10-1:40 List () | List () -> List () | b_ -> List b_ 8testdata/language-features/basic-list/listcomp03.lc 1:10-1:40 List () | List () -> List () | b_ -> List a_
9testdata/language-features/basic-list/listcomp03.lc 1:20-1:33 List () 9testdata/language-features/basic-list/listcomp03.lc 1:20-1:33 List ()
10testdata/language-features/basic-list/listcomp03.lc 1:21-1:23 () 10testdata/language-features/basic-list/listcomp03.lc 1:21-1:23 ()
11testdata/language-features/basic-list/listcomp03.lc 1:24-1:26 () 11testdata/language-features/basic-list/listcomp03.lc 1:24-1:26 ()
diff --git a/testdata/language-features/basic-list/listcomp04.out b/testdata/language-features/basic-list/listcomp04.out
index 7fe1306f..627ab11f 100644
--- a/testdata/language-features/basic-list/listcomp04.out
+++ b/testdata/language-features/basic-list/listcomp04.out
@@ -13,7 +13,7 @@ testdata/language-features/basic-list/listcomp04.lc 1:12-1:17 List ()
13testdata/language-features/basic-list/listcomp04.lc 1:15-1:17 () | List () 13testdata/language-features/basic-list/listcomp04.lc 1:15-1:17 () | List ()
14testdata/language-features/basic-list/listcomp04.lc 2:1-2:6 List () 14testdata/language-features/basic-list/listcomp04.lc 2:1-2:6 List ()
15testdata/language-features/basic-list/listcomp04.lc 2:9-2:30 List () 15testdata/language-features/basic-list/listcomp04.lc 2:9-2:30 List ()
16testdata/language-features/basic-list/listcomp04.lc 2:10-2:12 () | List () | b_ -> List b_ 16testdata/language-features/basic-list/listcomp04.lc 2:10-2:12 () | List () | b_ -> List a_
17testdata/language-features/basic-list/listcomp04.lc 2:10-2:29 List () | b_ -> List b_ 17testdata/language-features/basic-list/listcomp04.lc 2:10-2:29 List () | b_ -> List a_
18testdata/language-features/basic-list/listcomp04.lc 2:20-2:21 List () 18testdata/language-features/basic-list/listcomp04.lc 2:20-2:21 List ()
19testdata/language-features/basic-list/listcomp04.lc 2:28-2:29 List () 19testdata/language-features/basic-list/listcomp04.lc 2:28-2:29 List ()
diff --git a/testdata/language-features/basic-list/listcomp05.out b/testdata/language-features/basic-list/listcomp05.out
index ff871c08..7602c5ef 100644
--- a/testdata/language-features/basic-list/listcomp05.out
+++ b/testdata/language-features/basic-list/listcomp05.out
@@ -5,7 +5,7 @@ value :: 'List ()
5testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List () 6testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List ()
7testdata/language-features/basic-list/listcomp05.lc 1:10-1:11 () 7testdata/language-features/basic-list/listcomp05.lc 1:10-1:11 ()
8testdata/language-features/basic-list/listcomp05.lc 1:10-1:38 b_ -> List b_ 8testdata/language-features/basic-list/listcomp05.lc 1:10-1:38 b_ -> List a_
9testdata/language-features/basic-list/listcomp05.lc 1:19-1:26 List () 9testdata/language-features/basic-list/listcomp05.lc 1:19-1:26 List ()
10testdata/language-features/basic-list/listcomp05.lc 1:20-1:22 () 10testdata/language-features/basic-list/listcomp05.lc 1:20-1:22 ()
11testdata/language-features/basic-list/listcomp05.lc 1:23-1:25 () | List () 11testdata/language-features/basic-list/listcomp05.lc 1:23-1:25 () | List ()
diff --git a/testdata/language-features/basic-list/listcomp06.out b/testdata/language-features/basic-list/listcomp06.out
index 65679284..231185e2 100644
--- a/testdata/language-features/basic-list/listcomp06.out
+++ b/testdata/language-features/basic-list/listcomp06.out
@@ -6,7 +6,7 @@ value2 :: 'List ()
6testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List () 6testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List ()
7testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List () 7testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List ()
8testdata/language-features/basic-list/listcomp06.lc 1:11-1:12 () | List () 8testdata/language-features/basic-list/listcomp06.lc 1:11-1:12 () | List ()
9testdata/language-features/basic-list/listcomp06.lc 1:11-1:45 List () -> List () | b_ -> List b_ 9testdata/language-features/basic-list/listcomp06.lc 1:11-1:45 List () -> List () | b_ -> List a_
10testdata/language-features/basic-list/listcomp06.lc 1:20-1:27 List () 10testdata/language-features/basic-list/listcomp06.lc 1:20-1:27 List ()
11testdata/language-features/basic-list/listcomp06.lc 1:21-1:23 () 11testdata/language-features/basic-list/listcomp06.lc 1:21-1:23 ()
12testdata/language-features/basic-list/listcomp06.lc 1:24-1:26 () | List () 12testdata/language-features/basic-list/listcomp06.lc 1:24-1:26 () | List ()
@@ -16,7 +16,7 @@ testdata/language-features/basic-list/listcomp06.lc 1:41-1:45 Bool
16testdata/language-features/basic-list/listcomp06.lc 3:1-3:7 List () 16testdata/language-features/basic-list/listcomp06.lc 3:1-3:7 List ()
17testdata/language-features/basic-list/listcomp06.lc 3:10-3:46 List () 17testdata/language-features/basic-list/listcomp06.lc 3:10-3:46 List ()
18testdata/language-features/basic-list/listcomp06.lc 3:11-3:12 () 18testdata/language-features/basic-list/listcomp06.lc 3:11-3:12 ()
19testdata/language-features/basic-list/listcomp06.lc 3:11-3:45 List () | b_ -> List b_ 19testdata/language-features/basic-list/listcomp06.lc 3:11-3:45 List () | b_ -> List a_
20testdata/language-features/basic-list/listcomp06.lc 3:20-3:27 List () 20testdata/language-features/basic-list/listcomp06.lc 3:20-3:27 List ()
21testdata/language-features/basic-list/listcomp06.lc 3:21-3:23 () 21testdata/language-features/basic-list/listcomp06.lc 3:21-3:23 ()
22testdata/language-features/basic-list/listcomp06.lc 3:24-3:26 () | List () 22testdata/language-features/basic-list/listcomp06.lc 3:24-3:26 () | List ()
diff --git a/testdata/language-features/basic-list/listcomp07.out b/testdata/language-features/basic-list/listcomp07.out
index 6238e239..a3f66edc 100644
--- a/testdata/language-features/basic-list/listcomp07.out
+++ b/testdata/language-features/basic-list/listcomp07.out
@@ -7,7 +7,7 @@ value3 :: 'List ()
7testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List () 7testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List ()
8testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List () 8testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List ()
9testdata/language-features/basic-list/listcomp07.lc 1:12-1:13 () 9testdata/language-features/basic-list/listcomp07.lc 1:12-1:13 ()
10testdata/language-features/basic-list/listcomp07.lc 1:12-5:21 b_ -> List b_ 10testdata/language-features/basic-list/listcomp07.lc 1:12-5:21 b_ -> List a_
11testdata/language-features/basic-list/listcomp07.lc 2:17-2:24 List () 11testdata/language-features/basic-list/listcomp07.lc 2:17-2:24 List ()
12testdata/language-features/basic-list/listcomp07.lc 2:18-2:20 () 12testdata/language-features/basic-list/listcomp07.lc 2:18-2:20 ()
13testdata/language-features/basic-list/listcomp07.lc 2:21-2:23 () | List () 13testdata/language-features/basic-list/listcomp07.lc 2:21-2:23 () | List ()
@@ -19,7 +19,7 @@ testdata/language-features/basic-list/listcomp07.lc 5:20-5:21 ()
19testdata/language-features/basic-list/listcomp07.lc 8:1-8:7 List () 19testdata/language-features/basic-list/listcomp07.lc 8:1-8:7 List ()
20testdata/language-features/basic-list/listcomp07.lc 8:10-12:11 List () 20testdata/language-features/basic-list/listcomp07.lc 8:10-12:11 List ()
21testdata/language-features/basic-list/listcomp07.lc 8:12-8:13 () 21testdata/language-features/basic-list/listcomp07.lc 8:12-8:13 ()
22testdata/language-features/basic-list/listcomp07.lc 8:12-11:21 b_ -> List b_ 22testdata/language-features/basic-list/listcomp07.lc 8:12-11:21 b_ -> List a_
23testdata/language-features/basic-list/listcomp07.lc 8:21-8:28 List () 23testdata/language-features/basic-list/listcomp07.lc 8:21-8:28 List ()
24testdata/language-features/basic-list/listcomp07.lc 8:22-8:24 () 24testdata/language-features/basic-list/listcomp07.lc 8:22-8:24 ()
25testdata/language-features/basic-list/listcomp07.lc 8:25-8:27 () | List () 25testdata/language-features/basic-list/listcomp07.lc 8:25-8:27 () | List ()
@@ -31,7 +31,7 @@ testdata/language-features/basic-list/listcomp07.lc 11:20-11:21 ()
31testdata/language-features/basic-list/listcomp07.lc 14:1-14:7 List () 31testdata/language-features/basic-list/listcomp07.lc 14:1-14:7 List ()
32testdata/language-features/basic-list/listcomp07.lc 14:10-20:3 List () 32testdata/language-features/basic-list/listcomp07.lc 14:10-20:3 List ()
33testdata/language-features/basic-list/listcomp07.lc 14:12-14:13 () 33testdata/language-features/basic-list/listcomp07.lc 14:12-14:13 ()
34testdata/language-features/basic-list/listcomp07.lc 14:12-19:15 b_ -> List b_ 34testdata/language-features/basic-list/listcomp07.lc 14:12-19:15 b_ -> List a_
35testdata/language-features/basic-list/listcomp07.lc 15:15-15:22 List () 35testdata/language-features/basic-list/listcomp07.lc 15:15-15:22 List ()
36testdata/language-features/basic-list/listcomp07.lc 15:16-15:18 () 36testdata/language-features/basic-list/listcomp07.lc 15:16-15:18 ()
37testdata/language-features/basic-list/listcomp07.lc 15:19-15:21 () | List () 37testdata/language-features/basic-list/listcomp07.lc 15:19-15:21 () | List ()
diff --git a/testdata/language-features/basic-list/listcomp08.reject.out b/testdata/language-features/basic-list/listcomp08.reject.out
index 8bf99ab5..10384134 100644
--- a/testdata/language-features/basic-list/listcomp08.reject.out
+++ b/testdata/language-features/basic-list/listcomp08.reject.out
@@ -18,5 +18,5 @@ value = [x | x <- [], "not Bool"]
18 ^^^^^^^^^^ 18 ^^^^^^^^^^
19 19
20------------ tooltips 20------------ tooltips
21testdata/language-features/basic-list/listcomp08.reject.lc 1:10-1:33 b_ -> List b_ 21testdata/language-features/basic-list/listcomp08.reject.lc 1:10-1:33 b_ -> List a_
22testdata/language-features/basic-list/listcomp08.reject.lc 1:23-1:33 String 22testdata/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 55d987eb..d720baaf 100644
--- a/testdata/language-features/basic-list/listcomp09.out
+++ b/testdata/language-features/basic-list/listcomp09.out
@@ -4,6 +4,6 @@ value1 :: {_} -> 'List (()->'String)
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {_} -> List (()->String) 5testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {_} -> List (()->String)
6testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List (()->String) 6testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List (()->String)
7testdata/language-features/basic-list/listcomp09.lc 1:11-1:25 List (()->String) | b_ -> List b_ 7testdata/language-features/basic-list/listcomp09.lc 1:11-1:25 List (()->String) | b_ -> List a_
8testdata/language-features/basic-list/listcomp09.lc 1:18-1:25 String 8testdata/language-features/basic-list/listcomp09.lc 1:18-1:25 String
9testdata/language-features/basic-list/listcomp09.lc 1:33-1:35 {a} -> List a 9testdata/language-features/basic-list/listcomp09.lc 1:33-1:35 {a} -> List a
diff --git a/testdata/language-features/basic-values/fixity02.out b/testdata/language-features/basic-values/fixity02.out
index 6683f3d9..bed65026 100644
--- a/testdata/language-features/basic-values/fixity02.out
+++ b/testdata/language-features/basic-values/fixity02.out
@@ -31,28 +31,28 @@ testdata/language-features/basic-values/fixity02.lc 5:3-5:5 {a} -> {b} -> a ->
31testdata/language-features/basic-values/fixity02.lc 5:10-5:11 b_ 31testdata/language-features/basic-values/fixity02.lc 5:10-5:11 b_
32testdata/language-features/basic-values/fixity02.lc 11:1-11:7 Float 32testdata/language-features/basic-values/fixity02.lc 11:1-11:7 Float
33testdata/language-features/basic-values/fixity02.lc 11:10-11:12 () 33testdata/language-features/basic-values/fixity02.lc 11:10-11:12 ()
34testdata/language-features/basic-values/fixity02.lc 11:10-11:15 a_->b_ 34testdata/language-features/basic-values/fixity02.lc 11:10-11:15 a_->a_
35testdata/language-features/basic-values/fixity02.lc 11:10-11:34 Float 35testdata/language-features/basic-values/fixity02.lc 11:10-11:34 Float
36testdata/language-features/basic-values/fixity02.lc 11:13-11:15 {a} -> {b} -> a -> b->b 36testdata/language-features/basic-values/fixity02.lc 11:13-11:15 {a} -> {b} -> a -> b->b
37testdata/language-features/basic-values/fixity02.lc 11:16-11:19 Char 37testdata/language-features/basic-values/fixity02.lc 11:16-11:19 Char
38testdata/language-features/basic-values/fixity02.lc 11:16-11:22 a_->b_ 38testdata/language-features/basic-values/fixity02.lc 11:16-11:22 a_->a_
39testdata/language-features/basic-values/fixity02.lc 11:16-11:34 Float 39testdata/language-features/basic-values/fixity02.lc 11:16-11:34 Float
40testdata/language-features/basic-values/fixity02.lc 11:20-11:22 {a} -> {b} -> a -> b->b 40testdata/language-features/basic-values/fixity02.lc 11:20-11:22 {a} -> {b} -> a -> b->b
41testdata/language-features/basic-values/fixity02.lc 11:23-11:27 String 41testdata/language-features/basic-values/fixity02.lc 11:23-11:27 String
42testdata/language-features/basic-values/fixity02.lc 11:23-11:30 a_->b_ 42testdata/language-features/basic-values/fixity02.lc 11:23-11:30 a_->a_
43testdata/language-features/basic-values/fixity02.lc 11:23-11:34 Float 43testdata/language-features/basic-values/fixity02.lc 11:23-11:34 Float
44testdata/language-features/basic-values/fixity02.lc 11:28-11:30 {a} -> {b} -> a -> b->b 44testdata/language-features/basic-values/fixity02.lc 11:28-11:30 {a} -> {b} -> a -> b->b
45testdata/language-features/basic-values/fixity02.lc 11:31-11:34 Float 45testdata/language-features/basic-values/fixity02.lc 11:31-11:34 Float
46testdata/language-features/basic-values/fixity02.lc 11:38-11:43 Type 46testdata/language-features/basic-values/fixity02.lc 11:38-11:43 Type
47testdata/language-features/basic-values/fixity02.lc 12:1-12:7 Float 47testdata/language-features/basic-values/fixity02.lc 12:1-12:7 Float
48testdata/language-features/basic-values/fixity02.lc 12:10-12:12 () 48testdata/language-features/basic-values/fixity02.lc 12:10-12:12 ()
49testdata/language-features/basic-values/fixity02.lc 12:10-12:15 a_->b_ 49testdata/language-features/basic-values/fixity02.lc 12:10-12:15 a_->a_
50testdata/language-features/basic-values/fixity02.lc 12:10-12:34 Float 50testdata/language-features/basic-values/fixity02.lc 12:10-12:34 Float
51testdata/language-features/basic-values/fixity02.lc 12:13-12:15 {a} -> {b} -> a -> b->b 51testdata/language-features/basic-values/fixity02.lc 12:13-12:15 {a} -> {b} -> a -> b->b
52testdata/language-features/basic-values/fixity02.lc 12:16-12:19 Char 52testdata/language-features/basic-values/fixity02.lc 12:16-12:19 Char
53testdata/language-features/basic-values/fixity02.lc 12:16-12:22 a_->Char 53testdata/language-features/basic-values/fixity02.lc 12:16-12:22 a_->Char
54testdata/language-features/basic-values/fixity02.lc 12:16-12:27 Char 54testdata/language-features/basic-values/fixity02.lc 12:16-12:27 Char
55testdata/language-features/basic-values/fixity02.lc 12:16-12:30 a_->b_ 55testdata/language-features/basic-values/fixity02.lc 12:16-12:30 a_->a_
56testdata/language-features/basic-values/fixity02.lc 12:16-12:34 Float 56testdata/language-features/basic-values/fixity02.lc 12:16-12:34 Float
57testdata/language-features/basic-values/fixity02.lc 12:20-12:22 {a} -> {b} -> a -> b->a 57testdata/language-features/basic-values/fixity02.lc 12:20-12:22 {a} -> {b} -> a -> b->a
58testdata/language-features/basic-values/fixity02.lc 12:23-12:27 String 58testdata/language-features/basic-values/fixity02.lc 12:23-12:27 String
@@ -63,13 +63,13 @@ testdata/language-features/basic-values/fixity02.lc 13:1-13:7 Float
63testdata/language-features/basic-values/fixity02.lc 13:10-13:12 () 63testdata/language-features/basic-values/fixity02.lc 13:10-13:12 ()
64testdata/language-features/basic-values/fixity02.lc 13:10-13:15 a_->() 64testdata/language-features/basic-values/fixity02.lc 13:10-13:15 a_->()
65testdata/language-features/basic-values/fixity02.lc 13:10-13:19 () 65testdata/language-features/basic-values/fixity02.lc 13:10-13:19 ()
66testdata/language-features/basic-values/fixity02.lc 13:10-13:22 a_->b_ 66testdata/language-features/basic-values/fixity02.lc 13:10-13:22 a_->a_
67testdata/language-features/basic-values/fixity02.lc 13:10-13:34 Float 67testdata/language-features/basic-values/fixity02.lc 13:10-13:34 Float
68testdata/language-features/basic-values/fixity02.lc 13:13-13:15 {a} -> {b} -> a -> b->a 68testdata/language-features/basic-values/fixity02.lc 13:13-13:15 {a} -> {b} -> a -> b->a
69testdata/language-features/basic-values/fixity02.lc 13:16-13:19 Char 69testdata/language-features/basic-values/fixity02.lc 13:16-13:19 Char
70testdata/language-features/basic-values/fixity02.lc 13:20-13:22 {a} -> {b} -> a -> b->b 70testdata/language-features/basic-values/fixity02.lc 13:20-13:22 {a} -> {b} -> a -> b->b
71testdata/language-features/basic-values/fixity02.lc 13:23-13:27 String 71testdata/language-features/basic-values/fixity02.lc 13:23-13:27 String
72testdata/language-features/basic-values/fixity02.lc 13:23-13:30 a_->b_ 72testdata/language-features/basic-values/fixity02.lc 13:23-13:30 a_->a_
73testdata/language-features/basic-values/fixity02.lc 13:23-13:34 Float 73testdata/language-features/basic-values/fixity02.lc 13:23-13:34 Float
74testdata/language-features/basic-values/fixity02.lc 13:28-13:30 {a} -> {b} -> a -> b->b 74testdata/language-features/basic-values/fixity02.lc 13:28-13:30 {a} -> {b} -> a -> b->b
75testdata/language-features/basic-values/fixity02.lc 13:31-13:34 Float 75testdata/language-features/basic-values/fixity02.lc 13:31-13:34 Float
@@ -78,7 +78,7 @@ testdata/language-features/basic-values/fixity02.lc 14:1-14:7 Float
78testdata/language-features/basic-values/fixity02.lc 14:10-14:12 () 78testdata/language-features/basic-values/fixity02.lc 14:10-14:12 ()
79testdata/language-features/basic-values/fixity02.lc 14:10-14:15 a_->() 79testdata/language-features/basic-values/fixity02.lc 14:10-14:15 a_->()
80testdata/language-features/basic-values/fixity02.lc 14:10-14:27 () 80testdata/language-features/basic-values/fixity02.lc 14:10-14:27 ()
81testdata/language-features/basic-values/fixity02.lc 14:10-14:30 a_->b_ 81testdata/language-features/basic-values/fixity02.lc 14:10-14:30 a_->a_
82testdata/language-features/basic-values/fixity02.lc 14:10-14:34 Float 82testdata/language-features/basic-values/fixity02.lc 14:10-14:34 Float
83testdata/language-features/basic-values/fixity02.lc 14:13-14:15 {a} -> {b} -> a -> b->a 83testdata/language-features/basic-values/fixity02.lc 14:13-14:15 {a} -> {b} -> a -> b->a
84testdata/language-features/basic-values/fixity02.lc 14:16-14:19 Char 84testdata/language-features/basic-values/fixity02.lc 14:16-14:19 Char
@@ -91,11 +91,11 @@ testdata/language-features/basic-values/fixity02.lc 14:31-14:34 Float
91testdata/language-features/basic-values/fixity02.lc 14:38-14:43 Type 91testdata/language-features/basic-values/fixity02.lc 14:38-14:43 Type
92testdata/language-features/basic-values/fixity02.lc 15:1-15:7 String 92testdata/language-features/basic-values/fixity02.lc 15:1-15:7 String
93testdata/language-features/basic-values/fixity02.lc 15:10-15:12 () 93testdata/language-features/basic-values/fixity02.lc 15:10-15:12 ()
94testdata/language-features/basic-values/fixity02.lc 15:10-15:15 a_->b_ 94testdata/language-features/basic-values/fixity02.lc 15:10-15:15 a_->a_
95testdata/language-features/basic-values/fixity02.lc 15:10-15:34 String 95testdata/language-features/basic-values/fixity02.lc 15:10-15:34 String
96testdata/language-features/basic-values/fixity02.lc 15:13-15:15 {a} -> {b} -> a -> b->b 96testdata/language-features/basic-values/fixity02.lc 15:13-15:15 {a} -> {b} -> a -> b->b
97testdata/language-features/basic-values/fixity02.lc 15:16-15:19 Char 97testdata/language-features/basic-values/fixity02.lc 15:16-15:19 Char
98testdata/language-features/basic-values/fixity02.lc 15:16-15:22 a_->b_ 98testdata/language-features/basic-values/fixity02.lc 15:16-15:22 a_->a_
99testdata/language-features/basic-values/fixity02.lc 15:16-15:34 String 99testdata/language-features/basic-values/fixity02.lc 15:16-15:34 String
100testdata/language-features/basic-values/fixity02.lc 15:20-15:22 {a} -> {b} -> a -> b->b 100testdata/language-features/basic-values/fixity02.lc 15:20-15:22 {a} -> {b} -> a -> b->b
101testdata/language-features/basic-values/fixity02.lc 15:23-15:27 String 101testdata/language-features/basic-values/fixity02.lc 15:23-15:27 String
@@ -106,7 +106,7 @@ testdata/language-features/basic-values/fixity02.lc 15:31-15:34 Float
106testdata/language-features/basic-values/fixity02.lc 15:38-15:44 Type 106testdata/language-features/basic-values/fixity02.lc 15:38-15:44 Type
107testdata/language-features/basic-values/fixity02.lc 16:1-16:7 Char 107testdata/language-features/basic-values/fixity02.lc 16:1-16:7 Char
108testdata/language-features/basic-values/fixity02.lc 16:10-16:12 () 108testdata/language-features/basic-values/fixity02.lc 16:10-16:12 ()
109testdata/language-features/basic-values/fixity02.lc 16:10-16:15 a_->b_ 109testdata/language-features/basic-values/fixity02.lc 16:10-16:15 a_->a_
110testdata/language-features/basic-values/fixity02.lc 16:10-16:34 Char 110testdata/language-features/basic-values/fixity02.lc 16:10-16:34 Char
111testdata/language-features/basic-values/fixity02.lc 16:13-16:15 {a} -> {b} -> a -> b->b 111testdata/language-features/basic-values/fixity02.lc 16:13-16:15 {a} -> {b} -> a -> b->b
112testdata/language-features/basic-values/fixity02.lc 16:16-16:19 Char 112testdata/language-features/basic-values/fixity02.lc 16:16-16:19 Char
@@ -123,7 +123,7 @@ testdata/language-features/basic-values/fixity02.lc 17:1-17:7 String
123testdata/language-features/basic-values/fixity02.lc 17:10-17:12 () 123testdata/language-features/basic-values/fixity02.lc 17:10-17:12 ()
124testdata/language-features/basic-values/fixity02.lc 17:10-17:15 a_->() 124testdata/language-features/basic-values/fixity02.lc 17:10-17:15 a_->()
125testdata/language-features/basic-values/fixity02.lc 17:10-17:19 () 125testdata/language-features/basic-values/fixity02.lc 17:10-17:19 ()
126testdata/language-features/basic-values/fixity02.lc 17:10-17:22 a_->b_ 126testdata/language-features/basic-values/fixity02.lc 17:10-17:22 a_->a_
127testdata/language-features/basic-values/fixity02.lc 17:10-17:34 String 127testdata/language-features/basic-values/fixity02.lc 17:10-17:34 String
128testdata/language-features/basic-values/fixity02.lc 17:13-17:15 {a} -> {b} -> a -> b->a 128testdata/language-features/basic-values/fixity02.lc 17:13-17:15 {a} -> {b} -> a -> b->a
129testdata/language-features/basic-values/fixity02.lc 17:16-17:19 Char 129testdata/language-features/basic-values/fixity02.lc 17:16-17:19 Char
@@ -151,28 +151,28 @@ testdata/language-features/basic-values/fixity02.lc 18:31-18:34 Float
151testdata/language-features/basic-values/fixity02.lc 18:38-18:40 Type 151testdata/language-features/basic-values/fixity02.lc 18:38-18:40 Type
152testdata/language-features/basic-values/fixity02.lc 20:1-20:10 Float 152testdata/language-features/basic-values/fixity02.lc 20:1-20:10 Float
153testdata/language-features/basic-values/fixity02.lc 20:13-20:15 () 153testdata/language-features/basic-values/fixity02.lc 20:13-20:15 ()
154testdata/language-features/basic-values/fixity02.lc 20:13-20:22 a_->b_ 154testdata/language-features/basic-values/fixity02.lc 20:13-20:22 a_->a_
155testdata/language-features/basic-values/fixity02.lc 20:13-20:49 Float 155testdata/language-features/basic-values/fixity02.lc 20:13-20:49 Float
156testdata/language-features/basic-values/fixity02.lc 20:16-20:22 {a} -> {b} -> a -> b->b 156testdata/language-features/basic-values/fixity02.lc 20:16-20:22 {a} -> {b} -> a -> b->b
157testdata/language-features/basic-values/fixity02.lc 20:23-20:26 Char 157testdata/language-features/basic-values/fixity02.lc 20:23-20:26 Char
158testdata/language-features/basic-values/fixity02.lc 20:23-20:33 a_->b_ 158testdata/language-features/basic-values/fixity02.lc 20:23-20:33 a_->a_
159testdata/language-features/basic-values/fixity02.lc 20:23-20:49 Float 159testdata/language-features/basic-values/fixity02.lc 20:23-20:49 Float
160testdata/language-features/basic-values/fixity02.lc 20:27-20:33 {a} -> {b} -> a -> b->b 160testdata/language-features/basic-values/fixity02.lc 20:27-20:33 {a} -> {b} -> a -> b->b
161testdata/language-features/basic-values/fixity02.lc 20:34-20:38 String 161testdata/language-features/basic-values/fixity02.lc 20:34-20:38 String
162testdata/language-features/basic-values/fixity02.lc 20:34-20:45 a_->b_ 162testdata/language-features/basic-values/fixity02.lc 20:34-20:45 a_->a_
163testdata/language-features/basic-values/fixity02.lc 20:34-20:49 Float 163testdata/language-features/basic-values/fixity02.lc 20:34-20:49 Float
164testdata/language-features/basic-values/fixity02.lc 20:39-20:45 {a} -> {b} -> a -> b->b 164testdata/language-features/basic-values/fixity02.lc 20:39-20:45 {a} -> {b} -> a -> b->b
165testdata/language-features/basic-values/fixity02.lc 20:46-20:49 Float 165testdata/language-features/basic-values/fixity02.lc 20:46-20:49 Float
166testdata/language-features/basic-values/fixity02.lc 20:53-20:58 Type 166testdata/language-features/basic-values/fixity02.lc 20:53-20:58 Type
167testdata/language-features/basic-values/fixity02.lc 21:1-21:10 Float 167testdata/language-features/basic-values/fixity02.lc 21:1-21:10 Float
168testdata/language-features/basic-values/fixity02.lc 21:13-21:15 () 168testdata/language-features/basic-values/fixity02.lc 21:13-21:15 ()
169testdata/language-features/basic-values/fixity02.lc 21:13-21:22 a_->b_ 169testdata/language-features/basic-values/fixity02.lc 21:13-21:22 a_->a_
170testdata/language-features/basic-values/fixity02.lc 21:13-21:49 Float 170testdata/language-features/basic-values/fixity02.lc 21:13-21:49 Float
171testdata/language-features/basic-values/fixity02.lc 21:16-21:22 {a} -> {b} -> a -> b->b 171testdata/language-features/basic-values/fixity02.lc 21:16-21:22 {a} -> {b} -> a -> b->b
172testdata/language-features/basic-values/fixity02.lc 21:23-21:26 Char 172testdata/language-features/basic-values/fixity02.lc 21:23-21:26 Char
173testdata/language-features/basic-values/fixity02.lc 21:23-21:33 a_->Char 173testdata/language-features/basic-values/fixity02.lc 21:23-21:33 a_->Char
174testdata/language-features/basic-values/fixity02.lc 21:23-21:38 Char 174testdata/language-features/basic-values/fixity02.lc 21:23-21:38 Char
175testdata/language-features/basic-values/fixity02.lc 21:23-21:45 a_->b_ 175testdata/language-features/basic-values/fixity02.lc 21:23-21:45 a_->a_
176testdata/language-features/basic-values/fixity02.lc 21:23-21:49 Float 176testdata/language-features/basic-values/fixity02.lc 21:23-21:49 Float
177testdata/language-features/basic-values/fixity02.lc 21:27-21:33 {a} -> {b} -> a -> b->a 177testdata/language-features/basic-values/fixity02.lc 21:27-21:33 {a} -> {b} -> a -> b->a
178testdata/language-features/basic-values/fixity02.lc 21:34-21:38 String 178testdata/language-features/basic-values/fixity02.lc 21:34-21:38 String
@@ -183,13 +183,13 @@ testdata/language-features/basic-values/fixity02.lc 22:1-22:10 Float
183testdata/language-features/basic-values/fixity02.lc 22:13-22:15 () 183testdata/language-features/basic-values/fixity02.lc 22:13-22:15 ()
184testdata/language-features/basic-values/fixity02.lc 22:13-22:22 a_->() 184testdata/language-features/basic-values/fixity02.lc 22:13-22:22 a_->()
185testdata/language-features/basic-values/fixity02.lc 22:13-22:26 () 185testdata/language-features/basic-values/fixity02.lc 22:13-22:26 ()
186testdata/language-features/basic-values/fixity02.lc 22:13-22:33 a_->b_ 186testdata/language-features/basic-values/fixity02.lc 22:13-22:33 a_->a_
187testdata/language-features/basic-values/fixity02.lc 22:13-22:49 Float 187testdata/language-features/basic-values/fixity02.lc 22:13-22:49 Float
188testdata/language-features/basic-values/fixity02.lc 22:16-22:22 {a} -> {b} -> a -> b->a 188testdata/language-features/basic-values/fixity02.lc 22:16-22:22 {a} -> {b} -> a -> b->a
189testdata/language-features/basic-values/fixity02.lc 22:23-22:26 Char 189testdata/language-features/basic-values/fixity02.lc 22:23-22:26 Char
190testdata/language-features/basic-values/fixity02.lc 22:27-22:33 {a} -> {b} -> a -> b->b 190testdata/language-features/basic-values/fixity02.lc 22:27-22:33 {a} -> {b} -> a -> b->b
191testdata/language-features/basic-values/fixity02.lc 22:34-22:38 String 191testdata/language-features/basic-values/fixity02.lc 22:34-22:38 String
192testdata/language-features/basic-values/fixity02.lc 22:34-22:45 a_->b_ 192testdata/language-features/basic-values/fixity02.lc 22:34-22:45 a_->a_
193testdata/language-features/basic-values/fixity02.lc 22:34-22:49 Float 193testdata/language-features/basic-values/fixity02.lc 22:34-22:49 Float
194testdata/language-features/basic-values/fixity02.lc 22:39-22:45 {a} -> {b} -> a -> b->b 194testdata/language-features/basic-values/fixity02.lc 22:39-22:45 {a} -> {b} -> a -> b->b
195testdata/language-features/basic-values/fixity02.lc 22:46-22:49 Float 195testdata/language-features/basic-values/fixity02.lc 22:46-22:49 Float
@@ -198,7 +198,7 @@ testdata/language-features/basic-values/fixity02.lc 23:1-23:10 Float
198testdata/language-features/basic-values/fixity02.lc 23:13-23:15 () 198testdata/language-features/basic-values/fixity02.lc 23:13-23:15 ()
199testdata/language-features/basic-values/fixity02.lc 23:13-23:22 a_->() 199testdata/language-features/basic-values/fixity02.lc 23:13-23:22 a_->()
200testdata/language-features/basic-values/fixity02.lc 23:13-23:38 () 200testdata/language-features/basic-values/fixity02.lc 23:13-23:38 ()
201testdata/language-features/basic-values/fixity02.lc 23:13-23:45 a_->b_ 201testdata/language-features/basic-values/fixity02.lc 23:13-23:45 a_->a_
202testdata/language-features/basic-values/fixity02.lc 23:13-23:49 Float 202testdata/language-features/basic-values/fixity02.lc 23:13-23:49 Float
203testdata/language-features/basic-values/fixity02.lc 23:16-23:22 {a} -> {b} -> a -> b->a 203testdata/language-features/basic-values/fixity02.lc 23:16-23:22 {a} -> {b} -> a -> b->a
204testdata/language-features/basic-values/fixity02.lc 23:23-23:26 Char 204testdata/language-features/basic-values/fixity02.lc 23:23-23:26 Char
@@ -211,11 +211,11 @@ testdata/language-features/basic-values/fixity02.lc 23:46-23:49 Float
211testdata/language-features/basic-values/fixity02.lc 23:53-23:58 Type 211testdata/language-features/basic-values/fixity02.lc 23:53-23:58 Type
212testdata/language-features/basic-values/fixity02.lc 24:1-24:10 String 212testdata/language-features/basic-values/fixity02.lc 24:1-24:10 String
213testdata/language-features/basic-values/fixity02.lc 24:13-24:15 () 213testdata/language-features/basic-values/fixity02.lc 24:13-24:15 ()
214testdata/language-features/basic-values/fixity02.lc 24:13-24:22 a_->b_ 214testdata/language-features/basic-values/fixity02.lc 24:13-24:22 a_->a_
215testdata/language-features/basic-values/fixity02.lc 24:13-24:49 String 215testdata/language-features/basic-values/fixity02.lc 24:13-24:49 String
216testdata/language-features/basic-values/fixity02.lc 24:16-24:22 {a} -> {b} -> a -> b->b 216testdata/language-features/basic-values/fixity02.lc 24:16-24:22 {a} -> {b} -> a -> b->b
217testdata/language-features/basic-values/fixity02.lc 24:23-24:26 Char 217testdata/language-features/basic-values/fixity02.lc 24:23-24:26 Char
218testdata/language-features/basic-values/fixity02.lc 24:23-24:33 a_->b_ 218testdata/language-features/basic-values/fixity02.lc 24:23-24:33 a_->a_
219testdata/language-features/basic-values/fixity02.lc 24:23-24:49 String 219testdata/language-features/basic-values/fixity02.lc 24:23-24:49 String
220testdata/language-features/basic-values/fixity02.lc 24:27-24:33 {a} -> {b} -> a -> b->b 220testdata/language-features/basic-values/fixity02.lc 24:27-24:33 {a} -> {b} -> a -> b->b
221testdata/language-features/basic-values/fixity02.lc 24:34-24:38 String 221testdata/language-features/basic-values/fixity02.lc 24:34-24:38 String
@@ -226,7 +226,7 @@ testdata/language-features/basic-values/fixity02.lc 24:46-24:49 Float
226testdata/language-features/basic-values/fixity02.lc 24:53-24:59 Type 226testdata/language-features/basic-values/fixity02.lc 24:53-24:59 Type
227testdata/language-features/basic-values/fixity02.lc 25:1-25:10 Char 227testdata/language-features/basic-values/fixity02.lc 25:1-25:10 Char
228testdata/language-features/basic-values/fixity02.lc 25:13-25:15 () 228testdata/language-features/basic-values/fixity02.lc 25:13-25:15 ()
229testdata/language-features/basic-values/fixity02.lc 25:13-25:22 a_->b_ 229testdata/language-features/basic-values/fixity02.lc 25:13-25:22 a_->a_
230testdata/language-features/basic-values/fixity02.lc 25:13-25:49 Char 230testdata/language-features/basic-values/fixity02.lc 25:13-25:49 Char
231testdata/language-features/basic-values/fixity02.lc 25:16-25:22 {a} -> {b} -> a -> b->b 231testdata/language-features/basic-values/fixity02.lc 25:16-25:22 {a} -> {b} -> a -> b->b
232testdata/language-features/basic-values/fixity02.lc 25:23-25:26 Char 232testdata/language-features/basic-values/fixity02.lc 25:23-25:26 Char
@@ -243,7 +243,7 @@ testdata/language-features/basic-values/fixity02.lc 26:1-26:10 String
243testdata/language-features/basic-values/fixity02.lc 26:13-26:15 () 243testdata/language-features/basic-values/fixity02.lc 26:13-26:15 ()
244testdata/language-features/basic-values/fixity02.lc 26:13-26:22 a_->() 244testdata/language-features/basic-values/fixity02.lc 26:13-26:22 a_->()
245testdata/language-features/basic-values/fixity02.lc 26:13-26:26 () 245testdata/language-features/basic-values/fixity02.lc 26:13-26:26 ()
246testdata/language-features/basic-values/fixity02.lc 26:13-26:33 a_->b_ 246testdata/language-features/basic-values/fixity02.lc 26:13-26:33 a_->a_
247testdata/language-features/basic-values/fixity02.lc 26:13-26:49 String 247testdata/language-features/basic-values/fixity02.lc 26:13-26:49 String
248testdata/language-features/basic-values/fixity02.lc 26:16-26:22 {a} -> {b} -> a -> b->a 248testdata/language-features/basic-values/fixity02.lc 26:16-26:22 {a} -> {b} -> a -> b->a
249testdata/language-features/basic-values/fixity02.lc 26:23-26:26 Char 249testdata/language-features/basic-values/fixity02.lc 26:23-26:26 Char
diff --git a/testdata/language-features/basic-values/infix02.out b/testdata/language-features/basic-values/infix02.out
index 16d50a6f..c5c2b99c 100644
--- a/testdata/language-features/basic-values/infix02.out
+++ b/testdata/language-features/basic-values/infix02.out
@@ -7,7 +7,7 @@ testdata/language-features/basic-values/infix02.lc 1:1-1:4 {a} -> {b} -> {c} ->
7testdata/language-features/basic-values/infix02.lc 1:13-1:15 () 7testdata/language-features/basic-values/infix02.lc 1:13-1:15 ()
8testdata/language-features/basic-values/infix02.lc 3:1-3:6 {a} -> {b} -> {c} -> a -> b -> c->() 8testdata/language-features/basic-values/infix02.lc 3:1-3:6 {a} -> {b} -> {c} -> a -> b -> c->()
9testdata/language-features/basic-values/infix02.lc 3:13-3:14 g_ 9testdata/language-features/basic-values/infix02.lc 3:13-3:14 g_
10testdata/language-features/basic-values/infix02.lc 3:13-3:20 b_ -> b_->() 10testdata/language-features/basic-values/infix02.lc 3:13-3:20 b_ -> a_->()
11testdata/language-features/basic-values/infix02.lc 3:13-3:22 a_->() 11testdata/language-features/basic-values/infix02.lc 3:13-3:22 a_->()
12testdata/language-features/basic-values/infix02.lc 3:15-3:20 {a} -> {b} -> {c} -> a -> b -> c->() 12testdata/language-features/basic-values/infix02.lc 3:15-3:20 {a} -> {b} -> {c} -> a -> b -> c->()
13testdata/language-features/basic-values/infix02.lc 3:21-3:22 d_ 13testdata/language-features/basic-values/infix02.lc 3:21-3:22 d_
diff --git a/testdata/language-features/basic-values/typesig03.out b/testdata/language-features/basic-values/typesig03.out
index 49f21cd9..720df136 100644
--- a/testdata/language-features/basic-values/typesig03.out
+++ b/testdata/language-features/basic-values/typesig03.out
@@ -11,7 +11,7 @@ testdata/language-features/basic-values/typesig03.lc 1:19-1:20 d_
11testdata/language-features/basic-values/typesig03.lc 1:19-1:26 Type 11testdata/language-features/basic-values/typesig03.lc 1:19-1:26 Type
12testdata/language-features/basic-values/typesig03.lc 1:24-1:26 Type 12testdata/language-features/basic-values/typesig03.lc 1:24-1:26 Type
13testdata/language-features/basic-values/typesig03.lc 2:1-2:5 {a} -> {b} -> {c} -> a -> b -> c->() 13testdata/language-features/basic-values/typesig03.lc 2:1-2:5 {a} -> {b} -> {c} -> a -> b -> c->()
14testdata/language-features/basic-values/typesig03.lc 2:14-2:16 () | c_ -> c_ -> c_->() | c_ -> c_->() | c_->() 14testdata/language-features/basic-values/typesig03.lc 2:14-2:16 () | c_ -> b_ -> a_->() | c_ -> b_->() | c_->()
15testdata/language-features/basic-values/typesig03.lc 4:7-4:8 f_ 15testdata/language-features/basic-values/typesig03.lc 4:7-4:8 f_
16testdata/language-features/basic-values/typesig03.lc 4:7-4:18 Type 16testdata/language-features/basic-values/typesig03.lc 4:7-4:18 Type
17testdata/language-features/basic-values/typesig03.lc 4:10-4:11 e_ 17testdata/language-features/basic-values/typesig03.lc 4:10-4:11 e_
@@ -20,4 +20,4 @@ testdata/language-features/basic-values/typesig03.lc 4:13-4:14 d_
20testdata/language-features/basic-values/typesig03.lc 4:13-4:18 Type 20testdata/language-features/basic-values/typesig03.lc 4:13-4:18 Type
21testdata/language-features/basic-values/typesig03.lc 4:16-4:18 Type 21testdata/language-features/basic-values/typesig03.lc 4:16-4:18 Type
22testdata/language-features/basic-values/typesig03.lc 5:1-5:5 {a} -> {b} -> {c} -> a -> b -> c->() 22testdata/language-features/basic-values/typesig03.lc 5:1-5:5 {a} -> {b} -> {c} -> a -> b -> c->()
23testdata/language-features/basic-values/typesig03.lc 5:14-5:16 () | c_ -> c_ -> c_->() | c_ -> c_->() | c_->() 23testdata/language-features/basic-values/typesig03.lc 5:14-5:16 () | c_ -> b_ -> a_->() | c_ -> b_->() | c_->()
diff --git a/testdata/language-features/basic-values/typesig04.out b/testdata/language-features/basic-values/typesig04.out
index 0661ca9c..9d7d2072 100644
--- a/testdata/language-features/basic-values/typesig04.out
+++ b/testdata/language-features/basic-values/typesig04.out
@@ -10,7 +10,7 @@ testdata/language-features/basic-values/typesig04.lc 1:15-1:16 e_
10testdata/language-features/basic-values/typesig04.lc 1:20-1:21 Type | d_ 10testdata/language-features/basic-values/typesig04.lc 1:20-1:21 Type | d_
11testdata/language-features/basic-values/typesig04.lc 1:26-1:28 Type 11testdata/language-features/basic-values/typesig04.lc 1:26-1:28 Type
12testdata/language-features/basic-values/typesig04.lc 2:1-2:5 {a} -> {b} -> {c} -> a -> (b->c)->() 12testdata/language-features/basic-values/typesig04.lc 2:1-2:5 {a} -> {b} -> {c} -> a -> (b->c)->()
13testdata/language-features/basic-values/typesig04.lc 2:12-2:14 () | (c_->c_)->() | c_ -> (c_->c_)->() 13testdata/language-features/basic-values/typesig04.lc 2:12-2:14 () | (c_->b_)->() | c_ -> (b_->a_)->()
14testdata/language-features/basic-values/typesig04.lc 4:7-4:8 f_ 14testdata/language-features/basic-values/typesig04.lc 4:7-4:8 f_
15testdata/language-features/basic-values/typesig04.lc 4:7-4:20 Type 15testdata/language-features/basic-values/typesig04.lc 4:7-4:20 Type
16testdata/language-features/basic-values/typesig04.lc 4:10-4:20 Type 16testdata/language-features/basic-values/typesig04.lc 4:10-4:20 Type
@@ -18,4 +18,4 @@ testdata/language-features/basic-values/typesig04.lc 4:11-4:12 e_
18testdata/language-features/basic-values/typesig04.lc 4:14-4:15 Type | d_ 18testdata/language-features/basic-values/typesig04.lc 4:14-4:15 Type | d_
19testdata/language-features/basic-values/typesig04.lc 4:18-4:20 Type 19testdata/language-features/basic-values/typesig04.lc 4:18-4:20 Type
20testdata/language-features/basic-values/typesig04.lc 5:1-5:5 {a} -> {b} -> {c} -> a -> (b->c)->() 20testdata/language-features/basic-values/typesig04.lc 5:1-5:5 {a} -> {b} -> {c} -> a -> (b->c)->()
21testdata/language-features/basic-values/typesig04.lc 5:12-5:14 () | (c_->c_)->() | c_ -> (c_->c_)->() 21testdata/language-features/basic-values/typesig04.lc 5:12-5:14 () | (c_->b_)->() | c_ -> (b_->a_)->()
diff --git a/testdata/language-features/basic-values/typesig05.out b/testdata/language-features/basic-values/typesig05.out
index 4c781fa8..a2d2e91d 100644
--- a/testdata/language-features/basic-values/typesig05.out
+++ b/testdata/language-features/basic-values/typesig05.out
@@ -20,7 +20,7 @@ testdata/language-features/basic-values/typesig05.lc 4:19-4:22 String
20testdata/language-features/basic-values/typesig05.lc 4:26-4:30 Type 20testdata/language-features/basic-values/typesig05.lc 4:26-4:30 Type
21testdata/language-features/basic-values/typesig05.lc 5:1-5:7 String 21testdata/language-features/basic-values/typesig05.lc 5:1-5:7 String
22testdata/language-features/basic-values/typesig05.lc 5:10-5:14 {a} -> {b} -> a -> b->b 22testdata/language-features/basic-values/typesig05.lc 5:10-5:14 {a} -> {b} -> a -> b->b
23testdata/language-features/basic-values/typesig05.lc 5:10-5:18 a_->b_ 23testdata/language-features/basic-values/typesig05.lc 5:10-5:18 a_->a_
24testdata/language-features/basic-values/typesig05.lc 5:10-5:22 String 24testdata/language-features/basic-values/typesig05.lc 5:10-5:22 String
25testdata/language-features/basic-values/typesig05.lc 5:15-5:18 Char 25testdata/language-features/basic-values/typesig05.lc 5:15-5:18 Char
26testdata/language-features/basic-values/typesig05.lc 5:19-5:22 String 26testdata/language-features/basic-values/typesig05.lc 5:19-5:22 String
@@ -35,7 +35,7 @@ testdata/language-features/basic-values/typesig05.lc 8:19-8:22 String
35testdata/language-features/basic-values/typesig05.lc 10:11-10:17 Type 35testdata/language-features/basic-values/typesig05.lc 10:11-10:17 Type
36testdata/language-features/basic-values/typesig05.lc 11:1-11:7 String 36testdata/language-features/basic-values/typesig05.lc 11:1-11:7 String
37testdata/language-features/basic-values/typesig05.lc 11:10-11:14 {a} -> {b} -> a -> b->b 37testdata/language-features/basic-values/typesig05.lc 11:10-11:14 {a} -> {b} -> a -> b->b
38testdata/language-features/basic-values/typesig05.lc 11:10-11:18 a_->b_ 38testdata/language-features/basic-values/typesig05.lc 11:10-11:18 a_->a_
39testdata/language-features/basic-values/typesig05.lc 11:10-11:22 String 39testdata/language-features/basic-values/typesig05.lc 11:10-11:22 String
40testdata/language-features/basic-values/typesig05.lc 11:15-11:18 Char 40testdata/language-features/basic-values/typesig05.lc 11:15-11:18 Char
41testdata/language-features/basic-values/typesig05.lc 11:19-11:22 String 41testdata/language-features/basic-values/typesig05.lc 11:19-11:22 String
diff --git a/testdata/language-features/pattern/uncovered.out b/testdata/language-features/pattern/uncovered.out
index 74f875cb..c96c691e 100644
--- a/testdata/language-features/pattern/uncovered.out
+++ b/testdata/language-features/pattern/uncovered.out
@@ -4,10 +4,10 @@ f :: {a} -> {_ : 'Num a[0;32
4------------ tooltips 4------------ tooltips
5testdata/language-features/pattern/uncovered.lc 4:1-4:2 {a} -> {_ : Num a} -> Bool -> Bool -> Bool->a 5testdata/language-features/pattern/uncovered.lc 4:1-4:2 {a} -> {_ : Num a} -> Bool -> Bool -> Bool->a
6testdata/language-features/pattern/uncovered.lc 4:18-4:19 b_ 6testdata/language-features/pattern/uncovered.lc 4:18-4:19 b_
7testdata/language-features/pattern/uncovered.lc 4:18-5:19 Bool->d_ | c_ 7testdata/language-features/pattern/uncovered.lc 4:18-5:19 Bool->c_ | c_
8testdata/language-features/pattern/uncovered.lc 4:18-6:19 Bool->d_ 8testdata/language-features/pattern/uncovered.lc 4:18-6:19 Bool->c_
9testdata/language-features/pattern/uncovered.lc 5:18-5:19 b_ | c_ 9testdata/language-features/pattern/uncovered.lc 5:18-5:19 b_ | c_
10testdata/language-features/pattern/uncovered.lc 5:18-6:19 Bool->d_ | b_ 10testdata/language-features/pattern/uncovered.lc 5:18-6:19 Bool->c_ | b_
11testdata/language-features/pattern/uncovered.lc 6:18-6:19 b_ 11testdata/language-features/pattern/uncovered.lc 6:18-6:19 b_
12------------ warnings 12------------ warnings
13Uncovered pattern(s) at testdata/language-features/pattern/uncovered.lc:4:1: 13Uncovered pattern(s) at testdata/language-features/pattern/uncovered.lc:4:1:
diff --git a/testdata/language-features/recursion/simplerec01.out b/testdata/language-features/recursion/simplerec01.out
index e975d532..9be285c9 100644
--- a/testdata/language-features/recursion/simplerec01.out
+++ b/testdata/language-features/recursion/simplerec01.out
@@ -4,6 +4,6 @@ fun :: {a} -> {_ : 'Num a[0;
4------------ tooltips 4------------ tooltips
5testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 5testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
6testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char 6testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char
7testdata/language-features/recursion/simplerec01.lc 1:9-2:14 Bool->Char | a_->b_ 7testdata/language-features/recursion/simplerec01.lc 1:9-2:14 Bool->Char | a_->a_
8testdata/language-features/recursion/simplerec01.lc 2:9-2:12 e_ 8testdata/language-features/recursion/simplerec01.lc 2:9-2:12 e_
9testdata/language-features/recursion/simplerec01.lc 2:13-2:14 b_ 9testdata/language-features/recursion/simplerec01.lc 2:13-2:14 b_
diff --git a/testdata/language-features/recursion/simplerec02.out b/testdata/language-features/recursion/simplerec02.out
index 96ad9d37..43dd847f 100644
--- a/testdata/language-features/recursion/simplerec02.out
+++ b/testdata/language-features/recursion/simplerec02.out
@@ -4,7 +4,7 @@ value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/recursion/simplerec02.lc 1:1-1:6 () 5testdata/language-features/recursion/simplerec02.lc 1:1-1:6 ()
6testdata/language-features/recursion/simplerec02.lc 1:21-1:24 Char 6testdata/language-features/recursion/simplerec02.lc 1:21-1:24 Char
7testdata/language-features/recursion/simplerec02.lc 1:21-2:26 Bool->Char | a_->b_ 7testdata/language-features/recursion/simplerec02.lc 1:21-2:26 Bool->Char | a_->a_
8testdata/language-features/recursion/simplerec02.lc 2:21-2:24 e_ 8testdata/language-features/recursion/simplerec02.lc 2:21-2:24 e_
9testdata/language-features/recursion/simplerec02.lc 2:25-2:26 b_ 9testdata/language-features/recursion/simplerec02.lc 2:25-2:26 b_
10testdata/language-features/recursion/simplerec02.lc 3:12-3:14 () 10testdata/language-features/recursion/simplerec02.lc 3:12-3:14 ()
diff --git a/testdata/language-features/recursion/simplerec03.out b/testdata/language-features/recursion/simplerec03.out
index 27c2981e..30b0755d 100644
--- a/testdata/language-features/recursion/simplerec03.out
+++ b/testdata/language-features/recursion/simplerec03.out
@@ -5,6 +5,6 @@ value :: ()
5testdata/language-features/recursion/simplerec03.lc 1:1-1:6 () 5testdata/language-features/recursion/simplerec03.lc 1:1-1:6 ()
6testdata/language-features/recursion/simplerec03.lc 1:9-1:11 () 6testdata/language-features/recursion/simplerec03.lc 1:9-1:11 ()
7testdata/language-features/recursion/simplerec03.lc 3:13-3:16 Char 7testdata/language-features/recursion/simplerec03.lc 3:13-3:16 Char
8testdata/language-features/recursion/simplerec03.lc 3:13-4:18 Bool->Char | a_->b_ 8testdata/language-features/recursion/simplerec03.lc 3:13-4:18 Bool->Char | a_->a_
9testdata/language-features/recursion/simplerec03.lc 4:13-4:16 e_ 9testdata/language-features/recursion/simplerec03.lc 4:13-4:16 e_
10testdata/language-features/recursion/simplerec03.lc 4:17-4:18 b_ 10testdata/language-features/recursion/simplerec03.lc 4:17-4:18 b_
diff --git a/testdata/record01.reject.out b/testdata/record01.reject.out
index b2d8d0e8..38d10686 100644
--- a/testdata/record01.reject.out
+++ b/testdata/record01.reject.out
@@ -107,9 +107,9 @@ testdata/record01.reject.lc 11:47-11:51 Float
107testdata/record01.reject.lc 12:10-12:18 CullMode 107testdata/record01.reject.lc 12:10-12:18 CullMode
108testdata/record01.reject.lc 13:11-13:20 CullMode 108testdata/record01.reject.lc 13:11-13:20 CullMode
109testdata/record01.reject.lc 14:23-14:34 {a} -> CullMode -> PolygonMode a -> PolygonOffset -> ProvokingVertex -> RasterContext a 'Triangle 109testdata/record01.reject.lc 14:23-14:34 {a} -> CullMode -> PolygonMode a -> PolygonOffset -> ProvokingVertex -> RasterContext a 'Triangle
110testdata/record01.reject.lc 14:23-14:39 PolygonMode a_ -> PolygonOffset -> ProvokingVertex -> RasterContext d_ 'Triangle 110testdata/record01.reject.lc 14:23-14:39 PolygonMode a_ -> PolygonOffset -> ProvokingVertex -> RasterContext a_ 'Triangle
111testdata/record01.reject.lc 14:23-14:49 PolygonOffset -> ProvokingVertex -> RasterContext c_ 'Triangle 111testdata/record01.reject.lc 14:23-14:49 PolygonOffset -> ProvokingVertex -> RasterContext a_ 'Triangle
112testdata/record01.reject.lc 14:23-14:58 ProvokingVertex -> RasterContext b_ 'Triangle 112testdata/record01.reject.lc 14:23-14:58 ProvokingVertex -> RasterContext a_ 'Triangle
113testdata/record01.reject.lc 14:23-14:70 RasterContext a_ 'Triangle 113testdata/record01.reject.lc 14:23-14:70 RasterContext a_ 'Triangle
114testdata/record01.reject.lc 14:35-14:39 CullMode 114testdata/record01.reject.lc 14:35-14:39 CullMode
115testdata/record01.reject.lc 14:40-14:49 {a} -> PolygonMode a 115testdata/record01.reject.lc 14:40-14:49 {a} -> PolygonMode a
@@ -124,7 +124,7 @@ testdata/record01.reject.lc 15:44-15:61 FragmentOperation 'Depth
124testdata/record01.reject.lc 15:52-15:56 ComparisonFunction 124testdata/record01.reject.lc 15:52-15:56 ComparisonFunction
125testdata/record01.reject.lc 15:57-15:61 Bool 125testdata/record01.reject.lc 15:57-15:61 Bool
126testdata/record01.reject.lc 15:63-15:70 {a} -> {b:Nat} -> {_ : Num a} -> Blending a -> VecScalar b Bool -> FragmentOperation ('Color (VecScalar b a)) 126testdata/record01.reject.lc 15:63-15:70 {a} -> {b:Nat} -> {_ : Num a} -> Blending a -> VecScalar b Bool -> FragmentOperation ('Color (VecScalar b a))
127testdata/record01.reject.lc 15:63-15:76 VecScalar b_ Bool -> FragmentOperation ('Color (VecScalar c_ Float)) 127testdata/record01.reject.lc 15:63-15:76 VecScalar b_ Bool -> FragmentOperation ('Color (VecScalar b_ Float))
128testdata/record01.reject.lc 15:63-15:101 ((FragmentOperation ('Color (VecScalar 4 Float)))) | FragmentOperation ('Color (VecScalar 4 Float)) 128testdata/record01.reject.lc 15:63-15:101 ((FragmentOperation ('Color (VecScalar 4 Float)))) | FragmentOperation ('Color (VecScalar 4 Float))
129testdata/record01.reject.lc 15:71-15:76 Blending Float 129testdata/record01.reject.lc 15:71-15:76 Blending Float
130testdata/record01.reject.lc 15:78-15:80 {a} -> a -> a -> a -> a -> VecS a 4 130testdata/record01.reject.lc 15:78-15:80 {a} -> a -> a -> a -> a -> VecS a 4
@@ -146,7 +146,7 @@ testdata/record01.reject.lc 16:40-16:53 Type
146testdata/record01.reject.lc 16:44-16:45 b_ 146testdata/record01.reject.lc 16:44-16:45 b_
147testdata/record01.reject.lc 16:46-16:47 b_ 147testdata/record01.reject.lc 16:46-16:47 b_
148testdata/record01.reject.lc 16:48-16:53 Type 148testdata/record01.reject.lc 16:48-16:53 Type
149testdata/record01.reject.lc 17:27-17:61 (VecS Float 4, VecS Float 4) | HList c_ -> c_ | c_ -> HList c_ -> c_ 149testdata/record01.reject.lc 17:27-17:61 (VecS Float 4, VecS Float 4) | HList c_ -> b_ | c_ -> HList b_ -> a_
150testdata/record01.reject.lc 17:28-17:41 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Vec b c -> Vec a c 150testdata/record01.reject.lc 17:28-17:41 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Vec b c -> Vec a c
151testdata/record01.reject.lc 17:28-17:55 Vec 4 Float -> Vec 4 Float 151testdata/record01.reject.lc 17:28-17:55 Vec 4 Float -> Vec 4 Float
152testdata/record01.reject.lc 17:28-17:57 Vec 4 Float 152testdata/record01.reject.lc 17:28-17:57 Vec 4 Float
@@ -154,7 +154,7 @@ testdata/record01.reject.lc 17:42-17:55 Mat 4 4 Float
154testdata/record01.reject.lc 17:56-17:57 g_ 154testdata/record01.reject.lc 17:56-17:57 g_
155testdata/record01.reject.lc 17:59-17:60 ((VecS Float 4)) | VecS Float 4 155testdata/record01.reject.lc 17:59-17:60 ((VecS Float 4)) | VecS Float 4
156testdata/record01.reject.lc 18:23-18:28 {a:PrimitiveType} -> {b : List Type} -> String -> HList b -> PrimitiveStream a (HList b) 156testdata/record01.reject.lc 18:23-18:28 {a:PrimitiveType} -> {b : List Type} -> String -> HList b -> PrimitiveStream a (HList b)
157testdata/record01.reject.lc 18:23-18:37 HList a_ -> PrimitiveStream c_ (HList b_) 157testdata/record01.reject.lc 18:23-18:37 HList a_ -> PrimitiveStream b_ (HList a_)
158testdata/record01.reject.lc 18:23-18:79 PrimitiveStream a_ ((Vec 4 Float)) 158testdata/record01.reject.lc 18:23-18:79 PrimitiveStream a_ ((Vec 4 Float))
159testdata/record01.reject.lc 18:29-18:37 String 159testdata/record01.reject.lc 18:29-18:37 String
160testdata/record01.reject.lc 18:39-18:48 {a} -> String->a 160testdata/record01.reject.lc 18:39-18:48 {a} -> String->a
@@ -168,19 +168,19 @@ testdata/record01.reject.lc 18:65-18:76 List Type | Type
168testdata/record01.reject.lc 18:69-18:70 b_ 168testdata/record01.reject.lc 18:69-18:70 b_
169testdata/record01.reject.lc 18:71-18:76 Type 169testdata/record01.reject.lc 18:71-18:76 Type
170testdata/record01.reject.lc 19:23-19:36 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> List (Primitive a c) -> List (Primitive b c) 170testdata/record01.reject.lc 19:23-19:36 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> List (Primitive a c) -> List (Primitive b c)
171testdata/record01.reject.lc 19:23-19:49 List (Primitive ((VecS Float 4)) a_) -> List (Primitive (VecS Float 4, VecS Float 4) b_) 171testdata/record01.reject.lc 19:23-19:49 List (Primitive ((VecS Float 4)) a_) -> List (Primitive (VecS Float 4, VecS Float 4) a_)
172testdata/record01.reject.lc 19:23-19:62 List (Primitive (VecS Float 4, VecS Float 4) a_) 172testdata/record01.reject.lc 19:23-19:62 List (Primitive (VecS Float 4, VecS Float 4) a_)
173testdata/record01.reject.lc 19:37-19:49 ((VecS Float 4))->(VecS Float 4, VecS Float 4) 173testdata/record01.reject.lc 19:37-19:49 ((VecS Float 4))->(VecS Float 4, VecS Float 4)
174testdata/record01.reject.lc 19:50-19:62 {a:PrimitiveType} -> PrimitiveStream a ((Vec 4 Float)) 174testdata/record01.reject.lc 19:50-19:62 {a:PrimitiveType} -> PrimitiveStream a ((Vec 4 Float))
175testdata/record01.reject.lc 20:23-20:42 {a : List Type} -> {b:PrimitiveType} -> RasterContext (HList ('Cons (Vec 4 Float) a)) b -> HList ('map Type Type Interpolated a) -> List (Primitive (HList ('Cons (Vec 4 Float) a)) b) -> List (Vector 1 (Maybe (SimpleFragment (HList a)))) 175testdata/record01.reject.lc 20:23-20:42 {a : List Type} -> {b:PrimitiveType} -> RasterContext (HList ('Cons (Vec 4 Float) a)) b -> HList ('map Type Type Interpolated a) -> List (Primitive (HList ('Cons (Vec 4 Float) a)) b) -> List (Vector 1 (Maybe (SimpleFragment (HList a))))
176testdata/record01.reject.lc 20:23-20:52 HList ('map Type Type Interpolated a_) -> List (Primitive (HList ('Cons (Vec 4 Float) b_)) 'Triangle) -> List (Vector 1 (Maybe (SimpleFragment (HList c_)))) 176testdata/record01.reject.lc 20:23-20:52 HList ('map Type Type Interpolated a_) -> List (Primitive (HList ('Cons (Vec 4 Float) a_)) 'Triangle) -> List (Vector 1 (Maybe (SimpleFragment (HList a_))))
177testdata/record01.reject.lc 20:23-20:63 List (Primitive (HList ('Cons (Vec 4 Float) d_)) 'Triangle) -> List (Vector 1 (Maybe (SimpleFragment (HList e_)))) 177testdata/record01.reject.lc 20:23-20:63 List (Primitive (HList ('Cons (Vec 4 Float) d_)) 'Triangle) -> List (Vector 1 (Maybe (SimpleFragment (HList d_))))
178testdata/record01.reject.lc 20:23-20:79 List (Vector 1 (Maybe (SimpleFragment ((VecS Float 4))))) 178testdata/record01.reject.lc 20:23-20:79 List (Vector 1 (Maybe (SimpleFragment ((VecS Float 4)))))
179testdata/record01.reject.lc 20:43-20:52 {a} -> RasterContext a 'Triangle 179testdata/record01.reject.lc 20:43-20:52 {a} -> RasterContext a 'Triangle
180testdata/record01.reject.lc 20:53-20:63 ((Interpolated c_)) 180testdata/record01.reject.lc 20:53-20:63 ((Interpolated c_))
181testdata/record01.reject.lc 20:55-20:61 {a} -> {_ : Floating a} -> Interpolated a 181testdata/record01.reject.lc 20:55-20:61 {a} -> {_ : Floating a} -> Interpolated a
182testdata/record01.reject.lc 20:64-20:79 {a:PrimitiveType} -> List (Primitive (VecS Float 4, VecS Float 4) a) 182testdata/record01.reject.lc 20:64-20:79 {a:PrimitiveType} -> List (Primitive (VecS Float 4, VecS Float 4) a)
183testdata/record01.reject.lc 21:33-21:55 ((VecS Float 4)) | HList c_ -> c_ | c_ -> HList c_ -> c_ 183testdata/record01.reject.lc 21:33-21:55 ((VecS Float 4)) | HList c_ -> b_ | c_ -> HList b_ -> a_
184testdata/record01.reject.lc 21:35-21:37 {a} -> a -> a -> a -> a -> VecS a 4 184testdata/record01.reject.lc 21:35-21:37 {a} -> a -> a -> a -> a -> VecS a 4
185testdata/record01.reject.lc 21:35-21:41 Float -> Float -> Float -> VecS Float 4 185testdata/record01.reject.lc 21:35-21:41 Float -> Float -> Float -> VecS Float 4
186testdata/record01.reject.lc 21:35-21:45 Float -> Float -> VecS Float 4 186testdata/record01.reject.lc 21:35-21:45 Float -> Float -> VecS Float 4
@@ -190,9 +190,9 @@ testdata/record01.reject.lc 21:38-21:41 Float
190testdata/record01.reject.lc 21:42-21:45 Float 190testdata/record01.reject.lc 21:42-21:45 Float
191testdata/record01.reject.lc 21:46-21:49 Float 191testdata/record01.reject.lc 21:46-21:49 Float
192testdata/record01.reject.lc 21:50-21:53 Float 192testdata/record01.reject.lc 21:50-21:53 Float
193testdata/record01.reject.lc 22:33-22:67 ((VecS Float 4)) | HList c_ -> c_ | c_ -> HList c_ -> c_ 193testdata/record01.reject.lc 22:33-22:67 ((VecS Float 4)) | HList c_ -> b_ | c_ -> HList b_ -> a_
194testdata/record01.reject.lc 22:35-22:42 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 194testdata/record01.reject.lc 22:35-22:42 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
195testdata/record01.reject.lc 22:35-22:44 i_->j_ 195testdata/record01.reject.lc 22:35-22:44 i_->i_
196testdata/record01.reject.lc 22:35-22:65 VecS Float 4 196testdata/record01.reject.lc 22:35-22:65 VecS Float 4
197testdata/record01.reject.lc 22:43-22:44 j_ 197testdata/record01.reject.lc 22:43-22:44 j_
198testdata/record01.reject.lc 22:46-22:48 {a} -> a -> a -> a -> a -> VecS a 4 198testdata/record01.reject.lc 22:46-22:48 {a} -> a -> a -> a -> a -> VecS a 4
@@ -205,8 +205,8 @@ testdata/record01.reject.lc 22:53-22:56 Float
205testdata/record01.reject.lc 22:57-22:60 Float 205testdata/record01.reject.lc 22:57-22:60 Float
206testdata/record01.reject.lc 22:61-22:64 Float 206testdata/record01.reject.lc 22:61-22:64 Float
207testdata/record01.reject.lc 23:23-23:33 {a:Nat} -> {b : List Type} -> {c} -> HList b -> (c -> HList ('imageType' ('map Type ImageKind FragmentOperationKind b))) -> List (Vector a (Maybe (SimpleFragment c))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) 207testdata/record01.reject.lc 23:23-23:33 {a:Nat} -> {b : List Type} -> {c} -> HList b -> (c -> HList ('imageType' ('map Type ImageKind FragmentOperationKind b))) -> List (Vector a (Maybe (SimpleFragment c))) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b) -> FrameBuffer a ('map Type ImageKind FragmentOperationKind b)
208testdata/record01.reject.lc 23:23-23:45 (a_->(('imageType (FragmentOperationKind (FragmentOperation ('Color (VecScalar 4 Float))))))) -> List (Vector c_ (Maybe (SimpleFragment b_))) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer e_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) 208testdata/record01.reject.lc 23:23-23:45 (a_->(('imageType (FragmentOperationKind (FragmentOperation ('Color (VecScalar 4 Float))))))) -> List (Vector b_ (Maybe (SimpleFragment a_))) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil)))
209testdata/record01.reject.lc 23:23-23:60 List (Vector a_ (Maybe (SimpleFragment ((VecS Float 4))))) -> FrameBuffer b_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer c_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) 209testdata/record01.reject.lc 23:23-23:60 List (Vector a_ (Maybe (SimpleFragment ((VecS Float 4))))) -> FrameBuffer a_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer a_ ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil)))
210testdata/record01.reject.lc 23:23-23:75 FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) 210testdata/record01.reject.lc 23:23-23:75 FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) -> FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil)))
211testdata/record01.reject.lc 23:23-23:83 FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil))) 211testdata/record01.reject.lc 23:23-23:83 FrameBuffer 1 ('map Type ImageKind FragmentOperationKind ('Cons (FragmentOperation 'Depth) ('Cons (FragmentOperation ('Color (VecScalar 4 Float))) 'Nil)))
212testdata/record01.reject.lc 23:34-23:45 (FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))) 212testdata/record01.reject.lc 23:34-23:45 (FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float)))
diff --git a/testdata/typeclass.out b/testdata/typeclass.out
index e0da48d1..c325cfed 100644
--- a/testdata/typeclass.out
+++ b/testdata/typeclass.out
@@ -36,7 +36,7 @@ testdata/typeclass.lc 20:15-20:21 Bool
36testdata/typeclass.lc 20:17-20:19 {a} -> {_ : Eq a} -> a -> a->Bool 36testdata/typeclass.lc 20:17-20:19 {a} -> {_ : Eq a} -> a -> a->Bool
37testdata/typeclass.lc 20:20-20:21 c_ 37testdata/typeclass.lc 20:20-20:21 c_
38testdata/typeclass.lc 23:17-23:18 Bool 38testdata/typeclass.lc 23:17-23:18 Bool
39testdata/typeclass.lc 23:17-24:23 Bool->Bool | {_ : Eq a_} -> b_ -> c_->Bool | {a} -> {_ : Eq a} -> a -> a->Bool 39testdata/typeclass.lc 23:17-24:23 Bool->Bool | {_ : Eq a_} -> a_ -> a_->Bool | {a} -> {_ : Eq a} -> a -> a->Bool
40testdata/typeclass.lc 24:18-24:21 Bool->Bool 40testdata/typeclass.lc 24:18-24:21 Bool->Bool
41testdata/typeclass.lc 24:18-24:23 Bool 41testdata/typeclass.lc 24:18-24:23 Bool
42testdata/typeclass.lc 24:22-24:23 b_ 42testdata/typeclass.lc 24:22-24:23 b_
diff --git a/testdata/typesig.reject.out b/testdata/typesig.reject.out
index 05632bc8..50c13202 100644
--- a/testdata/typesig.reject.out
+++ b/testdata/typesig.reject.out
@@ -1,16 +1,16 @@
1focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>) 1focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>)
2\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X) 2\(a : Type~a_) (b : a_~'X) -> typeAnn a_ (labend X)
3------------ trace 3------------ trace
4'X :: Type 4'X :: Type
5X :: 'X 5X :: 'X
6'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b 6'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b
7match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b 7match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b
8!focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>) 8!focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>)
9\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X) 9\(a : Type~a_) (b : a_~'X) -> typeAnn a_ (labend X)
10------------ tooltips 10------------ tooltips
11testdata/typesig.reject.lc 4:6-4:7 Type 11testdata/typesig.reject.lc 4:6-4:7 Type
12testdata/typesig.reject.lc 4:6-4:11 Type 12testdata/typesig.reject.lc 4:6-4:11 Type
13testdata/typesig.reject.lc 4:10-4:11 X 13testdata/typesig.reject.lc 4:10-4:11 X
14testdata/typesig.reject.lc 6:6-6:7 b_ 14testdata/typesig.reject.lc 6:6-6:7 b_
15testdata/typesig.reject.lc 6:6-7:6 a_->b_ | c_ 15testdata/typesig.reject.lc 6:6-7:6 a_->a_ | c_
16testdata/typesig.reject.lc 7:5-7:6 X 16testdata/typesig.reject.lc 7:5-7:6 X
diff --git a/testdata/zip01.out b/testdata/zip01.out
index 02f84ae5..10a48894 100644
--- a/testdata/zip01.out
+++ b/testdata/zip01.out
@@ -4,7 +4,7 @@ zip2 :: {a} -> {b} -> 'List a -> 'List
4------------ tooltips 4------------ tooltips
5testdata/zip01.lc 1:9-1:12 Type 5testdata/zip01.lc 1:9-1:12 Type
6testdata/zip01.lc 1:9-1:30 Type 6testdata/zip01.lc 1:9-1:30 Type
7testdata/zip01.lc 1:9-4:40 a_->b_ | {a} -> {b} -> List a -> List b -> List (a, b) 7testdata/zip01.lc 1:9-4:40 a_->a_ | {a} -> {b} -> List a -> List b -> List (a, b)
8testdata/zip01.lc 1:10-1:11 d_ 8testdata/zip01.lc 1:10-1:11 d_
9testdata/zip01.lc 1:16-1:19 Type 9testdata/zip01.lc 1:16-1:19 Type
10testdata/zip01.lc 1:16-1:30 Type 10testdata/zip01.lc 1:16-1:30 Type
@@ -16,17 +16,17 @@ testdata/zip01.lc 1:25-1:28 List Type
16testdata/zip01.lc 1:27-1:28 List Type | Type 16testdata/zip01.lc 1:27-1:28 List Type | Type
17testdata/zip01.lc 2:1-2:5 {a} -> {b} -> List a -> List b -> List (a, b) 17testdata/zip01.lc 2:1-2:5 {a} -> {b} -> List a -> List b -> List (a, b)
18testdata/zip01.lc 2:22-2:24 {a} -> List a 18testdata/zip01.lc 2:22-2:24 {a} -> List a
19testdata/zip01.lc 2:22-4:40 List (d_, c_) | List a_ -> List (b_, e_) | List b_ -> List (d_, c_) | List b_ -> List b_ -> List (d_, c_) 19testdata/zip01.lc 2:22-4:40 List (d_, c_) | List a_ -> List (a_, d_) | List b_ -> List (c_, b_) | List b_ -> List a_ -> List (b_, a_)
20testdata/zip01.lc 3:22-3:24 {a} -> List a 20testdata/zip01.lc 3:22-3:24 {a} -> List a
21testdata/zip01.lc 3:22-4:40 List (c_, f_) | List a_ -> List (f_, b_) | List c_ -> List c_ | b_ -> List c_ -> List c_ 21testdata/zip01.lc 3:22-4:40 List (c_, f_) | List a_ -> List (e_, a_) | List c_ -> List b_ | b_ -> List b_ -> List a_
22testdata/zip01.lc 4:22-4:27 (h_, d_) 22testdata/zip01.lc 4:22-4:27 (h_, d_)
23testdata/zip01.lc 4:22-4:29 List (h_, d_) -> List (i_, e_) 23testdata/zip01.lc 4:22-4:29 List (h_, d_) -> List (h_, d_)
24testdata/zip01.lc 4:22-4:40 List (g_, c_) | List c_ -> List c_ | b_ -> List c_ -> List c_ 24testdata/zip01.lc 4:22-4:40 List (g_, c_) | List c_ -> List b_ | b_ -> List b_ -> List a_
25testdata/zip01.lc 4:23-4:24 k_ 25testdata/zip01.lc 4:23-4:24 k_
26testdata/zip01.lc 4:25-4:26 ((d_)) | g_ 26testdata/zip01.lc 4:25-4:26 ((d_)) | g_
27testdata/zip01.lc 4:28-4:29 {a} -> a -> List a -> List a 27testdata/zip01.lc 4:28-4:29 {a} -> a -> List a -> List a
28testdata/zip01.lc 4:30-4:34 {a} -> {b} -> List a -> List b -> List (a, b) 28testdata/zip01.lc 4:30-4:34 {a} -> {b} -> List a -> List b -> List (a, b)
29testdata/zip01.lc 4:30-4:37 List a_ -> List (i_, b_) 29testdata/zip01.lc 4:30-4:37 List a_ -> List (h_, a_)
30testdata/zip01.lc 4:30-4:40 List (g_, c_) 30testdata/zip01.lc 4:30-4:40 List (g_, c_)
31testdata/zip01.lc 4:35-4:37 List i_ 31testdata/zip01.lc 4:35-4:37 List i_
32testdata/zip01.lc 4:38-4:40 List c_ 32testdata/zip01.lc 4:38-4:40 List c_