diff --git a/ic3/ic3.c b/ic3/ic3.c
index 8d723a8..54abfce 100644
--- a/ic3/ic3.c
+++ b/ic3/ic3.c
@@ -34,6 +34,30 @@ sw buf_ignore_character (s_buf *buf)
return csize;
}
+sw ic3_buf_ignore_spaces (s_buf *out, s_buf *in)
+{
+ character c;
+ sw csize;
+ sw r;
+ sw result = 0;
+ assert(in);
+ assert(out);
+ while ((r = buf_peek_character_utf8(in, &c)) > 0 &&
+ c >= 0 &&
+ c < UCD_MAX &&
+ g_ucd[c].flags & (UCD_OTHER_CONTROL | UCD_SEPARATOR_SPACE)) {
+ csize = r;
+ if ((r = buf_ignore(in, csize)) != csize)
+ return -1;
+ result += csize;
+ if ((r = buf_flush(out)) < 0)
+ return -1;
+ }
+ if (r < 0)
+ return r;
+ return result;
+}
+
sw buf_xfer_spaces (s_buf *out, s_buf *in)
{
character c;
@@ -75,7 +99,7 @@ int main (int argc, char **argv)
in.line = 0;
buf_init(&out, false, sizeof(o), o);
buf_file_open_w(&out, stdout);
- while ((r = buf_xfer_spaces(&out, &in)) >= 0) {
+ while ((r = ic3_buf_ignore_spaces(&out, &in)) >= 0) {
if ((r = buf_parse_tag(&in, &input)) > 0) {
if (! eval_tag(&input, &result)) {
tag_clean(&input);
diff --git a/test/ic3/array.out.expected b/test/ic3/array.out.expected
index 38cf4e8..ebe727d 100644
--- a/test/ic3/array.out.expected
+++ b/test/ic3/array.out.expected
@@ -1,6 +1,3 @@
(u8) {0, 1}
-
(u8) {{0, 1}, {2, 3}}
-
(u8) {{{0, 1}, {2, 3}}, {{4, 5}, {6, 7}}}
-
diff --git a/test/ic3/bool.out.expected b/test/ic3/bool.out.expected
index 4e01ccd..b93975a 100644
--- a/test/ic3/bool.out.expected
+++ b/test/ic3/bool.out.expected
@@ -1,11 +1,7 @@
true
-
false
-
true
-
false
-
false
false
false
@@ -15,6 +11,4 @@ true
true
true
true
-
false
-
diff --git a/test/ic3/call.out.expected b/test/ic3/call.out.expected
index 23cb720..500214c 100644
--- a/test/ic3/call.out.expected
+++ b/test/ic3/call.out.expected
@@ -1,25 +1,12 @@
quote test()
-
quote test(1)
-
quote test(1, 2)
-
quote test(1, 2, 3)
-
quote Test.test()
-
quote Test.test(1)
-
quote Test.test(1, 2)
-
quote Test.test(1, 2, 3)
-
quote first((1, 2))
-
quote C3.first((1, 2))
-
-
1
-
2
-
diff --git a/test/ic3/character.out.expected b/test/ic3/character.out.expected
index edd82e2..94813fc 100644
--- a/test/ic3/character.out.expected
+++ b/test/ic3/character.out.expected
@@ -1,28 +1,14 @@
'0'
-
'9'
-
'A'
-
'Z'
-
'a'
-
'z'
-
'Π'
-
'ÿ'
-
'꒴'
-
'𐅀'
-
'🎳'
-
'😄'
-
'🟣'
-
'🤩'
-
diff --git a/test/ic3/comment.out.expected b/test/ic3/comment.out.expected
index ccb7a93..9df02fe 100644
--- a/test/ic3/comment.out.expected
+++ b/test/ic3/comment.out.expected
@@ -1,6 +1,3 @@
"a"
-
"b"
-
"c"
-
diff --git a/test/ic3/fn.out.expected b/test/ic3/fn.out.expected
index 5d24ef1..f812d11 100644
--- a/test/ic3/fn.out.expected
+++ b/test/ic3/fn.out.expected
@@ -1,26 +1,18 @@
quote fn (x) { x }
-
quote fn (x, _y) { x }
-
quote fn ((x | _y)) { x }
-
quote fn {
(()) { :error }
((x | _y)) { x }
(_) { :error }
}
-
fn (x) { x }
-
fn (x, _y) { x }
-
fn ((x | _y)) { x }
-
fn {
(()) { :error }
((x | _y)) { x }
(_) { :error }
}
-
diff --git a/test/ic3/hello.out.expected b/test/ic3/hello.out.expected
index ced139d..68b3cbd 100644
--- a/test/ic3/hello.out.expected
+++ b/test/ic3/hello.out.expected
@@ -1,2 +1 @@
"Hello, world !"
-
diff --git a/test/ic3/ident.out.expected b/test/ic3/ident.out.expected
index 5221f31..fd4c50b 100644
--- a/test/ic3/ident.out.expected
+++ b/test/ic3/ident.out.expected
@@ -1,54 +1,27 @@
quote _" "
-
quote _"\n"
-
quote _"\0"
-
quote _"\n"
-
quote _"\r"
-
quote _" "
-
quote _"\t"
-
quote _"\v"
-
quote _0
-
quote _9
-
quote _A
-
quote _Z
-
quote a
-
quote z
-
quote _À
-
quote _É
-
quote _Ÿ
-
quote à
-
quote é
-
quote ÿ
-
quote _Π
-
quote ꒴
-
quote 𐅀
-
quote 🎳
-
quote 😄
-
quote 🟣
-
quote 🤩
-
diff --git a/test/ic3/integer.out.expected b/test/ic3/integer.out.expected
index fc42495..2e5bf73 100644
--- a/test/ic3/integer.out.expected
+++ b/test/ic3/integer.out.expected
@@ -1,153 +1,70 @@
0
-
1
-
18
-
291
-
4660
-
74565
-
1193046
-
19088743
-
305419896
-
4886718345
-
78187493530
-
1250999896491
-
20015998343868
-
320255973501901
-
5124095576030430
-
81985529216486895
-
1311768467463790320
-
24197857203266734864793317670504947440
-
446371678960830626287503741310750946166416432579510853360
-
8234104123542484900769178205574010627627573691361805720124810878238590820080
-
-
0
-
-1
-
-18
-
-291
-
-4660
-
-74565
-
-1193046
-
-19088743
-
-305419896
-
-4886718345
-
-78187493530
-
-1250999896491
-
-20015998343868
-
-320255973501901
-
-5124095576030430
-
-81985529216486895
-
-1311768467463790320
-
-24197857203266734864793317670504947440
-
-446371678960830626287503741310750946166416432579510853360
-
-8234104123542484900769178205574010627627573691361805720124810878238590820080
-
-
0
-
0
-
1
-
-1
-
2
-
-2
-
-
1234567890
-
-1234567890
-
12345678901234567890
-
-12345678901234567890
-
123456789012345678901234567890
-
-123456789012345678901234567890
-
1234567890123456789012345678901234567890
-
-1234567890123456789012345678901234567890
-
12345678901234567890123456789012345678901234567890
-
-12345678901234567890123456789012345678901234567890
-
123456789012345678901234567890123456789012345678901234567890
-
-123456789012345678901234567890123456789012345678901234567890
-
1234567890123456789012345678901234567890123456789012345678901234567890
-
-1234567890123456789012345678901234567890123456789012345678901234567890
-
-
12345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
-12345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
-123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
-1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
-1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
-
-1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-
diff --git a/test/ic3/list.out.expected b/test/ic3/list.out.expected
index d85228a..c512c93 100644
--- a/test/ic3/list.out.expected
+++ b/test/ic3/list.out.expected
@@ -1,45 +1,22 @@
()
-
(())
-
((), ())
-
((), (), ())
-
((), (), (), ())
-
((), ())
-
((), (), ())
-
((), (), ())
-
((), (), (), ())
-
((), ())
-
((), (), ())
-
((), (), (), ())
-
(((), ()), (), ())
-
((()), ())
-
(a)
-
(a, b)
-
(a, b, c)
-
(a | b)
-
(a, b | c)
-
(a, b, c, d)
-
(a, b, c | d)
-
-
(a, b, c | d)
-
diff --git a/test/ic3/str.out.expected b/test/ic3/str.out.expected
index a43e62a..769ed5e 100644
--- a/test/ic3/str.out.expected
+++ b/test/ic3/str.out.expected
@@ -1,70 +1,33 @@
" "
-
"\n"
-
"\0"
-
"\n"
-
"\r"
-
" "
-
"\t"
-
"\v"
-
"0"
-
"9"
-
"A"
-
"Z"
-
"a"
-
"z"
-
"À"
-
"É"
-
"Ÿ"
-
"à"
-
"é"
-
"ÿ"
-
"Π"
-
"꒴"
-
"𐅀"
-
"🎳"
-
"😄"
-
"🟣"
-
"🤩"
-
"abc"
-
"abc"
-
-
"abc\ndef"
-
-
"abc\ndef\n"
-
-
"abc\ndef"
-
-
"abc\ndef"
-
diff --git a/test/ic3/sym.out.expected b/test/ic3/sym.out.expected
index 7f7d7cd..b175d40 100644
--- a/test/ic3/sym.out.expected
+++ b/test/ic3/sym.out.expected
@@ -1,54 +1,27 @@
:" "
-
:"\n"
-
:"\0"
-
:"\n"
-
:"\r"
-
:" "
-
:"\t"
-
:"\v"
-
:0
-
:9
-
A
-
Z
-
:a
-
:z
-
À
-
É
-
Ÿ
-
:à
-
:é
-
:ÿ
-
Π
-
:꒴
-
:𐅀
-
:🎳
-
:😄
-
:🟣
-
:🤩
-
diff --git a/test/ic3/tuple.out.expected b/test/ic3/tuple.out.expected
index 1a8ea5f..f3b386b 100644
--- a/test/ic3/tuple.out.expected
+++ b/test/ic3/tuple.out.expected
@@ -1,39 +1,19 @@
{(), ()}
-
{"", ""}
-
{(), ""}
-
{"", ()}
-
{:a, :b}
-
{:a, :b, :c}
-
{:a, :b, :c, :d}
-
{:a, :b, :c, :d, :e}
-
{:a, :b, :c, :d, :e, :f}
-
{:a, :b, :c, :d, :e, :f, :g}
-
{:a, :b, :c, :d, :e, :f, :g, :h}
-
{:a, :b, :c, :d, :e, :f, :g, :h, :i}
-
{:a, :b, :c, :d, :e, :f, :g, :h, :i, :j}
-
{{:a, :b}, {:c, :d}}
-
{{:a, :b}, {:c, :d}, {:e, :f}}
-
{{:a, :b}, {:c, :d}, {:e, :f}, {:g, :h}}
-
{{:a, :b}, {:c, :d}, {:e, :f}, {:g, :h}, {:i, :j}}
-
-
{:a, :b, :c}
-
{a, b, c}
-