From e2eeccdb2aa0d40b00aebb214bcbbe11a10fdb05 Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Tue, 19 Feb 2019 13:06:33 -0800 Subject: [PATCH] chore(boot): update --- src/boot/init/coe.cpp | 32 +- src/boot/init/control/coroutine.cpp | 24 +- src/boot/init/control/except.cpp | 104 +- src/boot/init/control/option.cpp | 4 +- src/boot/init/control/state.cpp | 20 +- src/boot/init/core.cpp | 8 +- src/boot/init/data/hashmap/basic.cpp | 24 +- src/boot/init/data/list/basic.cpp | 160 +- src/boot/init/data/list/instances.cpp | 56 +- src/boot/init/data/option/basic.cpp | 8 +- src/boot/init/data/rbmap/basic.cpp | 320 +-- src/boot/init/data/rbtree/basic.cpp | 156 +- src/boot/init/data/string/basic.cpp | 20 +- src/boot/init/io.cpp | 164 +- src/boot/init/lean/compiler/const_folding.cpp | 36 +- src/boot/init/lean/elaborator.cpp | 2284 ++++++++--------- src/boot/init/lean/expander.cpp | 796 +++--- src/boot/init/lean/format.cpp | 44 +- src/boot/init/lean/frontend.cpp | 212 +- src/boot/init/lean/ir/elim_phi.cpp | 452 ++-- src/boot/init/lean/ir/extract_cpp.cpp | 1088 ++++---- src/boot/init/lean/ir/lirc.cpp | 176 +- src/boot/init/lean/ir/parser.cpp | 2176 ++++++++-------- src/boot/init/lean/ir/reserved.cpp | 36 +- src/boot/init/lean/ir/ssa_check.cpp | 564 ++-- src/boot/init/lean/ir/type_check.cpp | 432 ++-- src/boot/init/lean/kvmap.cpp | 24 +- src/boot/init/lean/level.cpp | 28 +- src/boot/init/lean/name_mangling.cpp | 184 +- src/boot/init/lean/parser/basic.cpp | 84 +- src/boot/init/lean/parser/combinators.cpp | 36 +- src/boot/init/lean/parser/command.cpp | 336 +-- src/boot/init/lean/parser/declaration.cpp | 1240 ++++----- src/boot/init/lean/parser/level.cpp | 452 ++-- src/boot/init/lean/parser/module.cpp | 892 +++---- src/boot/init/lean/parser/notation.cpp | 592 ++--- src/boot/init/lean/parser/parsec.cpp | 172 +- src/boot/init/lean/parser/syntax.cpp | 160 +- src/boot/init/lean/parser/term.cpp | 1172 ++++----- src/boot/init/lean/parser/token.cpp | 2100 +++++++-------- src/boot/init/lean/parser/trie.cpp | 44 +- src/boot/init/lean/position.cpp | 32 +- src/boot/init/lean/trace.cpp | 100 +- 43 files changed, 8522 insertions(+), 8522 deletions(-) diff --git a/src/boot/init/coe.cpp b/src/boot/init/coe.cpp index b84cf046ea..9233f41154 100644 --- a/src/boot/init/coe.cpp +++ b/src/boot/init/coe.cpp @@ -521,14 +521,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -561,14 +561,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -599,14 +599,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -646,14 +646,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } diff --git a/src/boot/init/control/coroutine.cpp b/src/boot/init/control/coroutine.cpp index 5285cca98f..876973f519 100644 --- a/src/boot/init/control/coroutine.cpp +++ b/src/boot/init/control/coroutine.cpp @@ -239,14 +239,14 @@ else obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; lean::dec(x_2); x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_4, 1); -lean::inc(x_12); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_14 = x_4; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_4); x_14 = lean::box(0); } @@ -308,11 +308,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_5; obj* x_7; obj* x_8; lean::dec(x_1); x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -328,14 +328,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_3, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_3, 1); -lean::inc(x_11); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_13 = x_3; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_3); x_13 = lean::box(0); } @@ -346,11 +346,11 @@ obj* x_17; obj* x_19; obj* x_20; lean::dec(x_11); lean::dec(x_13); x_17 = lean::cnstr_get(x_14, 0); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } diff --git a/src/boot/init/control/except.cpp b/src/boot/init/control/except.cpp index 93c0a25f81..33d7963983 100644 --- a/src/boot/init/control/except.cpp +++ b/src/boot/init/control/except.cpp @@ -355,11 +355,11 @@ if (lean::obj_tag(x_1) == 0) obj* x_3; obj* x_5; obj* x_6; lean::dec(x_0); x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -375,11 +375,11 @@ else { obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_7 = lean::cnstr_get(x_1, 0); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } @@ -413,11 +413,11 @@ if (lean::obj_tag(x_1) == 0) obj* x_3; obj* x_5; obj* x_6; lean::dec(x_0); x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -433,11 +433,11 @@ else { obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_7 = lean::cnstr_get(x_1, 0); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } @@ -470,11 +470,11 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_5; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } @@ -492,11 +492,11 @@ else obj* x_8; obj* x_10; obj* x_11; lean::dec(x_0); x_8 = lean::cnstr_get(x_1, 0); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -528,11 +528,11 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_5; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } @@ -550,11 +550,11 @@ else obj* x_8; obj* x_10; obj* x_11; lean::dec(x_0); x_8 = lean::cnstr_get(x_1, 0); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -587,11 +587,11 @@ if (lean::obj_tag(x_0) == 0) obj* x_3; obj* x_5; obj* x_6; lean::dec(x_1); x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -804,11 +804,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_7; obj* x_9; obj* x_10; lean::dec(x_2); x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_9 = x_3; } else { + lean::inc(x_7); lean::dec(x_3); x_9 = lean::box(0); } @@ -824,11 +824,11 @@ else { obj* x_11; obj* x_13; obj* x_14; obj* x_15; x_11 = lean::cnstr_get(x_3, 0); -lean::inc(x_11); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_13 = x_3; } else { + lean::inc(x_11); lean::dec(x_3); x_13 = lean::box(0); } @@ -853,11 +853,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_7; obj* x_9; obj* x_10; lean::dec(x_2); x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_9 = x_3; } else { + lean::inc(x_7); lean::dec(x_3); x_9 = lean::box(0); } @@ -899,11 +899,11 @@ if (lean::obj_tag(x_2) == 0) obj* x_7; obj* x_9; obj* x_10; lean::dec(x_3); x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -919,11 +919,11 @@ else { obj* x_11; obj* x_13; x_11 = lean::cnstr_get(x_2, 0); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } @@ -971,11 +971,11 @@ if (lean::obj_tag(x_2) == 0) obj* x_7; obj* x_9; obj* x_10; lean::dec(x_3); x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -991,11 +991,11 @@ else { obj* x_11; obj* x_13; x_11 = lean::cnstr_get(x_2, 0); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } @@ -1040,11 +1040,11 @@ if (lean::obj_tag(x_2) == 0) obj* x_7; obj* x_9; obj* x_10; lean::dec(x_3); x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -1179,11 +1179,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1234,11 +1234,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1480,11 +1480,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1535,11 +1535,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1590,11 +1590,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1645,11 +1645,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1700,11 +1700,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1755,11 +1755,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -1810,11 +1810,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_17; obj* x_18; lean::dec(x_3); x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } diff --git a/src/boot/init/control/option.cpp b/src/boot/init/control/option.cpp index 1c7edef340..bfd55e330b 100644 --- a/src/boot/init/control/option.cpp +++ b/src/boot/init/control/option.cpp @@ -1409,11 +1409,11 @@ else obj* x_7; obj* x_9; obj* x_10; obj* x_13; obj* x_16; obj* x_17; lean::dec(x_0); x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } diff --git a/src/boot/init/control/state.cpp b/src/boot/init/control/state.cpp index 01fdc65324..1e9807bcd5 100644 --- a/src/boot/init/control/state.cpp +++ b/src/boot/init/control/state.cpp @@ -237,14 +237,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_12; obj* x_15; obj* x_16; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -287,12 +287,12 @@ _start: { obj* x_3; obj* x_5; obj* x_6; obj* x_9; obj* x_12; obj* x_13; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 1, lean::box(0)); x_5 = x_2; } else { + lean::inc(x_3); lean::dec(x_2); x_5 = lean::box(0); } @@ -751,14 +751,14 @@ _start: { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_12; obj* x_15; obj* x_16; obj* x_17; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } diff --git a/src/boot/init/core.cpp b/src/boot/init/core.cpp index af0c73b02a..30118f2174 100644 --- a/src/boot/init/core.cpp +++ b/src/boot/init/core.cpp @@ -3916,14 +3916,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } diff --git a/src/boot/init/data/hashmap/basic.cpp b/src/boot/init/data/hashmap/basic.cpp index f9aea4f1c3..3f1650e725 100644 --- a/src/boot/init/data/hashmap/basic.cpp +++ b/src/boot/init/data/hashmap/basic.cpp @@ -526,14 +526,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_16; uint8 x_17; x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_3, 1); -lean::inc(x_9); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_11 = x_3; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_3); x_11 = lean::box(0); } @@ -617,14 +617,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_14; uint8 x_15; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -691,14 +691,14 @@ _start: { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_14; usize x_15; usize x_16; obj* x_17; uint8 x_21; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } diff --git a/src/boot/init/data/list/basic.cpp b/src/boot/init/data/list/basic.cpp index f64e4e0c53..39982778b1 100644 --- a/src/boot/init/data/list/basic.cpp +++ b/src/boot/init/data/list/basic.cpp @@ -434,14 +434,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -672,14 +672,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_13; uint8 x_14; x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_1, 1); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } @@ -758,14 +758,14 @@ else { obj* x_5; obj* x_7; obj* x_9; x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_1, 1); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } @@ -1199,14 +1199,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -1267,14 +1267,14 @@ else { obj* x_6; obj* x_8; obj* x_10; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -1404,14 +1404,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -1482,14 +1482,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_10; uint8 x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -1564,28 +1564,28 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; obj* x_17; uint8 x_18; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } lean::inc(x_0); x_10 = l_list_partition___main___rarg(x_0, x_6); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -1763,14 +1763,14 @@ obj* x_18; obj* x_19; obj* x_21; obj* x_23; obj* x_24; obj* x_25; lean::dec(x_1); x_18 = l_list_span___main___rarg(x_0, x_6); x_19 = lean::cnstr_get(x_18, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_18, 1); -lean::inc(x_21); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); x_23 = x_18; } else { + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_18); x_23 = lean::box(0); } @@ -2044,14 +2044,14 @@ else { obj* x_5; obj* x_7; obj* x_9; uint8 x_13; uint8 x_14; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -2122,14 +2122,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; uint8 x_11; x_5 = lean::cnstr_get(x_0, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_0, 1); -lean::inc(x_7); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_9 = x_0; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_0); x_9 = lean::box(0); } @@ -2206,14 +2206,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_8; uint8 x_9; x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_0, 1); -lean::inc(x_5); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_7 = x_0; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_0); x_7 = lean::box(0); } @@ -2348,14 +2348,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_13; obj* x_14; x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_1, 1); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } @@ -2829,14 +2829,14 @@ else { obj* x_6; obj* x_8; obj* x_10; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -2956,26 +2956,26 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_15; obj* x_18; obj* x_19; obj* x_20; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_11 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -3163,14 +3163,14 @@ else { obj* x_5; obj* x_7; obj* x_9; uint8 x_13; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -3394,14 +3394,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_14; obj* x_15; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -3599,14 +3599,14 @@ else { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } diff --git a/src/boot/init/data/list/instances.cpp b/src/boot/init/data/list/instances.cpp index 7cea371e70..42a3eaa334 100644 --- a/src/boot/init/data/list/instances.cpp +++ b/src/boot/init/data/list/instances.cpp @@ -65,12 +65,12 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -111,14 +111,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -160,12 +160,12 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -210,14 +210,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -260,12 +260,12 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -375,12 +375,12 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -421,14 +421,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -470,12 +470,12 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -520,14 +520,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -570,12 +570,12 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } diff --git a/src/boot/init/data/option/basic.cpp b/src/boot/init/data/option/basic.cpp index 101d63f404..ab51edd349 100644 --- a/src/boot/init/data/option/basic.cpp +++ b/src/boot/init/data/option/basic.cpp @@ -482,11 +482,11 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -572,11 +572,11 @@ else { obj* x_8; obj* x_10; x_8 = lean::cnstr_get(x_2, 0); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } diff --git a/src/boot/init/data/rbmap/basic.cpp b/src/boot/init/data/rbmap/basic.cpp index 7ca1d52139..40230040eb 100644 --- a/src/boot/init/data/rbmap/basic.cpp +++ b/src/boot/init/data/rbmap/basic.cpp @@ -1067,20 +1067,20 @@ case 1: { obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_9 = lean::cnstr_get(x_3, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_3, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_3, 2); -lean::inc(x_13); x_15 = lean::cnstr_get(x_3, 3); -lean::inc(x_15); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); - lean::cnstr_release(x_3, 3); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); + lean::cnstr_set(x_3, 3, lean::box(0)); x_17 = x_3; } else { + lean::inc(x_9); + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_3); x_17 = lean::box(0); } @@ -1127,20 +1127,20 @@ case 1: { obj* x_23; obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_32; obj* x_34; x_23 = lean::cnstr_get(x_0, 0); -lean::inc(x_23); x_25 = lean::cnstr_get(x_0, 1); -lean::inc(x_25); x_27 = lean::cnstr_get(x_0, 2); -lean::inc(x_27); x_29 = lean::cnstr_get(x_0, 3); -lean::inc(x_29); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_31 = x_0; } else { + lean::inc(x_23); + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_0); x_31 = lean::box(0); } @@ -1181,20 +1181,20 @@ case 1: { obj* x_39; obj* x_41; obj* x_43; obj* x_45; obj* x_47; obj* x_48; obj* x_49; obj* x_50; x_39 = lean::cnstr_get(x_3, 0); -lean::inc(x_39); x_41 = lean::cnstr_get(x_3, 1); -lean::inc(x_41); x_43 = lean::cnstr_get(x_3, 2); -lean::inc(x_43); x_45 = lean::cnstr_get(x_3, 3); -lean::inc(x_45); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); - lean::cnstr_release(x_3, 3); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); + lean::cnstr_set(x_3, 3, lean::box(0)); x_47 = x_3; } else { + lean::inc(x_39); + lean::inc(x_41); + lean::inc(x_43); + lean::inc(x_45); lean::dec(x_3); x_47 = lean::box(0); } @@ -1350,20 +1350,20 @@ case 1: { obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_9 = lean::cnstr_get(x_3, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_3, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_3, 2); -lean::inc(x_13); x_15 = lean::cnstr_get(x_3, 3); -lean::inc(x_15); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); - lean::cnstr_release(x_3, 3); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); + lean::cnstr_set(x_3, 3, lean::box(0)); x_17 = x_3; } else { + lean::inc(x_9); + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_3); x_17 = lean::box(0); } @@ -1410,20 +1410,20 @@ case 1: { obj* x_23; obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_32; obj* x_34; x_23 = lean::cnstr_get(x_0, 0); -lean::inc(x_23); x_25 = lean::cnstr_get(x_0, 1); -lean::inc(x_25); x_27 = lean::cnstr_get(x_0, 2); -lean::inc(x_27); x_29 = lean::cnstr_get(x_0, 3); -lean::inc(x_29); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_31 = x_0; } else { + lean::inc(x_23); + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_0); x_31 = lean::box(0); } @@ -1464,20 +1464,20 @@ case 1: { obj* x_39; obj* x_41; obj* x_43; obj* x_45; obj* x_47; obj* x_48; obj* x_49; obj* x_50; x_39 = lean::cnstr_get(x_3, 0); -lean::inc(x_39); x_41 = lean::cnstr_get(x_3, 1); -lean::inc(x_41); x_43 = lean::cnstr_get(x_3, 2); -lean::inc(x_43); x_45 = lean::cnstr_get(x_3, 3); -lean::inc(x_45); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); - lean::cnstr_release(x_3, 3); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); + lean::cnstr_set(x_3, 3, lean::box(0)); x_47 = x_3; } else { + lean::inc(x_39); + lean::inc(x_41); + lean::inc(x_43); + lean::inc(x_45); lean::dec(x_3); x_47 = lean::box(0); } @@ -1699,20 +1699,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -1782,20 +1782,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -1932,20 +1932,20 @@ case 1: { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 3); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -2038,20 +2038,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -2121,20 +2121,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -3131,11 +3131,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_8; obj* x_11; obj* x_12; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -3183,11 +3183,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_8; obj* x_11; obj* x_12; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -3235,11 +3235,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_8; obj* x_11; obj* x_12; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -3287,11 +3287,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_8; obj* x_11; obj* x_12; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -3520,20 +3520,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -3603,20 +3603,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -3803,20 +3803,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -3886,20 +3886,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -4734,20 +4734,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -4817,20 +4817,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -5136,20 +5136,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -5219,20 +5219,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } diff --git a/src/boot/init/data/rbtree/basic.cpp b/src/boot/init/data/rbtree/basic.cpp index d9f963a851..1e09b27716 100644 --- a/src/boot/init/data/rbtree/basic.cpp +++ b/src/boot/init/data/rbtree/basic.cpp @@ -619,11 +619,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_9; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -665,11 +665,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_9; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -745,20 +745,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -828,20 +828,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -1025,20 +1025,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -1108,20 +1108,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -1491,11 +1491,11 @@ else { obj* x_5; obj* x_7; obj* x_8; obj* x_11; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -1692,11 +1692,11 @@ else { obj* x_5; obj* x_7; obj* x_8; obj* x_11; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -1770,20 +1770,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -1853,20 +1853,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -2529,11 +2529,11 @@ else { obj* x_5; obj* x_7; obj* x_8; obj* x_11; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -2880,11 +2880,11 @@ else { obj* x_5; obj* x_7; obj* x_8; obj* x_11; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -3231,11 +3231,11 @@ else { obj* x_5; obj* x_7; obj* x_8; obj* x_11; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -3465,20 +3465,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -3548,20 +3548,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } diff --git a/src/boot/init/data/string/basic.cpp b/src/boot/init/data/string/basic.cpp index 3152db64a4..af75ddc664 100644 --- a/src/boot/init/data/string/basic.cpp +++ b/src/boot/init/data/string/basic.cpp @@ -504,14 +504,14 @@ else { obj* x_4; obj* x_6; obj* x_8; uint8 x_11; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } @@ -532,11 +532,11 @@ else { obj* x_15; obj* x_17; obj* x_18; obj* x_19; x_15 = lean::cnstr_get(x_12, 0); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -897,14 +897,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } diff --git a/src/boot/init/io.cpp b/src/boot/init/io.cpp index 91c11b8626..c9b63ddbe5 100644 --- a/src/boot/init/io.cpp +++ b/src/boot/init/io.cpp @@ -272,14 +272,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; lean::inc(x_1); x_4 = lean::apply_2(x_1, x_0, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -347,14 +347,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; lean::inc(x_0); x_4 = lean::apply_2(x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -363,11 +363,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_11; obj* x_13; obj* x_14; obj* x_15; lean::dec(x_0); x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_13 = x_5; } else { + lean::inc(x_11); lean::dec(x_5); x_13 = lean::box(0); } @@ -390,11 +390,11 @@ else { obj* x_16; obj* x_18; x_16 = lean::cnstr_get(x_5, 0); -lean::inc(x_16); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_18 = x_5; } else { + lean::inc(x_16); lean::dec(x_5); x_18 = lean::box(0); } @@ -1015,14 +1015,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = lean::apply_1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1030,11 +1030,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -1057,11 +1057,11 @@ else { obj* x_13; obj* x_15; obj* x_16; obj* x_17; x_13 = lean::cnstr_get(x_3, 0); -lean::inc(x_13); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_15 = x_3; } else { + lean::inc(x_13); lean::dec(x_3); x_15 = lean::box(0); } @@ -1098,14 +1098,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = lean::apply_1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1113,11 +1113,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -1140,11 +1140,11 @@ else { obj* x_13; obj* x_15; obj* x_16; obj* x_17; x_13 = lean::cnstr_get(x_3, 0); -lean::inc(x_13); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_15 = x_3; } else { + lean::inc(x_13); lean::dec(x_3); x_15 = lean::box(0); } @@ -1191,11 +1191,11 @@ if (lean::obj_tag(x_8) == 0) obj* x_14; obj* x_16; obj* x_17; lean::dec(x_1); x_14 = lean::cnstr_get(x_8, 0); -lean::inc(x_14); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_16 = x_8; } else { + lean::inc(x_14); lean::dec(x_8); x_16 = lean::box(0); } @@ -1213,11 +1213,11 @@ else { obj* x_18; obj* x_20; uint8 x_21; x_18 = lean::cnstr_get(x_8, 0); -lean::inc(x_18); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_20 = x_8; } else { + lean::inc(x_18); lean::dec(x_8); x_20 = lean::box(0); } @@ -1294,11 +1294,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_44; obj* x_46; obj* x_47; obj* x_48; lean::dec(x_0); x_44 = lean::cnstr_get(x_3, 0); -lean::inc(x_44); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_46 = x_3; } else { + lean::inc(x_44); lean::dec(x_3); x_46 = lean::box(0); } @@ -1317,11 +1317,11 @@ else { obj* x_49; obj* x_51; x_49 = lean::cnstr_get(x_3, 0); -lean::inc(x_49); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_51 = x_3; } else { + lean::inc(x_49); lean::dec(x_3); x_51 = lean::box(0); } @@ -1554,12 +1554,12 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_6; obj* x_7; x_2 = lean::apply_1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 1, lean::box(0)); x_5 = x_2; } else { + lean::inc(x_3); lean::dec(x_2); x_5 = lean::box(0); } @@ -1580,14 +1580,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = lean::apply_1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1595,11 +1595,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -1622,11 +1622,11 @@ else { obj* x_13; obj* x_15; obj* x_16; obj* x_17; x_13 = lean::cnstr_get(x_3, 0); -lean::inc(x_13); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_15 = x_3; } else { + lean::inc(x_13); lean::dec(x_3); x_15 = lean::box(0); } @@ -1671,14 +1671,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = l___private_init_io_12__put__str___at_io_println_x_27___spec__3(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1686,11 +1686,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -1726,12 +1726,12 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_6; obj* x_7; x_2 = l_io_println___at_io_println_x_27___spec__1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 1, lean::box(0)); x_5 = x_2; } else { + lean::inc(x_3); lean::dec(x_2); x_5 = lean::box(0); } @@ -1855,14 +1855,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; x_3 = lean::apply_1(x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -2067,14 +2067,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = lean::apply_2(x_0, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -2093,14 +2093,14 @@ else obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_2); x_17 = lean::cnstr_get(x_6, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_6, 1); -lean::inc(x_19); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_21 = x_6; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_6); x_21 = lean::box(0); } @@ -2165,14 +2165,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = lean::apply_2(x_0, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -2181,11 +2181,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_11; obj* x_13; obj* x_14; obj* x_15; lean::dec(x_1); x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_13 = x_5; } else { + lean::inc(x_11); lean::dec(x_5); x_13 = lean::box(0); } @@ -2208,14 +2208,14 @@ else { obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_24; x_16 = lean::cnstr_get(x_5, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_5, 1); -lean::inc(x_18); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_20 = x_5; } else { + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_5); x_20 = lean::box(0); } @@ -2231,11 +2231,11 @@ obj* x_29; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_18); lean::dec(x_20); x_29 = lean::cnstr_get(x_22, 0); -lean::inc(x_29); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_31 = x_22; } else { + lean::inc(x_29); lean::dec(x_22); x_31 = lean::box(0); } @@ -2521,14 +2521,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; lean::dec(x_1); x_4 = lean::apply_1(x_0, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } diff --git a/src/boot/init/lean/compiler/const_folding.cpp b/src/boot/init/lean/compiler/const_folding.cpp index 091b592627..8d857cb0ba 100644 --- a/src/boot/init/lean/compiler/const_folding.cpp +++ b/src/boot/init/lean/compiler/const_folding.cpp @@ -603,11 +603,11 @@ else { obj* x_10; obj* x_12; obj* x_13; x_10 = lean::cnstr_get(x_5, 0); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -972,26 +972,26 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_19; obj* x_20; obj* x_21; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_4, 1); -lean::inc(x_11); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_13 = x_4; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_4); x_13 = lean::box(0); } @@ -1070,11 +1070,11 @@ else { obj* x_7; obj* x_9; obj* x_10; x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_9 = x_3; } else { + lean::inc(x_7); lean::dec(x_3); x_9 = lean::box(0); } @@ -1433,11 +1433,11 @@ else { obj* x_12; obj* x_14; obj* x_16; x_12 = lean::cnstr_get(x_6, 0); -lean::inc(x_12); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_14 = x_6; } else { + lean::inc(x_12); lean::dec(x_6); x_14 = lean::box(0); } @@ -1784,11 +1784,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -1870,11 +1870,11 @@ else { obj* x_10; obj* x_12; uint32 x_13; uint32 x_14; uint8 x_15; x_10 = lean::cnstr_get(x_8, 0); -lean::inc(x_10); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_12 = x_8; } else { + lean::inc(x_10); lean::dec(x_8); x_12 = lean::box(0); } diff --git a/src/boot/init/lean/elaborator.cpp b/src/boot/init/lean/elaborator.cpp index 3abb787cf3..010478b2cc 100644 --- a/src/boot/init/lean/elaborator.cpp +++ b/src/boot/init/lean/elaborator.cpp @@ -764,20 +764,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -847,20 +847,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -1193,20 +1193,20 @@ case 1: { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_18; uint8 x_19; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); x_12 = lean::cnstr_get(x_1, 3); -lean::inc(x_12); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_14 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_1); x_14 = lean::box(0); } @@ -1276,20 +1276,20 @@ default: { obj* x_33; obj* x_35; obj* x_37; obj* x_39; obj* x_41; obj* x_45; uint8 x_46; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_1, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_1, 2); -lean::inc(x_37); x_39 = lean::cnstr_get(x_1, 3); -lean::inc(x_39); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); - lean::cnstr_release(x_1, 3); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); + lean::cnstr_set(x_1, 3, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_33); + lean::inc(x_35); + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_1); x_41 = lean::box(0); } @@ -1706,11 +1706,11 @@ if (lean::obj_tag(x_1) == 0) obj* x_3; obj* x_5; obj* x_6; obj* x_7; lean::dec(x_0); x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -2129,11 +2129,11 @@ if (lean::obj_tag(x_41) == 0) obj* x_43; obj* x_45; obj* x_46; lean::dec(x_36); x_43 = lean::cnstr_get(x_41, 0); -lean::inc(x_43); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_45 = x_41; } else { + lean::inc(x_43); lean::dec(x_41); x_45 = lean::box(0); } @@ -2149,35 +2149,35 @@ else { obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_63; obj* x_64; obj* x_65; obj* x_66; x_47 = lean::cnstr_get(x_41, 0); -lean::inc(x_47); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_49 = x_41; } else { + lean::inc(x_47); lean::dec(x_41); x_49 = lean::box(0); } x_50 = lean::cnstr_get(x_47, 0); -lean::inc(x_50); x_52 = lean::cnstr_get(x_47, 1); -lean::inc(x_52); if (lean::is_exclusive(x_47)) { - lean::cnstr_release(x_47, 0); - lean::cnstr_release(x_47, 1); + lean::cnstr_set(x_47, 0, lean::box(0)); + lean::cnstr_set(x_47, 1, lean::box(0)); x_54 = x_47; } else { + lean::inc(x_50); + lean::inc(x_52); lean::dec(x_47); x_54 = lean::box(0); } x_55 = lean::cnstr_get(x_50, 0); -lean::inc(x_55); x_57 = lean::cnstr_get(x_50, 1); -lean::inc(x_57); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); - lean::cnstr_release(x_50, 1); + lean::cnstr_set(x_50, 0, lean::box(0)); + lean::cnstr_set(x_50, 1, lean::box(0)); x_59 = x_50; } else { + lean::inc(x_55); + lean::inc(x_57); lean::dec(x_50); x_59 = lean::box(0); } @@ -2305,14 +2305,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -2325,11 +2325,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -2345,23 +2345,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -2461,14 +2461,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -2481,11 +2481,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -2501,23 +2501,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -2663,11 +2663,11 @@ obj* x_8; obj* x_10; obj* x_11; lean::dec(x_1); lean::dec(x_0); x_8 = lean::cnstr_get(x_5, 0); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -2683,23 +2683,23 @@ else { obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_26; x_12 = lean::cnstr_get(x_5, 0); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } x_15 = lean::cnstr_get(x_12, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_12, 1); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -3286,14 +3286,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_14; obj* x_16; obj* x_20; uint8 x_21; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -3399,14 +3399,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_16; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -3422,11 +3422,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_20 = lean::cnstr_get(x_16, 0); -lean::inc(x_20); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_22 = x_16; } else { + lean::inc(x_20); lean::dec(x_16); x_22 = lean::box(0); } @@ -3442,23 +3442,23 @@ else { obj* x_24; obj* x_26; obj* x_27; obj* x_29; obj* x_31; obj* x_32; x_24 = lean::cnstr_get(x_16, 0); -lean::inc(x_24); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_26 = x_16; } else { + lean::inc(x_24); lean::dec(x_16); x_26 = lean::box(0); } x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_24, 1); -lean::inc(x_29); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); - lean::cnstr_release(x_24, 1); + lean::cnstr_set(x_24, 0, lean::box(0)); + lean::cnstr_set(x_24, 1, lean::box(0)); x_31 = x_24; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_24); x_31 = lean::box(0); } @@ -3531,14 +3531,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_10; obj* x_11; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -3586,14 +3586,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_15; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -3609,11 +3609,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_11); x_20 = lean::cnstr_get(x_15, 0); -lean::inc(x_20); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_22 = x_15; } else { + lean::inc(x_20); lean::dec(x_15); x_22 = lean::box(0); } @@ -3629,23 +3629,23 @@ else { obj* x_24; obj* x_26; obj* x_27; obj* x_29; obj* x_31; obj* x_32; obj* x_36; x_24 = lean::cnstr_get(x_15, 0); -lean::inc(x_24); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_26 = x_15; } else { + lean::inc(x_24); lean::dec(x_15); x_26 = lean::box(0); } x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_24, 1); -lean::inc(x_29); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); - lean::cnstr_release(x_24, 1); + lean::cnstr_set(x_24, 0, lean::box(0)); + lean::cnstr_set(x_24, 1, lean::box(0)); x_31 = x_24; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_24); x_31 = lean::box(0); } @@ -3681,14 +3681,14 @@ x_46 = lean::cnstr_get(x_36, 0); lean::inc(x_46); lean::dec(x_36); x_49 = lean::cnstr_get(x_46, 0); -lean::inc(x_49); x_51 = lean::cnstr_get(x_46, 1); -lean::inc(x_51); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); - lean::cnstr_release(x_46, 1); + lean::cnstr_set(x_46, 0, lean::box(0)); + lean::cnstr_set(x_46, 1, lean::box(0)); x_53 = x_46; } else { + lean::inc(x_49); + lean::inc(x_51); lean::dec(x_46); x_53 = lean::box(0); } @@ -3720,14 +3720,14 @@ x_64 = lean::cnstr_get(x_54, 0); lean::inc(x_64); lean::dec(x_54); x_67 = lean::cnstr_get(x_64, 0); -lean::inc(x_67); x_69 = lean::cnstr_get(x_64, 1); -lean::inc(x_69); if (lean::is_exclusive(x_64)) { - lean::cnstr_release(x_64, 0); - lean::cnstr_release(x_64, 1); + lean::cnstr_set(x_64, 0, lean::box(0)); + lean::cnstr_set(x_64, 1, lean::box(0)); x_71 = x_64; } else { + lean::inc(x_67); + lean::inc(x_69); lean::dec(x_64); x_71 = lean::box(0); } @@ -3792,14 +3792,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_16; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -3815,11 +3815,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_20 = lean::cnstr_get(x_16, 0); -lean::inc(x_20); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_22 = x_16; } else { + lean::inc(x_20); lean::dec(x_16); x_22 = lean::box(0); } @@ -3835,23 +3835,23 @@ else { obj* x_24; obj* x_26; obj* x_27; obj* x_29; obj* x_31; obj* x_32; x_24 = lean::cnstr_get(x_16, 0); -lean::inc(x_24); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_26 = x_16; } else { + lean::inc(x_24); lean::dec(x_16); x_26 = lean::box(0); } x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_24, 1); -lean::inc(x_29); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); - lean::cnstr_release(x_24, 1); + lean::cnstr_set(x_24, 0, lean::box(0)); + lean::cnstr_set(x_24, 1, lean::box(0)); x_31 = x_24; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_24); x_31 = lean::box(0); } @@ -3954,14 +3954,14 @@ obj* x_16; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; lean::dec(x_0); x_16 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__6(x_4); x_17 = lean::cnstr_get(x_16, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_16, 1); -lean::inc(x_19); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); x_21 = x_16; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_16); x_21 = lean::box(0); } @@ -4001,14 +4001,14 @@ obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_32 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__6(x_4); x_33 = lean::cnstr_get(x_32, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_32, 1); -lean::inc(x_35); if (lean::is_exclusive(x_32)) { - lean::cnstr_release(x_32, 0); - lean::cnstr_release(x_32, 1); + lean::cnstr_set(x_32, 0, lean::box(0)); + lean::cnstr_set(x_32, 1, lean::box(0)); x_37 = x_32; } else { + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_32); x_37 = lean::box(0); } @@ -4071,14 +4071,14 @@ obj* x_16; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; lean::dec(x_0); x_16 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__7(x_4); x_17 = lean::cnstr_get(x_16, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_16, 1); -lean::inc(x_19); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); x_21 = x_16; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_16); x_21 = lean::box(0); } @@ -4126,14 +4126,14 @@ obj* x_37; obj* x_38; obj* x_40; obj* x_42; obj* x_43; obj* x_44; lean::dec(x_0); x_37 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__7(x_4); x_38 = lean::cnstr_get(x_37, 0); -lean::inc(x_38); x_40 = lean::cnstr_get(x_37, 1); -lean::inc(x_40); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); - lean::cnstr_release(x_37, 1); + lean::cnstr_set(x_37, 0, lean::box(0)); + lean::cnstr_set(x_37, 1, lean::box(0)); x_42 = x_37; } else { + lean::inc(x_38); + lean::inc(x_40); lean::dec(x_37); x_42 = lean::box(0); } @@ -4173,14 +4173,14 @@ obj* x_53; obj* x_54; obj* x_56; obj* x_58; obj* x_59; obj* x_60; lean::dec(x_0); x_53 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__7(x_4); x_54 = lean::cnstr_get(x_53, 0); -lean::inc(x_54); x_56 = lean::cnstr_get(x_53, 1); -lean::inc(x_56); if (lean::is_exclusive(x_53)) { - lean::cnstr_release(x_53, 0); - lean::cnstr_release(x_53, 1); + lean::cnstr_set(x_53, 0, lean::box(0)); + lean::cnstr_set(x_53, 1, lean::box(0)); x_58 = x_53; } else { + lean::inc(x_54); + lean::inc(x_56); lean::dec(x_53); x_58 = lean::box(0); } @@ -4239,14 +4239,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -4272,11 +4272,11 @@ lean::dec(x_13); lean::dec(x_2); lean::dec(x_17); x_29 = lean::cnstr_get(x_23, 0); -lean::inc(x_29); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_31 = x_23; } else { + lean::inc(x_29); lean::dec(x_23); x_31 = lean::box(0); } @@ -4292,23 +4292,23 @@ else { obj* x_33; obj* x_35; obj* x_36; obj* x_38; obj* x_40; obj* x_41; x_33 = lean::cnstr_get(x_23, 0); -lean::inc(x_33); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_33); lean::dec(x_23); x_35 = lean::box(0); } x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); x_38 = lean::cnstr_get(x_33, 1); -lean::inc(x_38); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); + lean::cnstr_set(x_33, 0, lean::box(0)); + lean::cnstr_set(x_33, 1, lean::box(0)); x_40 = x_33; } else { + lean::inc(x_36); + lean::inc(x_38); lean::dec(x_33); x_40 = lean::box(0); } @@ -4391,11 +4391,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_78 = lean::cnstr_get(x_73, 0); -lean::inc(x_78); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_80 = x_73; } else { + lean::inc(x_78); lean::dec(x_73); x_80 = lean::box(0); } @@ -4411,23 +4411,23 @@ else { obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; x_82 = lean::cnstr_get(x_73, 0); -lean::inc(x_82); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_84 = x_73; } else { + lean::inc(x_82); lean::dec(x_73); x_84 = lean::box(0); } x_85 = lean::cnstr_get(x_82, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_82, 1); -lean::inc(x_87); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); - lean::cnstr_release(x_82, 1); + lean::cnstr_set(x_82, 0, lean::box(0)); + lean::cnstr_set(x_82, 1, lean::box(0)); x_89 = x_82; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_82); x_89 = lean::box(0); } @@ -4540,14 +4540,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -4570,11 +4570,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -4590,23 +4590,23 @@ else { obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; x_30 = lean::cnstr_get(x_21, 0); -lean::inc(x_30); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_32 = x_21; } else { + lean::inc(x_30); lean::dec(x_21); x_32 = lean::box(0); } x_33 = lean::cnstr_get(x_30, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_30, 1); -lean::inc(x_35); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); - lean::cnstr_release(x_30, 1); + lean::cnstr_set(x_30, 0, lean::box(0)); + lean::cnstr_set(x_30, 1, lean::box(0)); x_37 = x_30; } else { + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_30); x_37 = lean::box(0); } @@ -4688,11 +4688,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_71 = lean::cnstr_get(x_66, 0); -lean::inc(x_71); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_73 = x_66; } else { + lean::inc(x_71); lean::dec(x_66); x_73 = lean::box(0); } @@ -4708,23 +4708,23 @@ else { obj* x_75; obj* x_77; obj* x_78; obj* x_80; obj* x_82; obj* x_83; x_75 = lean::cnstr_get(x_66, 0); -lean::inc(x_75); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_77 = x_66; } else { + lean::inc(x_75); lean::dec(x_66); x_77 = lean::box(0); } x_78 = lean::cnstr_get(x_75, 0); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 1); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -4798,11 +4798,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_111 = lean::cnstr_get(x_106, 0); -lean::inc(x_111); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_113 = x_106; } else { + lean::inc(x_111); lean::dec(x_106); x_113 = lean::box(0); } @@ -4818,23 +4818,23 @@ else { obj* x_115; obj* x_117; obj* x_118; obj* x_120; obj* x_122; obj* x_123; x_115 = lean::cnstr_get(x_106, 0); -lean::inc(x_115); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_117 = x_106; } else { + lean::inc(x_115); lean::dec(x_106); x_117 = lean::box(0); } x_118 = lean::cnstr_get(x_115, 0); -lean::inc(x_118); x_120 = lean::cnstr_get(x_115, 1); -lean::inc(x_120); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); - lean::cnstr_release(x_115, 1); + lean::cnstr_set(x_115, 0, lean::box(0)); + lean::cnstr_set(x_115, 1, lean::box(0)); x_122 = x_115; } else { + lean::inc(x_118); + lean::inc(x_120); lean::dec(x_115); x_122 = lean::box(0); } @@ -4916,14 +4916,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -4949,11 +4949,11 @@ lean::dec(x_13); lean::dec(x_2); lean::dec(x_17); x_29 = lean::cnstr_get(x_23, 0); -lean::inc(x_29); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_31 = x_23; } else { + lean::inc(x_29); lean::dec(x_23); x_31 = lean::box(0); } @@ -4969,23 +4969,23 @@ else { obj* x_33; obj* x_35; obj* x_36; obj* x_38; obj* x_40; obj* x_41; x_33 = lean::cnstr_get(x_23, 0); -lean::inc(x_33); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_33); lean::dec(x_23); x_35 = lean::box(0); } x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); x_38 = lean::cnstr_get(x_33, 1); -lean::inc(x_38); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); + lean::cnstr_set(x_33, 0, lean::box(0)); + lean::cnstr_set(x_33, 1, lean::box(0)); x_40 = x_33; } else { + lean::inc(x_36); + lean::inc(x_38); lean::dec(x_33); x_40 = lean::box(0); } @@ -5068,11 +5068,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_78 = lean::cnstr_get(x_73, 0); -lean::inc(x_78); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_80 = x_73; } else { + lean::inc(x_78); lean::dec(x_73); x_80 = lean::box(0); } @@ -5088,23 +5088,23 @@ else { obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; x_82 = lean::cnstr_get(x_73, 0); -lean::inc(x_82); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_84 = x_73; } else { + lean::inc(x_82); lean::dec(x_73); x_84 = lean::box(0); } x_85 = lean::cnstr_get(x_82, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_82, 1); -lean::inc(x_87); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); - lean::cnstr_release(x_82, 1); + lean::cnstr_set(x_82, 0, lean::box(0)); + lean::cnstr_set(x_82, 1, lean::box(0)); x_89 = x_82; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_82); x_89 = lean::box(0); } @@ -5208,14 +5208,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -5238,11 +5238,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -5258,23 +5258,23 @@ else { obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; x_30 = lean::cnstr_get(x_21, 0); -lean::inc(x_30); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_32 = x_21; } else { + lean::inc(x_30); lean::dec(x_21); x_32 = lean::box(0); } x_33 = lean::cnstr_get(x_30, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_30, 1); -lean::inc(x_35); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); - lean::cnstr_release(x_30, 1); + lean::cnstr_set(x_30, 0, lean::box(0)); + lean::cnstr_set(x_30, 1, lean::box(0)); x_37 = x_30; } else { + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_30); x_37 = lean::box(0); } @@ -5356,11 +5356,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_71 = lean::cnstr_get(x_66, 0); -lean::inc(x_71); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_73 = x_66; } else { + lean::inc(x_71); lean::dec(x_66); x_73 = lean::box(0); } @@ -5376,23 +5376,23 @@ else { obj* x_75; obj* x_77; obj* x_78; obj* x_80; obj* x_82; obj* x_83; x_75 = lean::cnstr_get(x_66, 0); -lean::inc(x_75); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_77 = x_66; } else { + lean::inc(x_75); lean::dec(x_66); x_77 = lean::box(0); } x_78 = lean::cnstr_get(x_75, 0); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 1); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -5466,11 +5466,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_111 = lean::cnstr_get(x_106, 0); -lean::inc(x_111); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_113 = x_106; } else { + lean::inc(x_111); lean::dec(x_106); x_113 = lean::box(0); } @@ -5486,23 +5486,23 @@ else { obj* x_115; obj* x_117; obj* x_118; obj* x_120; obj* x_122; obj* x_123; x_115 = lean::cnstr_get(x_106, 0); -lean::inc(x_115); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_117 = x_106; } else { + lean::inc(x_115); lean::dec(x_106); x_117 = lean::box(0); } x_118 = lean::cnstr_get(x_115, 0); -lean::inc(x_118); x_120 = lean::cnstr_get(x_115, 1); -lean::inc(x_120); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); - lean::cnstr_release(x_115, 1); + lean::cnstr_set(x_115, 0, lean::box(0)); + lean::cnstr_set(x_115, 1, lean::box(0)); x_122 = x_115; } else { + lean::inc(x_118); + lean::inc(x_120); lean::dec(x_115); x_122 = lean::box(0); } @@ -5584,14 +5584,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -5617,11 +5617,11 @@ lean::dec(x_13); lean::dec(x_2); lean::dec(x_17); x_29 = lean::cnstr_get(x_23, 0); -lean::inc(x_29); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_31 = x_23; } else { + lean::inc(x_29); lean::dec(x_23); x_31 = lean::box(0); } @@ -5637,23 +5637,23 @@ else { obj* x_33; obj* x_35; obj* x_36; obj* x_38; obj* x_40; obj* x_41; x_33 = lean::cnstr_get(x_23, 0); -lean::inc(x_33); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_33); lean::dec(x_23); x_35 = lean::box(0); } x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); x_38 = lean::cnstr_get(x_33, 1); -lean::inc(x_38); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); + lean::cnstr_set(x_33, 0, lean::box(0)); + lean::cnstr_set(x_33, 1, lean::box(0)); x_40 = x_33; } else { + lean::inc(x_36); + lean::inc(x_38); lean::dec(x_33); x_40 = lean::box(0); } @@ -5736,11 +5736,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_78 = lean::cnstr_get(x_73, 0); -lean::inc(x_78); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_80 = x_73; } else { + lean::inc(x_78); lean::dec(x_73); x_80 = lean::box(0); } @@ -5756,23 +5756,23 @@ else { obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; x_82 = lean::cnstr_get(x_73, 0); -lean::inc(x_82); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_84 = x_73; } else { + lean::inc(x_82); lean::dec(x_73); x_84 = lean::box(0); } x_85 = lean::cnstr_get(x_82, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_82, 1); -lean::inc(x_87); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); - lean::cnstr_release(x_82, 1); + lean::cnstr_set(x_82, 0, lean::box(0)); + lean::cnstr_set(x_82, 1, lean::box(0)); x_89 = x_82; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_82); x_89 = lean::box(0); } @@ -5876,14 +5876,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -5906,11 +5906,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -5926,23 +5926,23 @@ else { obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; x_30 = lean::cnstr_get(x_21, 0); -lean::inc(x_30); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_32 = x_21; } else { + lean::inc(x_30); lean::dec(x_21); x_32 = lean::box(0); } x_33 = lean::cnstr_get(x_30, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_30, 1); -lean::inc(x_35); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); - lean::cnstr_release(x_30, 1); + lean::cnstr_set(x_30, 0, lean::box(0)); + lean::cnstr_set(x_30, 1, lean::box(0)); x_37 = x_30; } else { + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_30); x_37 = lean::box(0); } @@ -6024,11 +6024,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_71 = lean::cnstr_get(x_66, 0); -lean::inc(x_71); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_73 = x_66; } else { + lean::inc(x_71); lean::dec(x_66); x_73 = lean::box(0); } @@ -6044,23 +6044,23 @@ else { obj* x_75; obj* x_77; obj* x_78; obj* x_80; obj* x_82; obj* x_83; x_75 = lean::cnstr_get(x_66, 0); -lean::inc(x_75); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_77 = x_66; } else { + lean::inc(x_75); lean::dec(x_66); x_77 = lean::box(0); } x_78 = lean::cnstr_get(x_75, 0); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 1); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -6134,11 +6134,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_111 = lean::cnstr_get(x_106, 0); -lean::inc(x_111); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_113 = x_106; } else { + lean::inc(x_111); lean::dec(x_106); x_113 = lean::box(0); } @@ -6154,23 +6154,23 @@ else { obj* x_115; obj* x_117; obj* x_118; obj* x_120; obj* x_122; obj* x_123; x_115 = lean::cnstr_get(x_106, 0); -lean::inc(x_115); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_117 = x_106; } else { + lean::inc(x_115); lean::dec(x_106); x_117 = lean::box(0); } x_118 = lean::cnstr_get(x_115, 0); -lean::inc(x_118); x_120 = lean::cnstr_get(x_115, 1); -lean::inc(x_120); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); - lean::cnstr_release(x_115, 1); + lean::cnstr_set(x_115, 0, lean::box(0)); + lean::cnstr_set(x_115, 1, lean::box(0)); x_122 = x_115; } else { + lean::inc(x_118); + lean::inc(x_120); lean::dec(x_115); x_122 = lean::box(0); } @@ -6252,14 +6252,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -6285,11 +6285,11 @@ lean::dec(x_13); lean::dec(x_2); lean::dec(x_17); x_29 = lean::cnstr_get(x_23, 0); -lean::inc(x_29); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_31 = x_23; } else { + lean::inc(x_29); lean::dec(x_23); x_31 = lean::box(0); } @@ -6305,23 +6305,23 @@ else { obj* x_33; obj* x_35; obj* x_36; obj* x_38; obj* x_40; obj* x_41; x_33 = lean::cnstr_get(x_23, 0); -lean::inc(x_33); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_33); lean::dec(x_23); x_35 = lean::box(0); } x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); x_38 = lean::cnstr_get(x_33, 1); -lean::inc(x_38); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); + lean::cnstr_set(x_33, 0, lean::box(0)); + lean::cnstr_set(x_33, 1, lean::box(0)); x_40 = x_33; } else { + lean::inc(x_36); + lean::inc(x_38); lean::dec(x_33); x_40 = lean::box(0); } @@ -6404,11 +6404,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_78 = lean::cnstr_get(x_73, 0); -lean::inc(x_78); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_80 = x_73; } else { + lean::inc(x_78); lean::dec(x_73); x_80 = lean::box(0); } @@ -6424,23 +6424,23 @@ else { obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; x_82 = lean::cnstr_get(x_73, 0); -lean::inc(x_82); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_84 = x_73; } else { + lean::inc(x_82); lean::dec(x_73); x_84 = lean::box(0); } x_85 = lean::cnstr_get(x_82, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_82, 1); -lean::inc(x_87); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); - lean::cnstr_release(x_82, 1); + lean::cnstr_set(x_82, 0, lean::box(0)); + lean::cnstr_set(x_82, 1, lean::box(0)); x_89 = x_82; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_82); x_89 = lean::box(0); } @@ -6544,14 +6544,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -6574,11 +6574,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -6594,23 +6594,23 @@ else { obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; x_30 = lean::cnstr_get(x_21, 0); -lean::inc(x_30); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_32 = x_21; } else { + lean::inc(x_30); lean::dec(x_21); x_32 = lean::box(0); } x_33 = lean::cnstr_get(x_30, 0); -lean::inc(x_33); x_35 = lean::cnstr_get(x_30, 1); -lean::inc(x_35); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); - lean::cnstr_release(x_30, 1); + lean::cnstr_set(x_30, 0, lean::box(0)); + lean::cnstr_set(x_30, 1, lean::box(0)); x_37 = x_30; } else { + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_30); x_37 = lean::box(0); } @@ -6692,11 +6692,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_71 = lean::cnstr_get(x_66, 0); -lean::inc(x_71); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_73 = x_66; } else { + lean::inc(x_71); lean::dec(x_66); x_73 = lean::box(0); } @@ -6712,23 +6712,23 @@ else { obj* x_75; obj* x_77; obj* x_78; obj* x_80; obj* x_82; obj* x_83; x_75 = lean::cnstr_get(x_66, 0); -lean::inc(x_75); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_77 = x_66; } else { + lean::inc(x_75); lean::dec(x_66); x_77 = lean::box(0); } x_78 = lean::cnstr_get(x_75, 0); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 1); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -6802,11 +6802,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_111 = lean::cnstr_get(x_106, 0); -lean::inc(x_111); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_113 = x_106; } else { + lean::inc(x_111); lean::dec(x_106); x_113 = lean::box(0); } @@ -6822,23 +6822,23 @@ else { obj* x_115; obj* x_117; obj* x_118; obj* x_120; obj* x_122; obj* x_123; x_115 = lean::cnstr_get(x_106, 0); -lean::inc(x_115); if (lean::is_exclusive(x_106)) { - lean::cnstr_release(x_106, 0); + lean::cnstr_set(x_106, 0, lean::box(0)); x_117 = x_106; } else { + lean::inc(x_115); lean::dec(x_106); x_117 = lean::box(0); } x_118 = lean::cnstr_get(x_115, 0); -lean::inc(x_118); x_120 = lean::cnstr_get(x_115, 1); -lean::inc(x_120); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); - lean::cnstr_release(x_115, 1); + lean::cnstr_set(x_115, 0, lean::box(0)); + lean::cnstr_set(x_115, 1, lean::box(0)); x_122 = x_115; } else { + lean::inc(x_118); + lean::inc(x_120); lean::dec(x_115); x_122 = lean::box(0); } @@ -6919,14 +6919,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -6939,11 +6939,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -6959,23 +6959,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -7048,14 +7048,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_10; obj* x_11; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7122,14 +7122,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -7142,11 +7142,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -7162,23 +7162,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -7965,11 +7965,11 @@ obj* x_69; obj* x_71; obj* x_72; lean::dec(x_1); lean::dec(x_0); x_69 = lean::cnstr_get(x_66, 0); -lean::inc(x_69); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_71 = x_66; } else { + lean::inc(x_69); lean::dec(x_66); x_71 = lean::box(0); } @@ -7985,23 +7985,23 @@ else { obj* x_73; obj* x_75; obj* x_76; obj* x_78; obj* x_80; x_73 = lean::cnstr_get(x_66, 0); -lean::inc(x_73); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_75 = x_66; } else { + lean::inc(x_73); lean::dec(x_66); x_75 = lean::box(0); } x_76 = lean::cnstr_get(x_73, 0); -lean::inc(x_76); x_78 = lean::cnstr_get(x_73, 1); -lean::inc(x_78); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); - lean::cnstr_release(x_73, 1); + lean::cnstr_set(x_73, 0, lean::box(0)); + lean::cnstr_set(x_73, 1, lean::box(0)); x_80 = x_73; } else { + lean::inc(x_76); + lean::inc(x_78); lean::dec(x_73); x_80 = lean::box(0); } @@ -8109,11 +8109,11 @@ if (lean::obj_tag(x_122) == 0) obj* x_124; obj* x_126; obj* x_127; lean::dec(x_117); x_124 = lean::cnstr_get(x_122, 0); -lean::inc(x_124); if (lean::is_exclusive(x_122)) { - lean::cnstr_release(x_122, 0); + lean::cnstr_set(x_122, 0, lean::box(0)); x_126 = x_122; } else { + lean::inc(x_124); lean::dec(x_122); x_126 = lean::box(0); } @@ -8130,23 +8130,23 @@ else { obj* x_128; obj* x_130; obj* x_131; obj* x_133; obj* x_135; obj* x_136; obj* x_138; obj* x_140; x_128 = lean::cnstr_get(x_122, 0); -lean::inc(x_128); if (lean::is_exclusive(x_122)) { - lean::cnstr_release(x_122, 0); + lean::cnstr_set(x_122, 0, lean::box(0)); x_130 = x_122; } else { + lean::inc(x_128); lean::dec(x_122); x_130 = lean::box(0); } x_131 = lean::cnstr_get(x_128, 0); -lean::inc(x_131); x_133 = lean::cnstr_get(x_128, 1); -lean::inc(x_133); if (lean::is_exclusive(x_128)) { - lean::cnstr_release(x_128, 0); - lean::cnstr_release(x_128, 1); + lean::cnstr_set(x_128, 0, lean::box(0)); + lean::cnstr_set(x_128, 1, lean::box(0)); x_135 = x_128; } else { + lean::inc(x_131); + lean::inc(x_133); lean::dec(x_128); x_135 = lean::box(0); } @@ -8284,27 +8284,27 @@ x_203 = lean::cnstr_get(x_202, 3); lean::inc(x_203); x_205 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__6(x_203); x_206 = lean::cnstr_get(x_205, 0); -lean::inc(x_206); x_208 = lean::cnstr_get(x_205, 1); -lean::inc(x_208); if (lean::is_exclusive(x_205)) { - lean::cnstr_release(x_205, 0); - lean::cnstr_release(x_205, 1); + lean::cnstr_set(x_205, 0, lean::box(0)); + lean::cnstr_set(x_205, 1, lean::box(0)); x_210 = x_205; } else { + lean::inc(x_206); + lean::inc(x_208); lean::dec(x_205); x_210 = lean::box(0); } x_211 = l_list_span___main___at_lean_elaborator_to__pexpr___main___spec__7(x_208); x_212 = lean::cnstr_get(x_211, 0); -lean::inc(x_212); x_214 = lean::cnstr_get(x_211, 1); -lean::inc(x_214); if (lean::is_exclusive(x_211)) { - lean::cnstr_release(x_211, 0); - lean::cnstr_release(x_211, 1); + lean::cnstr_set(x_211, 0, lean::box(0)); + lean::cnstr_set(x_211, 1, lean::box(0)); x_216 = x_211; } else { + lean::inc(x_212); + lean::inc(x_214); lean::dec(x_211); x_216 = lean::box(0); } @@ -8325,11 +8325,11 @@ lean::dec(x_216); lean::dec(x_212); lean::dec(x_210); x_227 = lean::cnstr_get(x_219, 0); -lean::inc(x_227); if (lean::is_exclusive(x_219)) { - lean::cnstr_release(x_219, 0); + lean::cnstr_set(x_219, 0, lean::box(0)); x_229 = x_219; } else { + lean::inc(x_227); lean::dec(x_219); x_229 = lean::box(0); } @@ -8345,11 +8345,11 @@ else { obj* x_231; obj* x_233; obj* x_234; obj* x_236; obj* x_239; obj* x_243; x_231 = lean::cnstr_get(x_219, 0); -lean::inc(x_231); if (lean::is_exclusive(x_219)) { - lean::cnstr_release(x_219, 0); + lean::cnstr_set(x_219, 0, lean::box(0)); x_233 = x_219; } else { + lean::inc(x_231); lean::dec(x_219); x_233 = lean::box(0); } @@ -8519,14 +8519,14 @@ else { obj* x_328; obj* x_330; obj* x_332; obj* x_333; x_328 = lean::cnstr_get(x_214, 0); -lean::inc(x_328); x_330 = lean::cnstr_get(x_214, 1); -lean::inc(x_330); if (lean::is_exclusive(x_214)) { - lean::cnstr_release(x_214, 0); - lean::cnstr_release(x_214, 1); + lean::cnstr_set(x_214, 0, lean::box(0)); + lean::cnstr_set(x_214, 1, lean::box(0)); x_332 = x_214; } else { + lean::inc(x_328); + lean::inc(x_330); lean::dec(x_214); x_332 = lean::box(0); } @@ -8558,11 +8558,11 @@ lean::dec(x_212); lean::dec(x_210); lean::dec(x_206); x_354 = lean::cnstr_get(x_344, 0); -lean::inc(x_354); if (lean::is_exclusive(x_344)) { - lean::cnstr_release(x_344, 0); + lean::cnstr_set(x_344, 0, lean::box(0)); x_356 = x_344; } else { + lean::inc(x_354); lean::dec(x_344); x_356 = lean::box(0); } @@ -8578,11 +8578,11 @@ else { obj* x_358; obj* x_360; obj* x_361; obj* x_363; obj* x_368; x_358 = lean::cnstr_get(x_344, 0); -lean::inc(x_358); if (lean::is_exclusive(x_344)) { - lean::cnstr_release(x_344, 0); + lean::cnstr_set(x_344, 0, lean::box(0)); x_360 = x_344; } else { + lean::inc(x_358); lean::dec(x_344); x_360 = lean::box(0); } @@ -8817,11 +8817,11 @@ lean::dec(x_216); lean::dec(x_212); lean::dec(x_210); x_496 = lean::cnstr_get(x_487, 0); -lean::inc(x_496); if (lean::is_exclusive(x_487)) { - lean::cnstr_release(x_487, 0); + lean::cnstr_set(x_487, 0, lean::box(0)); x_498 = x_487; } else { + lean::inc(x_496); lean::dec(x_487); x_498 = lean::box(0); } @@ -8837,11 +8837,11 @@ else { obj* x_500; obj* x_502; obj* x_503; obj* x_505; obj* x_508; obj* x_512; x_500 = lean::cnstr_get(x_487, 0); -lean::inc(x_500); if (lean::is_exclusive(x_487)) { - lean::cnstr_release(x_487, 0); + lean::cnstr_set(x_487, 0, lean::box(0)); x_502 = x_487; } else { + lean::inc(x_500); lean::dec(x_487); x_502 = lean::box(0); } @@ -9039,11 +9039,11 @@ lean::dec(x_212); lean::dec(x_210); lean::dec(x_206); x_618 = lean::cnstr_get(x_608, 0); -lean::inc(x_618); if (lean::is_exclusive(x_608)) { - lean::cnstr_release(x_608, 0); + lean::cnstr_set(x_608, 0, lean::box(0)); x_620 = x_608; } else { + lean::inc(x_618); lean::dec(x_608); x_620 = lean::box(0); } @@ -9059,11 +9059,11 @@ else { obj* x_622; obj* x_624; obj* x_625; obj* x_627; obj* x_632; x_622 = lean::cnstr_get(x_608, 0); -lean::inc(x_622); if (lean::is_exclusive(x_608)) { - lean::cnstr_release(x_608, 0); + lean::cnstr_set(x_608, 0, lean::box(0)); x_624 = x_608; } else { + lean::inc(x_622); lean::dec(x_608); x_624 = lean::box(0); } @@ -9295,11 +9295,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_755 = lean::cnstr_get(x_750, 0); -lean::inc(x_755); if (lean::is_exclusive(x_750)) { - lean::cnstr_release(x_750, 0); + lean::cnstr_set(x_750, 0, lean::box(0)); x_757 = x_750; } else { + lean::inc(x_755); lean::dec(x_750); x_757 = lean::box(0); } @@ -9318,14 +9318,14 @@ x_759 = lean::cnstr_get(x_750, 0); lean::inc(x_759); lean::dec(x_750); x_762 = lean::cnstr_get(x_759, 0); -lean::inc(x_762); x_764 = lean::cnstr_get(x_759, 1); -lean::inc(x_764); if (lean::is_exclusive(x_759)) { - lean::cnstr_release(x_759, 0); - lean::cnstr_release(x_759, 1); + lean::cnstr_set(x_759, 0, lean::box(0)); + lean::cnstr_set(x_759, 1, lean::box(0)); x_766 = x_759; } else { + lean::inc(x_762); + lean::inc(x_764); lean::dec(x_759); x_766 = lean::box(0); } @@ -9518,11 +9518,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_870 = lean::cnstr_get(x_866, 0); -lean::inc(x_870); if (lean::is_exclusive(x_866)) { - lean::cnstr_release(x_866, 0); + lean::cnstr_set(x_866, 0, lean::box(0)); x_872 = x_866; } else { + lean::inc(x_870); lean::dec(x_866); x_872 = lean::box(0); } @@ -9541,14 +9541,14 @@ x_874 = lean::cnstr_get(x_866, 0); lean::inc(x_874); lean::dec(x_866); x_877 = lean::cnstr_get(x_874, 0); -lean::inc(x_877); x_879 = lean::cnstr_get(x_874, 1); -lean::inc(x_879); if (lean::is_exclusive(x_874)) { - lean::cnstr_release(x_874, 0); - lean::cnstr_release(x_874, 1); + lean::cnstr_set(x_874, 0, lean::box(0)); + lean::cnstr_set(x_874, 1, lean::box(0)); x_881 = x_874; } else { + lean::inc(x_877); + lean::inc(x_879); lean::dec(x_874); x_881 = lean::box(0); } @@ -9588,11 +9588,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_900 = lean::cnstr_get(x_896, 0); -lean::inc(x_900); if (lean::is_exclusive(x_896)) { - lean::cnstr_release(x_896, 0); + lean::cnstr_set(x_896, 0, lean::box(0)); x_902 = x_896; } else { + lean::inc(x_900); lean::dec(x_896); x_902 = lean::box(0); } @@ -9611,14 +9611,14 @@ x_904 = lean::cnstr_get(x_896, 0); lean::inc(x_904); lean::dec(x_896); x_907 = lean::cnstr_get(x_904, 0); -lean::inc(x_907); x_909 = lean::cnstr_get(x_904, 1); -lean::inc(x_909); if (lean::is_exclusive(x_904)) { - lean::cnstr_release(x_904, 0); - lean::cnstr_release(x_904, 1); + lean::cnstr_set(x_904, 0, lean::box(0)); + lean::cnstr_set(x_904, 1, lean::box(0)); x_911 = x_904; } else { + lean::inc(x_907); + lean::inc(x_909); lean::dec(x_904); x_911 = lean::box(0); } @@ -9669,11 +9669,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_938 = lean::cnstr_get(x_934, 0); -lean::inc(x_938); if (lean::is_exclusive(x_934)) { - lean::cnstr_release(x_934, 0); + lean::cnstr_set(x_934, 0, lean::box(0)); x_940 = x_934; } else { + lean::inc(x_938); lean::dec(x_934); x_940 = lean::box(0); } @@ -9692,14 +9692,14 @@ x_942 = lean::cnstr_get(x_934, 0); lean::inc(x_942); lean::dec(x_934); x_945 = lean::cnstr_get(x_942, 0); -lean::inc(x_945); x_947 = lean::cnstr_get(x_942, 1); -lean::inc(x_947); if (lean::is_exclusive(x_942)) { - lean::cnstr_release(x_942, 0); - lean::cnstr_release(x_942, 1); + lean::cnstr_set(x_942, 0, lean::box(0)); + lean::cnstr_set(x_942, 1, lean::box(0)); x_949 = x_942; } else { + lean::inc(x_945); + lean::inc(x_947); lean::dec(x_942); x_949 = lean::box(0); } @@ -9729,11 +9729,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_959 = lean::cnstr_get(x_955, 0); -lean::inc(x_959); if (lean::is_exclusive(x_955)) { - lean::cnstr_release(x_955, 0); + lean::cnstr_set(x_955, 0, lean::box(0)); x_961 = x_955; } else { + lean::inc(x_959); lean::dec(x_955); x_961 = lean::box(0); } @@ -9752,14 +9752,14 @@ x_963 = lean::cnstr_get(x_955, 0); lean::inc(x_963); lean::dec(x_955); x_966 = lean::cnstr_get(x_963, 0); -lean::inc(x_966); x_968 = lean::cnstr_get(x_963, 1); -lean::inc(x_968); if (lean::is_exclusive(x_963)) { - lean::cnstr_release(x_963, 0); - lean::cnstr_release(x_963, 1); + lean::cnstr_set(x_963, 0, lean::box(0)); + lean::cnstr_set(x_963, 1, lean::box(0)); x_970 = x_963; } else { + lean::inc(x_966); + lean::inc(x_968); lean::dec(x_963); x_970 = lean::box(0); } @@ -9809,11 +9809,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_986); x_995 = lean::cnstr_get(x_990, 0); -lean::inc(x_995); if (lean::is_exclusive(x_990)) { - lean::cnstr_release(x_990, 0); + lean::cnstr_set(x_990, 0, lean::box(0)); x_997 = x_990; } else { + lean::inc(x_995); lean::dec(x_990); x_997 = lean::box(0); } @@ -9832,14 +9832,14 @@ x_999 = lean::cnstr_get(x_990, 0); lean::inc(x_999); lean::dec(x_990); x_1002 = lean::cnstr_get(x_999, 0); -lean::inc(x_1002); x_1004 = lean::cnstr_get(x_999, 1); -lean::inc(x_1004); if (lean::is_exclusive(x_999)) { - lean::cnstr_release(x_999, 0); - lean::cnstr_release(x_999, 1); + lean::cnstr_set(x_999, 0, lean::box(0)); + lean::cnstr_set(x_999, 1, lean::box(0)); x_1006 = x_999; } else { + lean::inc(x_1002); + lean::inc(x_1004); lean::dec(x_999); x_1006 = lean::box(0); } @@ -9879,11 +9879,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1016); x_1025 = lean::cnstr_get(x_1020, 0); -lean::inc(x_1025); if (lean::is_exclusive(x_1020)) { - lean::cnstr_release(x_1020, 0); + lean::cnstr_set(x_1020, 0, lean::box(0)); x_1027 = x_1020; } else { + lean::inc(x_1025); lean::dec(x_1020); x_1027 = lean::box(0); } @@ -9902,14 +9902,14 @@ x_1029 = lean::cnstr_get(x_1020, 0); lean::inc(x_1029); lean::dec(x_1020); x_1032 = lean::cnstr_get(x_1029, 0); -lean::inc(x_1032); x_1034 = lean::cnstr_get(x_1029, 1); -lean::inc(x_1034); if (lean::is_exclusive(x_1029)) { - lean::cnstr_release(x_1029, 0); - lean::cnstr_release(x_1029, 1); + lean::cnstr_set(x_1029, 0, lean::box(0)); + lean::cnstr_set(x_1029, 1, lean::box(0)); x_1036 = x_1029; } else { + lean::inc(x_1032); + lean::inc(x_1034); lean::dec(x_1029); x_1036 = lean::box(0); } @@ -9976,11 +9976,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1072 = lean::cnstr_get(x_1068, 0); -lean::inc(x_1072); if (lean::is_exclusive(x_1068)) { - lean::cnstr_release(x_1068, 0); + lean::cnstr_set(x_1068, 0, lean::box(0)); x_1074 = x_1068; } else { + lean::inc(x_1072); lean::dec(x_1068); x_1074 = lean::box(0); } @@ -10022,11 +10022,11 @@ lean::dec(x_0); lean::dec(x_1050); lean::dec(x_1056); x_1092 = lean::cnstr_get(x_1086, 0); -lean::inc(x_1092); if (lean::is_exclusive(x_1086)) { - lean::cnstr_release(x_1086, 0); + lean::cnstr_set(x_1086, 0, lean::box(0)); x_1094 = x_1086; } else { + lean::inc(x_1092); lean::dec(x_1086); x_1094 = lean::box(0); } @@ -10042,23 +10042,23 @@ else { obj* x_1096; obj* x_1098; obj* x_1099; obj* x_1101; obj* x_1103; obj* x_1104; obj* x_1107; x_1096 = lean::cnstr_get(x_1086, 0); -lean::inc(x_1096); if (lean::is_exclusive(x_1086)) { - lean::cnstr_release(x_1086, 0); + lean::cnstr_set(x_1086, 0, lean::box(0)); x_1098 = x_1086; } else { + lean::inc(x_1096); lean::dec(x_1086); x_1098 = lean::box(0); } x_1099 = lean::cnstr_get(x_1096, 0); -lean::inc(x_1099); x_1101 = lean::cnstr_get(x_1096, 1); -lean::inc(x_1101); if (lean::is_exclusive(x_1096)) { - lean::cnstr_release(x_1096, 0); - lean::cnstr_release(x_1096, 1); + lean::cnstr_set(x_1096, 0, lean::box(0)); + lean::cnstr_set(x_1096, 1, lean::box(0)); x_1103 = x_1096; } else { + lean::inc(x_1099); + lean::inc(x_1101); lean::dec(x_1096); x_1103 = lean::box(0); } @@ -10172,11 +10172,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1166 = lean::cnstr_get(x_1162, 0); -lean::inc(x_1166); if (lean::is_exclusive(x_1162)) { - lean::cnstr_release(x_1162, 0); + lean::cnstr_set(x_1162, 0, lean::box(0)); x_1168 = x_1162; } else { + lean::inc(x_1166); lean::dec(x_1162); x_1168 = lean::box(0); } @@ -10215,11 +10215,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1182 = lean::cnstr_get(x_1178, 0); -lean::inc(x_1182); if (lean::is_exclusive(x_1178)) { - lean::cnstr_release(x_1178, 0); + lean::cnstr_set(x_1178, 0, lean::box(0)); x_1184 = x_1178; } else { + lean::inc(x_1182); lean::dec(x_1178); x_1184 = lean::box(0); } @@ -10265,11 +10265,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1195); x_1204 = lean::cnstr_get(x_1199, 0); -lean::inc(x_1204); if (lean::is_exclusive(x_1199)) { - lean::cnstr_release(x_1199, 0); + lean::cnstr_set(x_1199, 0, lean::box(0)); x_1206 = x_1199; } else { + lean::inc(x_1204); lean::dec(x_1199); x_1206 = lean::box(0); } @@ -10285,23 +10285,23 @@ else { obj* x_1208; obj* x_1210; obj* x_1211; obj* x_1213; obj* x_1215; obj* x_1216; obj* x_1219; obj* x_1223; x_1208 = lean::cnstr_get(x_1199, 0); -lean::inc(x_1208); if (lean::is_exclusive(x_1199)) { - lean::cnstr_release(x_1199, 0); + lean::cnstr_set(x_1199, 0, lean::box(0)); x_1210 = x_1199; } else { + lean::inc(x_1208); lean::dec(x_1199); x_1210 = lean::box(0); } x_1211 = lean::cnstr_get(x_1208, 0); -lean::inc(x_1211); x_1213 = lean::cnstr_get(x_1208, 1); -lean::inc(x_1213); if (lean::is_exclusive(x_1208)) { - lean::cnstr_release(x_1208, 0); - lean::cnstr_release(x_1208, 1); + lean::cnstr_set(x_1208, 0, lean::box(0)); + lean::cnstr_set(x_1208, 1, lean::box(0)); x_1215 = x_1208; } else { + lean::inc(x_1211); + lean::inc(x_1213); lean::dec(x_1208); x_1215 = lean::box(0); } @@ -10387,11 +10387,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1256); x_1267 = lean::cnstr_get(x_1262, 0); -lean::inc(x_1267); if (lean::is_exclusive(x_1262)) { - lean::cnstr_release(x_1262, 0); + lean::cnstr_set(x_1262, 0, lean::box(0)); x_1269 = x_1262; } else { + lean::inc(x_1267); lean::dec(x_1262); x_1269 = lean::box(0); } @@ -10407,23 +10407,23 @@ else { obj* x_1271; obj* x_1273; obj* x_1274; obj* x_1276; obj* x_1278; obj* x_1279; obj* x_1282; x_1271 = lean::cnstr_get(x_1262, 0); -lean::inc(x_1271); if (lean::is_exclusive(x_1262)) { - lean::cnstr_release(x_1262, 0); + lean::cnstr_set(x_1262, 0, lean::box(0)); x_1273 = x_1262; } else { + lean::inc(x_1271); lean::dec(x_1262); x_1273 = lean::box(0); } x_1274 = lean::cnstr_get(x_1271, 0); -lean::inc(x_1274); x_1276 = lean::cnstr_get(x_1271, 1); -lean::inc(x_1276); if (lean::is_exclusive(x_1271)) { - lean::cnstr_release(x_1271, 0); - lean::cnstr_release(x_1271, 1); + lean::cnstr_set(x_1271, 0, lean::box(0)); + lean::cnstr_set(x_1271, 1, lean::box(0)); x_1278 = x_1271; } else { + lean::inc(x_1274); + lean::inc(x_1276); lean::dec(x_1271); x_1278 = lean::box(0); } @@ -10489,14 +10489,14 @@ lbl_1258: { obj* x_1313; obj* x_1315; obj* x_1317; obj* x_1318; x_1313 = lean::cnstr_get(x_1257, 0); -lean::inc(x_1313); x_1315 = lean::cnstr_get(x_1257, 1); -lean::inc(x_1315); if (lean::is_exclusive(x_1257)) { - lean::cnstr_release(x_1257, 0); - lean::cnstr_release(x_1257, 1); + lean::cnstr_set(x_1257, 0, lean::box(0)); + lean::cnstr_set(x_1257, 1, lean::box(0)); x_1317 = x_1257; } else { + lean::inc(x_1313); + lean::inc(x_1315); lean::dec(x_1257); x_1317 = lean::box(0); } @@ -10523,11 +10523,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1317); x_1334 = lean::cnstr_get(x_1328, 0); -lean::inc(x_1334); if (lean::is_exclusive(x_1328)) { - lean::cnstr_release(x_1328, 0); + lean::cnstr_set(x_1328, 0, lean::box(0)); x_1336 = x_1328; } else { + lean::inc(x_1334); lean::dec(x_1328); x_1336 = lean::box(0); } @@ -10587,11 +10587,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1317); x_1366 = lean::cnstr_get(x_1360, 0); -lean::inc(x_1366); if (lean::is_exclusive(x_1360)) { - lean::cnstr_release(x_1360, 0); + lean::cnstr_set(x_1360, 0, lean::box(0)); x_1368 = x_1360; } else { + lean::inc(x_1366); lean::dec(x_1360); x_1368 = lean::box(0); } @@ -10724,11 +10724,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1436 = lean::cnstr_get(x_1432, 0); -lean::inc(x_1436); if (lean::is_exclusive(x_1432)) { - lean::cnstr_release(x_1432, 0); + lean::cnstr_set(x_1432, 0, lean::box(0)); x_1438 = x_1432; } else { + lean::inc(x_1436); lean::dec(x_1432); x_1438 = lean::box(0); } @@ -10747,14 +10747,14 @@ x_1440 = lean::cnstr_get(x_1432, 0); lean::inc(x_1440); lean::dec(x_1432); x_1443 = lean::cnstr_get(x_1440, 0); -lean::inc(x_1443); x_1445 = lean::cnstr_get(x_1440, 1); -lean::inc(x_1445); if (lean::is_exclusive(x_1440)) { - lean::cnstr_release(x_1440, 0); - lean::cnstr_release(x_1440, 1); + lean::cnstr_set(x_1440, 0, lean::box(0)); + lean::cnstr_set(x_1440, 1, lean::box(0)); x_1447 = x_1440; } else { + lean::inc(x_1443); + lean::inc(x_1445); lean::dec(x_1440); x_1447 = lean::box(0); } @@ -10805,11 +10805,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1474 = lean::cnstr_get(x_1470, 0); -lean::inc(x_1474); if (lean::is_exclusive(x_1470)) { - lean::cnstr_release(x_1470, 0); + lean::cnstr_set(x_1470, 0, lean::box(0)); x_1476 = x_1470; } else { + lean::inc(x_1474); lean::dec(x_1470); x_1476 = lean::box(0); } @@ -10828,14 +10828,14 @@ x_1478 = lean::cnstr_get(x_1470, 0); lean::inc(x_1478); lean::dec(x_1470); x_1481 = lean::cnstr_get(x_1478, 0); -lean::inc(x_1481); x_1483 = lean::cnstr_get(x_1478, 1); -lean::inc(x_1483); if (lean::is_exclusive(x_1478)) { - lean::cnstr_release(x_1478, 0); - lean::cnstr_release(x_1478, 1); + lean::cnstr_set(x_1478, 0, lean::box(0)); + lean::cnstr_set(x_1478, 1, lean::box(0)); x_1485 = x_1478; } else { + lean::inc(x_1481); + lean::inc(x_1483); lean::dec(x_1478); x_1485 = lean::box(0); } @@ -10867,11 +10867,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1497 = lean::cnstr_get(x_1493, 0); -lean::inc(x_1497); if (lean::is_exclusive(x_1493)) { - lean::cnstr_release(x_1493, 0); + lean::cnstr_set(x_1493, 0, lean::box(0)); x_1499 = x_1493; } else { + lean::inc(x_1497); lean::dec(x_1493); x_1499 = lean::box(0); } @@ -10890,14 +10890,14 @@ x_1501 = lean::cnstr_get(x_1493, 0); lean::inc(x_1501); lean::dec(x_1493); x_1504 = lean::cnstr_get(x_1501, 0); -lean::inc(x_1504); x_1506 = lean::cnstr_get(x_1501, 1); -lean::inc(x_1506); if (lean::is_exclusive(x_1501)) { - lean::cnstr_release(x_1501, 0); - lean::cnstr_release(x_1501, 1); + lean::cnstr_set(x_1501, 0, lean::box(0)); + lean::cnstr_set(x_1501, 1, lean::box(0)); x_1508 = x_1501; } else { + lean::inc(x_1504); + lean::inc(x_1506); lean::dec(x_1501); x_1508 = lean::box(0); } @@ -11089,11 +11089,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1608 = lean::cnstr_get(x_1604, 0); -lean::inc(x_1608); if (lean::is_exclusive(x_1604)) { - lean::cnstr_release(x_1604, 0); + lean::cnstr_set(x_1604, 0, lean::box(0)); x_1610 = x_1604; } else { + lean::inc(x_1608); lean::dec(x_1604); x_1610 = lean::box(0); } @@ -11123,14 +11123,14 @@ lean::inc(x_1615); lean::dec(x_1597); x_1618 = l_lean_parser_term_simple__binder_view_to__binder__info___main(x_1615); x_1619 = lean::cnstr_get(x_1618, 0); -lean::inc(x_1619); x_1621 = lean::cnstr_get(x_1618, 1); -lean::inc(x_1621); if (lean::is_exclusive(x_1618)) { - lean::cnstr_release(x_1618, 0); - lean::cnstr_release(x_1618, 1); + lean::cnstr_set(x_1618, 0, lean::box(0)); + lean::cnstr_set(x_1618, 1, lean::box(0)); x_1623 = x_1618; } else { + lean::inc(x_1619); + lean::inc(x_1621); lean::dec(x_1618); x_1623 = lean::box(0); } @@ -11152,11 +11152,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1623); x_1638 = lean::cnstr_get(x_1630, 0); -lean::inc(x_1638); if (lean::is_exclusive(x_1630)) { - lean::cnstr_release(x_1630, 0); + lean::cnstr_set(x_1630, 0, lean::box(0)); x_1640 = x_1630; } else { + lean::inc(x_1638); lean::dec(x_1630); x_1640 = lean::box(0); } @@ -11172,11 +11172,11 @@ else { obj* x_1642; obj* x_1644; obj* x_1645; obj* x_1647; obj* x_1650; obj* x_1654; x_1642 = lean::cnstr_get(x_1630, 0); -lean::inc(x_1642); if (lean::is_exclusive(x_1630)) { - lean::cnstr_release(x_1630, 0); + lean::cnstr_set(x_1630, 0, lean::box(0)); x_1644 = x_1630; } else { + lean::inc(x_1642); lean::dec(x_1630); x_1644 = lean::box(0); } @@ -11269,11 +11269,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1697 = lean::cnstr_get(x_1693, 0); -lean::inc(x_1697); if (lean::is_exclusive(x_1693)) { - lean::cnstr_release(x_1693, 0); + lean::cnstr_set(x_1693, 0, lean::box(0)); x_1699 = x_1693; } else { + lean::inc(x_1697); lean::dec(x_1693); x_1699 = lean::box(0); } @@ -11303,14 +11303,14 @@ lean::inc(x_1704); lean::dec(x_1686); x_1707 = l_lean_parser_term_simple__binder_view_to__binder__info___main(x_1704); x_1708 = lean::cnstr_get(x_1707, 0); -lean::inc(x_1708); x_1710 = lean::cnstr_get(x_1707, 1); -lean::inc(x_1710); if (lean::is_exclusive(x_1707)) { - lean::cnstr_release(x_1707, 0); - lean::cnstr_release(x_1707, 1); + lean::cnstr_set(x_1707, 0, lean::box(0)); + lean::cnstr_set(x_1707, 1, lean::box(0)); x_1712 = x_1707; } else { + lean::inc(x_1708); + lean::inc(x_1710); lean::dec(x_1707); x_1712 = lean::box(0); } @@ -11332,11 +11332,11 @@ lean::dec(x_1713); lean::dec(x_1685); lean::dec(x_1712); x_1727 = lean::cnstr_get(x_1719, 0); -lean::inc(x_1727); if (lean::is_exclusive(x_1719)) { - lean::cnstr_release(x_1719, 0); + lean::cnstr_set(x_1719, 0, lean::box(0)); x_1729 = x_1719; } else { + lean::inc(x_1727); lean::dec(x_1719); x_1729 = lean::box(0); } @@ -11352,11 +11352,11 @@ else { obj* x_1731; obj* x_1733; obj* x_1734; obj* x_1736; obj* x_1739; obj* x_1743; x_1731 = lean::cnstr_get(x_1719, 0); -lean::inc(x_1731); if (lean::is_exclusive(x_1719)) { - lean::cnstr_release(x_1719, 0); + lean::cnstr_set(x_1719, 0, lean::box(0)); x_1733 = x_1719; } else { + lean::inc(x_1731); lean::dec(x_1719); x_1733 = lean::box(0); } @@ -11443,11 +11443,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_1774); x_1783 = lean::cnstr_get(x_1778, 0); -lean::inc(x_1783); if (lean::is_exclusive(x_1778)) { - lean::cnstr_release(x_1778, 0); + lean::cnstr_set(x_1778, 0, lean::box(0)); x_1785 = x_1778; } else { + lean::inc(x_1783); lean::dec(x_1778); x_1785 = lean::box(0); } @@ -11463,23 +11463,23 @@ else { obj* x_1787; obj* x_1789; obj* x_1790; obj* x_1792; obj* x_1794; obj* x_1795; obj* x_1799; x_1787 = lean::cnstr_get(x_1778, 0); -lean::inc(x_1787); if (lean::is_exclusive(x_1778)) { - lean::cnstr_release(x_1778, 0); + lean::cnstr_set(x_1778, 0, lean::box(0)); x_1789 = x_1778; } else { + lean::inc(x_1787); lean::dec(x_1778); x_1789 = lean::box(0); } x_1790 = lean::cnstr_get(x_1787, 0); -lean::inc(x_1790); x_1792 = lean::cnstr_get(x_1787, 1); -lean::inc(x_1792); if (lean::is_exclusive(x_1787)) { - lean::cnstr_release(x_1787, 0); - lean::cnstr_release(x_1787, 1); + lean::cnstr_set(x_1787, 0, lean::box(0)); + lean::cnstr_set(x_1787, 1, lean::box(0)); x_1794 = x_1787; } else { + lean::inc(x_1790); + lean::inc(x_1792); lean::dec(x_1787); x_1794 = lean::box(0); } @@ -11645,11 +11645,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1889 = lean::cnstr_get(x_1884, 0); -lean::inc(x_1889); if (lean::is_exclusive(x_1884)) { - lean::cnstr_release(x_1884, 0); + lean::cnstr_set(x_1884, 0, lean::box(0)); x_1891 = x_1884; } else { + lean::inc(x_1889); lean::dec(x_1884); x_1891 = lean::box(0); } @@ -11668,14 +11668,14 @@ x_1893 = lean::cnstr_get(x_1884, 0); lean::inc(x_1893); lean::dec(x_1884); x_1896 = lean::cnstr_get(x_1893, 0); -lean::inc(x_1896); x_1898 = lean::cnstr_get(x_1893, 1); -lean::inc(x_1898); if (lean::is_exclusive(x_1893)) { - lean::cnstr_release(x_1893, 0); - lean::cnstr_release(x_1893, 1); + lean::cnstr_set(x_1893, 0, lean::box(0)); + lean::cnstr_set(x_1893, 1, lean::box(0)); x_1900 = x_1893; } else { + lean::inc(x_1896); + lean::inc(x_1898); lean::dec(x_1893); x_1900 = lean::box(0); } @@ -11711,11 +11711,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_1916 = lean::cnstr_get(x_12, 0); -lean::inc(x_1916); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_1918 = x_12; } else { + lean::inc(x_1916); lean::dec(x_12); x_1918 = lean::box(0); } @@ -11731,23 +11731,23 @@ else { obj* x_1920; obj* x_1922; obj* x_1923; obj* x_1925; obj* x_1927; obj* x_1928; uint8 x_1929; x_1920 = lean::cnstr_get(x_12, 0); -lean::inc(x_1920); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_1922 = x_12; } else { + lean::inc(x_1920); lean::dec(x_12); x_1922 = lean::box(0); } x_1923 = lean::cnstr_get(x_1920, 0); -lean::inc(x_1923); x_1925 = lean::cnstr_get(x_1920, 1); -lean::inc(x_1925); if (lean::is_exclusive(x_1920)) { - lean::cnstr_release(x_1920, 0); - lean::cnstr_release(x_1920, 1); + lean::cnstr_set(x_1920, 0, lean::box(0)); + lean::cnstr_set(x_1920, 1, lean::box(0)); x_1927 = x_1920; } else { + lean::inc(x_1923); + lean::inc(x_1925); lean::dec(x_1920); x_1927 = lean::box(0); } @@ -11843,14 +11843,14 @@ lbl_15: { obj* x_1962; obj* x_1964; obj* x_1966; obj* x_1967; uint8 x_1968; x_1962 = lean::cnstr_get(x_14, 0); -lean::inc(x_1962); x_1964 = lean::cnstr_get(x_14, 1); -lean::inc(x_1964); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_1966 = x_14; } else { + lean::inc(x_1962); + lean::inc(x_1964); lean::dec(x_14); x_1966 = lean::box(0); } @@ -11933,14 +11933,14 @@ lbl_17: { obj* x_2001; obj* x_2003; obj* x_2005; x_2001 = lean::cnstr_get(x_16, 0); -lean::inc(x_2001); x_2003 = lean::cnstr_get(x_16, 1); -lean::inc(x_2003); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); x_2005 = x_16; } else { + lean::inc(x_2001); + lean::inc(x_2003); lean::dec(x_16); x_2005 = lean::box(0); } @@ -11960,11 +11960,11 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_0); x_2015 = lean::cnstr_get(x_2011, 0); -lean::inc(x_2015); if (lean::is_exclusive(x_2011)) { - lean::cnstr_release(x_2011, 0); + lean::cnstr_set(x_2011, 0, lean::box(0)); x_2017 = x_2011; } else { + lean::inc(x_2015); lean::dec(x_2011); x_2017 = lean::box(0); } @@ -12108,20 +12108,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -12188,20 +12188,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -12423,20 +12423,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -12503,20 +12503,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -12738,20 +12738,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -12818,20 +12818,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -13021,11 +13021,11 @@ lean::dec(x_4); lean::dec(x_3); lean::dec(x_9); x_36 = lean::cnstr_get(x_8, 0); -lean::inc(x_36); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_38 = x_8; } else { + lean::inc(x_36); lean::dec(x_8); x_38 = lean::box(0); } @@ -13041,23 +13041,23 @@ else { obj* x_40; obj* x_42; obj* x_43; obj* x_45; obj* x_47; obj* x_48; obj* x_51; obj* x_53; obj* x_55; obj* x_57; obj* x_59; obj* x_62; obj* x_63; obj* x_65; obj* x_68; obj* x_69; obj* x_71; obj* x_72; obj* x_74; obj* x_76; obj* x_77; obj* x_78; obj* x_80; x_40 = lean::cnstr_get(x_8, 0); -lean::inc(x_40); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_42 = x_8; } else { + lean::inc(x_40); lean::dec(x_8); x_42 = lean::box(0); } x_43 = lean::cnstr_get(x_40, 0); -lean::inc(x_43); x_45 = lean::cnstr_get(x_40, 1); -lean::inc(x_45); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_47 = x_40; } else { + lean::inc(x_43); + lean::inc(x_45); lean::dec(x_40); x_47 = lean::box(0); } @@ -13264,14 +13264,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -13318,14 +13318,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -13338,11 +13338,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -13358,23 +13358,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -13453,14 +13453,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_15; obj* x_18; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -13479,11 +13479,11 @@ lean::dec(x_1); lean::dec(x_11); lean::dec(x_12); x_23 = lean::cnstr_get(x_18, 0); -lean::inc(x_23); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_25 = x_18; } else { + lean::inc(x_23); lean::dec(x_18); x_25 = lean::box(0); } @@ -13499,23 +13499,23 @@ else { obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; x_27 = lean::cnstr_get(x_18, 0); -lean::inc(x_27); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_29 = x_18; } else { + lean::inc(x_27); lean::dec(x_18); x_29 = lean::box(0); } x_30 = lean::cnstr_get(x_27, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_27, 1); -lean::inc(x_32); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); - lean::cnstr_release(x_27, 1); + lean::cnstr_set(x_27, 0, lean::box(0)); + lean::cnstr_set(x_27, 1, lean::box(0)); x_34 = x_27; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_27); x_34 = lean::box(0); } @@ -13592,11 +13592,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_7; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_6 = x_3; } else { + lean::inc(x_4); lean::dec(x_3); x_6 = lean::box(0); } @@ -13612,23 +13612,23 @@ else { obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } x_11 = lean::cnstr_get(x_8, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_15 = x_8; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_8); x_15 = lean::box(0); } @@ -13875,11 +13875,11 @@ if (lean::obj_tag(x_62) == 0) obj* x_64; obj* x_66; obj* x_67; lean::dec(x_61); x_64 = lean::cnstr_get(x_62, 0); -lean::inc(x_64); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_66 = x_62; } else { + lean::inc(x_64); lean::dec(x_62); x_66 = lean::box(0); } @@ -13895,23 +13895,23 @@ else { obj* x_68; obj* x_70; obj* x_71; obj* x_73; obj* x_75; obj* x_76; obj* x_77; obj* x_78; x_68 = lean::cnstr_get(x_62, 0); -lean::inc(x_68); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_70 = x_62; } else { + lean::inc(x_68); lean::dec(x_62); x_70 = lean::box(0); } x_71 = lean::cnstr_get(x_68, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_68, 1); -lean::inc(x_73); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); - lean::cnstr_release(x_68, 1); + lean::cnstr_set(x_68, 0, lean::box(0)); + lean::cnstr_set(x_68, 1, lean::box(0)); x_75 = x_68; } else { + lean::inc(x_71); + lean::inc(x_73); lean::dec(x_68); x_75 = lean::box(0); } @@ -13947,11 +13947,11 @@ if (lean::obj_tag(x_85) == 0) obj* x_87; obj* x_89; obj* x_90; lean::dec(x_61); x_87 = lean::cnstr_get(x_85, 0); -lean::inc(x_87); if (lean::is_exclusive(x_85)) { - lean::cnstr_release(x_85, 0); + lean::cnstr_set(x_85, 0, lean::box(0)); x_89 = x_85; } else { + lean::inc(x_87); lean::dec(x_85); x_89 = lean::box(0); } @@ -13967,23 +13967,23 @@ else { obj* x_91; obj* x_93; obj* x_94; obj* x_96; obj* x_98; obj* x_99; obj* x_100; obj* x_101; x_91 = lean::cnstr_get(x_85, 0); -lean::inc(x_91); if (lean::is_exclusive(x_85)) { - lean::cnstr_release(x_85, 0); + lean::cnstr_set(x_85, 0, lean::box(0)); x_93 = x_85; } else { + lean::inc(x_91); lean::dec(x_85); x_93 = lean::box(0); } x_94 = lean::cnstr_get(x_91, 0); -lean::inc(x_94); x_96 = lean::cnstr_get(x_91, 1); -lean::inc(x_96); if (lean::is_exclusive(x_91)) { - lean::cnstr_release(x_91, 0); - lean::cnstr_release(x_91, 1); + lean::cnstr_set(x_91, 0, lean::box(0)); + lean::cnstr_set(x_91, 1, lean::box(0)); x_98 = x_91; } else { + lean::inc(x_94); + lean::inc(x_96); lean::dec(x_91); x_98 = lean::box(0); } @@ -14020,14 +14020,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -14216,27 +14216,27 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_24; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } x_12 = l_lean_parser_term_simple__binder_view_to__binder__info___main(x_7); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -14257,11 +14257,11 @@ lean::dec(x_11); lean::dec(x_17); lean::dec(x_18); x_31 = lean::cnstr_get(x_24, 0); -lean::inc(x_31); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_33 = x_24; } else { + lean::inc(x_31); lean::dec(x_24); x_33 = lean::box(0); } @@ -14277,11 +14277,11 @@ else { obj* x_35; obj* x_37; obj* x_38; obj* x_40; obj* x_43; x_35 = lean::cnstr_get(x_24, 0); -lean::inc(x_35); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_37 = x_24; } else { + lean::inc(x_35); lean::dec(x_24); x_37 = lean::box(0); } @@ -14361,11 +14361,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_7; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_6 = x_3; } else { + lean::inc(x_4); lean::dec(x_3); x_6 = lean::box(0); } @@ -14381,23 +14381,23 @@ else { obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } x_11 = lean::cnstr_get(x_8, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_15 = x_8; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_8); x_15 = lean::box(0); } @@ -14439,14 +14439,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -14459,11 +14459,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -14479,23 +14479,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -14575,14 +14575,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_17; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -14599,11 +14599,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_23 = lean::cnstr_get(x_17, 0); -lean::inc(x_23); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_25 = x_17; } else { + lean::inc(x_23); lean::dec(x_17); x_25 = lean::box(0); } @@ -14619,23 +14619,23 @@ else { obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_39; x_27 = lean::cnstr_get(x_17, 0); -lean::inc(x_27); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_29 = x_17; } else { + lean::inc(x_27); lean::dec(x_17); x_29 = lean::box(0); } x_30 = lean::cnstr_get(x_27, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_27, 1); -lean::inc(x_32); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); - lean::cnstr_release(x_27, 1); + lean::cnstr_set(x_27, 0, lean::box(0)); + lean::cnstr_set(x_27, 1, lean::box(0)); x_34 = x_27; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_27); x_34 = lean::box(0); } @@ -14675,14 +14675,14 @@ x_53 = lean::cnstr_get(x_0, 0); lean::inc(x_53); x_55 = l_lean_elaborator_mangle__ident(x_53); x_56 = lean::cnstr_get(x_50, 0); -lean::inc(x_56); x_58 = lean::cnstr_get(x_50, 1); -lean::inc(x_58); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); - lean::cnstr_release(x_50, 1); + lean::cnstr_set(x_50, 0, lean::box(0)); + lean::cnstr_set(x_50, 1, lean::box(0)); x_60 = x_50; } else { + lean::inc(x_56); + lean::inc(x_58); lean::dec(x_50); x_60 = lean::box(0); } @@ -14715,14 +14715,14 @@ x_72 = lean::cnstr_get(x_61, 0); lean::inc(x_72); lean::dec(x_61); x_75 = lean::cnstr_get(x_72, 0); -lean::inc(x_75); x_77 = lean::cnstr_get(x_72, 1); -lean::inc(x_77); if (lean::is_exclusive(x_72)) { - lean::cnstr_release(x_72, 0); - lean::cnstr_release(x_72, 1); + lean::cnstr_set(x_72, 0, lean::box(0)); + lean::cnstr_set(x_72, 1, lean::box(0)); x_79 = x_72; } else { + lean::inc(x_75); + lean::inc(x_77); lean::dec(x_72); x_79 = lean::box(0); } @@ -14780,14 +14780,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -14851,14 +14851,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -14912,14 +14912,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -15009,11 +15009,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_29); x_42 = lean::cnstr_get(x_33, 0); -lean::inc(x_42); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_44 = x_33; } else { + lean::inc(x_42); lean::dec(x_33); x_44 = lean::box(0); } @@ -15029,23 +15029,23 @@ else { obj* x_46; obj* x_48; obj* x_49; obj* x_51; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; x_46 = lean::cnstr_get(x_33, 0); -lean::inc(x_46); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_48 = x_33; } else { + lean::inc(x_46); lean::dec(x_33); x_48 = lean::box(0); } x_49 = lean::cnstr_get(x_46, 0); -lean::inc(x_49); x_51 = lean::cnstr_get(x_46, 1); -lean::inc(x_51); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); - lean::cnstr_release(x_46, 1); + lean::cnstr_set(x_46, 0, lean::box(0)); + lean::cnstr_set(x_46, 1, lean::box(0)); x_53 = x_46; } else { + lean::inc(x_49); + lean::inc(x_51); lean::dec(x_46); x_53 = lean::box(0); } @@ -15074,11 +15074,11 @@ lean::dec(x_48); lean::dec(x_53); lean::dec(x_56); x_72 = lean::cnstr_get(x_62, 0); -lean::inc(x_72); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_74 = x_62; } else { + lean::inc(x_72); lean::dec(x_62); x_74 = lean::box(0); } @@ -15121,11 +15121,11 @@ lean::dec(x_48); lean::dec(x_53); lean::dec(x_56); x_92 = lean::cnstr_get(x_62, 0); -lean::inc(x_92); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_94 = x_62; } else { + lean::inc(x_92); lean::dec(x_62); x_94 = lean::box(0); } @@ -15241,11 +15241,11 @@ lean::dec(x_48); lean::dec(x_53); lean::dec(x_56); x_164 = lean::cnstr_get(x_153, 0); -lean::inc(x_164); if (lean::is_exclusive(x_153)) { - lean::cnstr_release(x_153, 0); + lean::cnstr_set(x_153, 0, lean::box(0)); x_166 = x_153; } else { + lean::inc(x_164); lean::dec(x_153); x_166 = lean::box(0); } @@ -15285,11 +15285,11 @@ lean::dec(x_53); lean::dec(x_56); lean::dec(x_119); x_182 = lean::cnstr_get(x_153, 0); -lean::inc(x_182); if (lean::is_exclusive(x_153)) { - lean::cnstr_release(x_153, 0); + lean::cnstr_set(x_153, 0, lean::box(0)); x_184 = x_153; } else { + lean::inc(x_182); lean::dec(x_153); x_184 = lean::box(0); } @@ -15362,11 +15362,11 @@ lean::dec(x_29); lean::dec(x_48); lean::dec(x_56); x_227 = lean::cnstr_get(x_218, 0); -lean::inc(x_227); if (lean::is_exclusive(x_218)) { - lean::cnstr_release(x_218, 0); + lean::cnstr_set(x_218, 0, lean::box(0)); x_229 = x_218; } else { + lean::inc(x_227); lean::dec(x_218); x_229 = lean::box(0); } @@ -15426,11 +15426,11 @@ lean::dec(x_48); lean::dec(x_53); lean::dec(x_56); x_253 = lean::cnstr_get(x_242, 0); -lean::inc(x_253); if (lean::is_exclusive(x_242)) { - lean::cnstr_release(x_242, 0); + lean::cnstr_set(x_242, 0, lean::box(0)); x_255 = x_242; } else { + lean::inc(x_253); lean::dec(x_242); x_255 = lean::box(0); } @@ -15633,14 +15633,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_18; obj* x_20; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -15669,11 +15669,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_34 = lean::cnstr_get(x_29, 0); -lean::inc(x_34); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_36 = x_29; } else { + lean::inc(x_34); lean::dec(x_29); x_36 = lean::box(0); } @@ -15719,11 +15719,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_53 = lean::cnstr_get(x_48, 0); -lean::inc(x_53); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_55 = x_48; } else { + lean::inc(x_53); lean::dec(x_48); x_55 = lean::box(0); } @@ -15765,11 +15765,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_73 = lean::cnstr_get(x_67, 0); -lean::inc(x_73); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_75 = x_67; } else { + lean::inc(x_73); lean::dec(x_67); x_75 = lean::box(0); } @@ -15788,14 +15788,14 @@ x_77 = lean::cnstr_get(x_67, 0); lean::inc(x_77); lean::dec(x_67); x_80 = lean::cnstr_get(x_77, 0); -lean::inc(x_80); x_82 = lean::cnstr_get(x_77, 1); -lean::inc(x_82); if (lean::is_exclusive(x_77)) { - lean::cnstr_release(x_77, 0); - lean::cnstr_release(x_77, 1); + lean::cnstr_set(x_77, 0, lean::box(0)); + lean::cnstr_set(x_77, 1, lean::box(0)); x_84 = x_77; } else { + lean::inc(x_80); + lean::inc(x_82); lean::dec(x_77); x_84 = lean::box(0); } @@ -15836,11 +15836,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_104 = lean::cnstr_get(x_99, 0); -lean::inc(x_104); if (lean::is_exclusive(x_99)) { - lean::cnstr_release(x_99, 0); + lean::cnstr_set(x_99, 0, lean::box(0)); x_106 = x_99; } else { + lean::inc(x_104); lean::dec(x_99); x_106 = lean::box(0); } @@ -15867,14 +15867,14 @@ lbl_15: { obj* x_111; obj* x_113; obj* x_115; obj* x_116; x_111 = lean::cnstr_get(x_14, 0); -lean::inc(x_111); x_113 = lean::cnstr_get(x_14, 1); -lean::inc(x_113); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_115 = x_14; } else { + lean::inc(x_111); + lean::inc(x_113); lean::dec(x_14); x_115 = lean::box(0); } @@ -15886,11 +15886,11 @@ lean::dec(x_13); lean::dec(x_111); lean::dec(x_115); x_120 = lean::cnstr_get(x_116, 0); -lean::inc(x_120); if (lean::is_exclusive(x_116)) { - lean::cnstr_release(x_116, 0); + lean::cnstr_set(x_116, 0, lean::box(0)); x_122 = x_116; } else { + lean::inc(x_120); lean::dec(x_116); x_122 = lean::box(0); } @@ -15906,11 +15906,11 @@ else { obj* x_124; obj* x_126; obj* x_127; obj* x_129; obj* x_132; obj* x_133; obj* x_134; x_124 = lean::cnstr_get(x_116, 0); -lean::inc(x_124); if (lean::is_exclusive(x_116)) { - lean::cnstr_release(x_116, 0); + lean::cnstr_set(x_116, 0, lean::box(0)); x_126 = x_116; } else { + lean::inc(x_124); lean::dec(x_116); x_126 = lean::box(0); } @@ -15958,14 +15958,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -15998,14 +15998,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16035,14 +16035,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16096,14 +16096,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16139,14 +16139,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_16; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -16162,11 +16162,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_20 = lean::cnstr_get(x_16, 0); -lean::inc(x_20); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_22 = x_16; } else { + lean::inc(x_20); lean::dec(x_16); x_22 = lean::box(0); } @@ -16182,23 +16182,23 @@ else { obj* x_24; obj* x_26; obj* x_27; obj* x_29; obj* x_31; obj* x_32; x_24 = lean::cnstr_get(x_16, 0); -lean::inc(x_24); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_26 = x_16; } else { + lean::inc(x_24); lean::dec(x_16); x_26 = lean::box(0); } x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_24, 1); -lean::inc(x_29); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); - lean::cnstr_release(x_24, 1); + lean::cnstr_set(x_24, 0, lean::box(0)); + lean::cnstr_set(x_24, 1, lean::box(0)); x_31 = x_24; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_24); x_31 = lean::box(0); } @@ -16271,14 +16271,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16315,14 +16315,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -16352,11 +16352,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_2); x_31 = lean::cnstr_get(x_26, 0); -lean::inc(x_31); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); + lean::cnstr_set(x_26, 0, lean::box(0)); x_33 = x_26; } else { + lean::inc(x_31); lean::dec(x_26); x_33 = lean::box(0); } @@ -16461,14 +16461,14 @@ lbl_15: { obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_85; obj* x_87; obj* x_90; obj* x_92; x_75 = lean::cnstr_get(x_14, 0); -lean::inc(x_75); x_77 = lean::cnstr_get(x_14, 1); -lean::inc(x_77); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_79 = x_14; } else { + lean::inc(x_75); + lean::inc(x_77); lean::dec(x_14); x_79 = lean::box(0); } @@ -16496,11 +16496,11 @@ lean::dec(x_82); lean::dec(x_80); lean::dec(x_79); x_100 = lean::cnstr_get(x_92, 0); -lean::inc(x_100); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_102 = x_92; } else { + lean::inc(x_100); lean::dec(x_92); x_102 = lean::box(0); } @@ -16516,11 +16516,11 @@ else { obj* x_104; obj* x_106; obj* x_107; obj* x_109; obj* x_112; x_104 = lean::cnstr_get(x_92, 0); -lean::inc(x_104); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_106 = x_92; } else { + lean::inc(x_104); lean::dec(x_92); x_106 = lean::box(0); } @@ -16627,14 +16627,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16664,14 +16664,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16725,14 +16725,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -17029,11 +17029,11 @@ lean::dec(x_0); lean::dec(x_93); lean::dec(x_86); x_114 = lean::cnstr_get(x_109, 0); -lean::inc(x_114); if (lean::is_exclusive(x_109)) { - lean::cnstr_release(x_109, 0); + lean::cnstr_set(x_109, 0, lean::box(0)); x_116 = x_109; } else { + lean::inc(x_114); lean::dec(x_109); x_116 = lean::box(0); } @@ -17050,11 +17050,11 @@ else { obj* x_118; obj* x_120; obj* x_121; obj* x_123; obj* x_126; obj* x_130; x_118 = lean::cnstr_get(x_109, 0); -lean::inc(x_118); if (lean::is_exclusive(x_109)) { - lean::cnstr_release(x_109, 0); + lean::cnstr_set(x_109, 0, lean::box(0)); x_120 = x_109; } else { + lean::inc(x_118); lean::dec(x_109); x_120 = lean::box(0); } @@ -17198,11 +17198,11 @@ lean::dec(x_171); lean::dec(x_1); lean::dec(x_0); x_208 = lean::cnstr_get(x_199, 0); -lean::inc(x_208); if (lean::is_exclusive(x_199)) { - lean::cnstr_release(x_199, 0); + lean::cnstr_set(x_199, 0, lean::box(0)); x_210 = x_199; } else { + lean::inc(x_208); lean::dec(x_199); x_210 = lean::box(0); } @@ -17219,11 +17219,11 @@ else { obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_220; obj* x_221; obj* x_223; x_212 = lean::cnstr_get(x_199, 0); -lean::inc(x_212); if (lean::is_exclusive(x_199)) { - lean::cnstr_release(x_199, 0); + lean::cnstr_set(x_199, 0, lean::box(0)); x_214 = x_199; } else { + lean::inc(x_212); lean::dec(x_199); x_214 = lean::box(0); } @@ -17286,11 +17286,11 @@ else { obj* x_246; obj* x_248; obj* x_249; obj* x_251; obj* x_254; obj* x_255; obj* x_256; obj* x_257; obj* x_258; x_246 = lean::cnstr_get(x_233, 0); -lean::inc(x_246); if (lean::is_exclusive(x_233)) { - lean::cnstr_release(x_233, 0); + lean::cnstr_set(x_233, 0, lean::box(0)); x_248 = x_233; } else { + lean::inc(x_246); lean::dec(x_233); x_248 = lean::box(0); } @@ -17778,11 +17778,11 @@ lean::dec(x_0); lean::dec(x_513); lean::dec(x_500); x_530 = lean::cnstr_get(x_520, 0); -lean::inc(x_530); if (lean::is_exclusive(x_520)) { - lean::cnstr_release(x_520, 0); + lean::cnstr_set(x_520, 0, lean::box(0)); x_532 = x_520; } else { + lean::inc(x_530); lean::dec(x_520); x_532 = lean::box(0); } @@ -17799,11 +17799,11 @@ else { obj* x_534; obj* x_536; obj* x_537; obj* x_539; obj* x_542; obj* x_543; obj* x_544; x_534 = lean::cnstr_get(x_520, 0); -lean::inc(x_534); if (lean::is_exclusive(x_520)) { - lean::cnstr_release(x_520, 0); + lean::cnstr_set(x_520, 0, lean::box(0)); x_536 = x_520; } else { + lean::inc(x_534); lean::dec(x_520); x_536 = lean::box(0); } @@ -17834,11 +17834,11 @@ lean::dec(x_513); lean::dec(x_537); lean::dec(x_536); x_558 = lean::cnstr_get(x_548, 0); -lean::inc(x_558); if (lean::is_exclusive(x_548)) { - lean::cnstr_release(x_548, 0); + lean::cnstr_set(x_548, 0, lean::box(0)); x_560 = x_548; } else { + lean::inc(x_558); lean::dec(x_548); x_560 = lean::box(0); } @@ -17882,11 +17882,11 @@ lean::dec(x_513); lean::dec(x_537); lean::dec(x_536); x_578 = lean::cnstr_get(x_548, 0); -lean::inc(x_578); if (lean::is_exclusive(x_548)) { - lean::cnstr_release(x_548, 0); + lean::cnstr_set(x_548, 0, lean::box(0)); x_580 = x_548; } else { + lean::inc(x_578); lean::dec(x_548); x_580 = lean::box(0); } @@ -18003,11 +18003,11 @@ lean::dec(x_513); lean::dec(x_537); lean::dec(x_536); x_650 = lean::cnstr_get(x_639, 0); -lean::inc(x_650); if (lean::is_exclusive(x_639)) { - lean::cnstr_release(x_639, 0); + lean::cnstr_set(x_639, 0, lean::box(0)); x_652 = x_639; } else { + lean::inc(x_650); lean::dec(x_639); x_652 = lean::box(0); } @@ -18048,11 +18048,11 @@ lean::dec(x_537); lean::dec(x_536); lean::dec(x_605); x_668 = lean::cnstr_get(x_639, 0); -lean::inc(x_668); if (lean::is_exclusive(x_639)) { - lean::cnstr_release(x_639, 0); + lean::cnstr_set(x_639, 0, lean::box(0)); x_670 = x_639; } else { + lean::inc(x_668); lean::dec(x_639); x_670 = lean::box(0); } @@ -18413,11 +18413,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_852; obj* x_854; obj* x_855; lean::dec(x_3); x_852 = lean::cnstr_get(x_5, 0); -lean::inc(x_852); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_854 = x_5; } else { + lean::inc(x_852); lean::dec(x_5); x_854 = lean::box(0); } @@ -18433,21 +18433,21 @@ else { obj* x_856; obj* x_858; obj* x_859; obj* x_861; obj* x_862; obj* x_864; obj* x_866; obj* x_868; obj* x_870; obj* x_872; obj* x_874; obj* x_876; obj* x_878; obj* x_880; obj* x_883; obj* x_884; obj* x_885; obj* x_886; x_856 = lean::cnstr_get(x_5, 0); -lean::inc(x_856); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_858 = x_5; } else { + lean::inc(x_856); lean::dec(x_5); x_858 = lean::box(0); } x_859 = lean::cnstr_get(x_856, 1); -lean::inc(x_859); if (lean::is_exclusive(x_856)) { lean::cnstr_release(x_856, 0); - lean::cnstr_release(x_856, 1); + lean::cnstr_set(x_856, 1, lean::box(0)); x_861 = x_856; } else { + lean::inc(x_859); lean::dec(x_856); x_861 = lean::box(0); } @@ -18582,40 +18582,40 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; uint8 x_28; x_6 = lean::cnstr_get(x_0, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 1); -lean::inc(x_8); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_10 = x_0; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_0); x_10 = lean::box(0); } lean::inc(x_6); x_14 = l_lean_parser_term_simple__binder_view_to__binder__info___main(x_6); x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_14, 1); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } x_20 = lean::cnstr_get(x_17, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_17, 1); -lean::inc(x_22); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); - lean::cnstr_release(x_17, 1); + lean::cnstr_set(x_17, 0, lean::box(0)); + lean::cnstr_set(x_17, 1, lean::box(0)); x_24 = x_17; } else { + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_17); x_24 = lean::box(0); } @@ -18651,14 +18651,14 @@ lbl_12: { obj* x_37; obj* x_39; obj* x_41; obj* x_42; x_37 = lean::cnstr_get(x_11, 0); -lean::inc(x_37); x_39 = lean::cnstr_get(x_11, 1); -lean::inc(x_39); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_41 = x_11; } else { + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_11); x_41 = lean::box(0); } @@ -18671,11 +18671,11 @@ lean::dec(x_10); lean::dec(x_37); lean::dec(x_41); x_47 = lean::cnstr_get(x_42, 0); -lean::inc(x_47); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_49 = x_42; } else { + lean::inc(x_47); lean::dec(x_42); x_49 = lean::box(0); } @@ -18691,11 +18691,11 @@ else { obj* x_51; obj* x_53; obj* x_54; obj* x_56; uint8 x_59; x_51 = lean::cnstr_get(x_42, 0); -lean::inc(x_51); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_53 = x_42; } else { + lean::inc(x_51); lean::dec(x_42); x_53 = lean::box(0); } @@ -18795,11 +18795,11 @@ lean::dec(x_8); lean::dec(x_1); lean::dec(x_19); x_94 = lean::cnstr_get(x_88, 0); -lean::inc(x_94); if (lean::is_exclusive(x_88)) { - lean::cnstr_release(x_88, 0); + lean::cnstr_set(x_88, 0, lean::box(0)); x_96 = x_88; } else { + lean::inc(x_94); lean::dec(x_88); x_96 = lean::box(0); } @@ -18972,11 +18972,11 @@ obj* x_19; obj* x_21; obj* x_22; lean::dec(x_1); lean::dec(x_0); x_19 = lean::cnstr_get(x_16, 0); -lean::inc(x_19); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_21 = x_16; } else { + lean::inc(x_19); lean::dec(x_16); x_21 = lean::box(0); } @@ -18992,11 +18992,11 @@ else { obj* x_23; obj* x_25; obj* x_26; obj* x_28; obj* x_32; x_23 = lean::cnstr_get(x_16, 0); -lean::inc(x_23); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_25 = x_16; } else { + lean::inc(x_23); lean::dec(x_16); x_25 = lean::box(0); } @@ -19057,11 +19057,11 @@ obj* x_58; obj* x_60; obj* x_61; lean::dec(x_1); lean::dec(x_0); x_58 = lean::cnstr_get(x_55, 0); -lean::inc(x_58); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_60 = x_55; } else { + lean::inc(x_58); lean::dec(x_55); x_60 = lean::box(0); } @@ -19077,11 +19077,11 @@ else { obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_71; x_62 = lean::cnstr_get(x_55, 0); -lean::inc(x_62); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_64 = x_55; } else { + lean::inc(x_62); lean::dec(x_55); x_64 = lean::box(0); } @@ -19541,14 +19541,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -19594,11 +19594,11 @@ obj* x_31; obj* x_33; obj* x_34; lean::dec(x_6); lean::dec(x_4); x_31 = lean::cnstr_get(x_7, 0); -lean::inc(x_31); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_33 = x_7; } else { + lean::inc(x_31); lean::dec(x_7); x_33 = lean::box(0); } @@ -19614,11 +19614,11 @@ else { obj* x_35; obj* x_37; obj* x_38; x_35 = lean::cnstr_get(x_7, 0); -lean::inc(x_35); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_37 = x_7; } else { + lean::inc(x_35); lean::dec(x_7); x_37 = lean::box(0); } @@ -19680,11 +19680,11 @@ else { obj* x_56; obj* x_58; x_56 = lean::cnstr_get(x_52, 0); -lean::inc(x_56); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_58 = x_52; } else { + lean::inc(x_56); lean::dec(x_52); x_58 = lean::box(0); } @@ -19798,11 +19798,11 @@ if (lean::obj_tag(x_50) == 0) obj* x_100; obj* x_102; obj* x_103; lean::dec(x_9); x_100 = lean::cnstr_get(x_50, 0); -lean::inc(x_100); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_102 = x_50; } else { + lean::inc(x_100); lean::dec(x_50); x_102 = lean::box(0); } @@ -19819,11 +19819,11 @@ else { obj* x_104; obj* x_106; obj* x_107; obj* x_108; obj* x_109; x_104 = lean::cnstr_get(x_50, 0); -lean::inc(x_104); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_106 = x_50; } else { + lean::inc(x_104); lean::dec(x_50); x_106 = lean::box(0); } @@ -19858,14 +19858,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -19903,14 +19903,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -19941,14 +19941,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -19993,11 +19993,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_14 = lean::cnstr_get(x_8, 0); -lean::inc(x_14); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_16 = x_8; } else { + lean::inc(x_14); lean::dec(x_8); x_16 = lean::box(0); } @@ -20013,11 +20013,11 @@ else { obj* x_18; obj* x_20; obj* x_21; x_18 = lean::cnstr_get(x_8, 0); -lean::inc(x_18); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_20 = x_8; } else { + lean::inc(x_18); lean::dec(x_8); x_20 = lean::box(0); } @@ -20275,11 +20275,11 @@ if (lean::obj_tag(x_14) == 0) { obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_22; obj* x_24; x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_17 = x_14; } else { + lean::inc(x_15); lean::dec(x_14); x_17 = lean::box(0); } @@ -20370,11 +20370,11 @@ if (lean::obj_tag(x_16) == 0) obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_25; obj* x_27; lean::dec(x_7); x_18 = lean::cnstr_get(x_16, 0); -lean::inc(x_18); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_20 = x_16; } else { + lean::inc(x_18); lean::dec(x_16); x_20 = lean::box(0); } @@ -20423,11 +20423,11 @@ else { obj* x_44; obj* x_46; obj* x_47; obj* x_51; x_44 = lean::cnstr_get(x_16, 0); -lean::inc(x_44); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_46 = x_16; } else { + lean::inc(x_44); lean::dec(x_16); x_46 = lean::box(0); } @@ -20522,11 +20522,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_18 = x_11; } else { + lean::inc(x_16); lean::dec(x_11); x_18 = lean::box(0); } @@ -20542,23 +20542,23 @@ else { obj* x_20; obj* x_22; obj* x_23; obj* x_25; obj* x_27; obj* x_28; obj* x_30; obj* x_32; obj* x_35; obj* x_36; x_20 = lean::cnstr_get(x_11, 0); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } x_23 = lean::cnstr_get(x_20, 0); -lean::inc(x_23); x_25 = lean::cnstr_get(x_20, 1); -lean::inc(x_25); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); x_27 = x_20; } else { + lean::inc(x_23); + lean::inc(x_25); lean::dec(x_20); x_27 = lean::box(0); } @@ -20842,44 +20842,44 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_23; x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_3, 1); -lean::inc(x_7); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_9 = x_3; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_3); x_9 = lean::box(0); } x_10 = lean::cnstr_get(x_5, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 1); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); x_21 = lean::cnstr_get(x_10, 3); -lean::inc(x_21); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); - lean::cnstr_release(x_10, 3); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); + lean::cnstr_set(x_10, 3, lean::box(0)); x_23 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_10); x_23 = lean::box(0); } @@ -21124,14 +21124,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_14; obj* x_16; obj* x_18; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -21162,11 +21162,11 @@ else { obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_38; x_27 = lean::cnstr_get(x_16, 0); -lean::inc(x_27); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_29 = x_16; } else { + lean::inc(x_27); lean::dec(x_16); x_29 = lean::box(0); } @@ -21308,11 +21308,11 @@ else { obj* x_94; obj* x_96; x_94 = lean::cnstr_get(x_85, 0); -lean::inc(x_94); if (lean::is_exclusive(x_85)) { - lean::cnstr_release(x_85, 0); + lean::cnstr_set(x_85, 0, lean::box(0)); x_96 = x_85; } else { + lean::inc(x_94); lean::dec(x_85); x_96 = lean::box(0); } @@ -21467,11 +21467,11 @@ default: { obj* x_157; obj* x_159; obj* x_160; obj* x_162; x_157 = lean::cnstr_get(x_94, 0); -lean::inc(x_157); if (lean::is_exclusive(x_94)) { - lean::cnstr_release(x_94, 0); + lean::cnstr_set(x_94, 0, lean::box(0)); x_159 = x_94; } else { + lean::inc(x_157); lean::dec(x_94); x_159 = lean::box(0); } @@ -21492,11 +21492,11 @@ else { obj* x_169; obj* x_171; x_169 = lean::cnstr_get(x_162, 0); -lean::inc(x_169); if (lean::is_exclusive(x_162)) { - lean::cnstr_release(x_162, 0); + lean::cnstr_set(x_162, 0, lean::box(0)); x_171 = x_162; } else { + lean::inc(x_169); lean::dec(x_162); x_171 = lean::box(0); } @@ -21688,11 +21688,11 @@ else { obj* x_247; obj* x_249; obj* x_250; obj* x_253; obj* x_254; obj* x_255; obj* x_256; x_247 = lean::cnstr_get(x_160, 0); -lean::inc(x_247); if (lean::is_exclusive(x_160)) { - lean::cnstr_release(x_160, 0); + lean::cnstr_set(x_160, 0, lean::box(0)); x_249 = x_160; } else { + lean::inc(x_247); lean::dec(x_160); x_249 = lean::box(0); } @@ -21743,11 +21743,11 @@ else { obj* x_260; obj* x_262; obj* x_263; x_260 = lean::cnstr_get(x_7, 0); -lean::inc(x_260); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_262 = x_7; } else { + lean::inc(x_260); lean::dec(x_7); x_262 = lean::box(0); } @@ -21868,11 +21868,11 @@ else { obj* x_33; obj* x_35; obj* x_36; obj* x_37; x_33 = lean::cnstr_get(x_30, 0); -lean::inc(x_33); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_35 = x_30; } else { + lean::inc(x_33); lean::dec(x_30); x_35 = lean::box(0); } @@ -22002,11 +22002,11 @@ if (lean::obj_tag(x_51) == 0) { obj* x_52; obj* x_54; obj* x_55; x_52 = lean::cnstr_get(x_51, 0); -lean::inc(x_52); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); + lean::cnstr_set(x_51, 0, lean::box(0)); x_54 = x_51; } else { + lean::inc(x_52); lean::dec(x_51); x_54 = lean::box(0); } @@ -22022,23 +22022,23 @@ else { obj* x_56; obj* x_58; obj* x_59; obj* x_61; obj* x_63; obj* x_64; obj* x_66; obj* x_68; obj* x_70; obj* x_71; obj* x_73; obj* x_76; obj* x_77; obj* x_78; x_56 = lean::cnstr_get(x_51, 0); -lean::inc(x_56); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); + lean::cnstr_set(x_51, 0, lean::box(0)); x_58 = x_51; } else { + lean::inc(x_56); lean::dec(x_51); x_58 = lean::box(0); } x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); x_61 = lean::cnstr_get(x_56, 1); -lean::inc(x_61); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); - lean::cnstr_release(x_56, 1); + lean::cnstr_set(x_56, 0, lean::box(0)); + lean::cnstr_set(x_56, 1, lean::box(0)); x_63 = x_56; } else { + lean::inc(x_59); + lean::inc(x_61); lean::dec(x_56); x_63 = lean::box(0); } @@ -22168,11 +22168,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_6; obj* x_8; obj* x_9; lean::dec(x_0); x_6 = lean::cnstr_get(x_4, 0); -lean::inc(x_6); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_8 = x_4; } else { + lean::inc(x_6); lean::dec(x_4); x_8 = lean::box(0); } @@ -22188,23 +22188,23 @@ else { obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_38; obj* x_40; obj* x_43; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_52; obj* x_53; obj* x_54; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_12 = x_4; } else { + lean::inc(x_10); lean::dec(x_4); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_10, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_17 = x_10; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_10); x_17 = lean::box(0); } @@ -22477,11 +22477,11 @@ if (lean::obj_tag(x_60) == 0) obj* x_62; obj* x_64; obj* x_65; lean::dec(x_1); x_62 = lean::cnstr_get(x_60, 0); -lean::inc(x_62); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_64 = x_60; } else { + lean::inc(x_62); lean::dec(x_60); x_64 = lean::box(0); } @@ -22497,11 +22497,11 @@ else { obj* x_66; obj* x_68; obj* x_69; obj* x_71; obj* x_76; x_66 = lean::cnstr_get(x_60, 0); -lean::inc(x_66); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_68 = x_60; } else { + lean::inc(x_66); lean::dec(x_60); x_68 = lean::box(0); } @@ -22831,14 +22831,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -22869,11 +22869,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_31 = lean::cnstr_get(x_27, 0); -lean::inc(x_31); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_33 = x_27; } else { + lean::inc(x_31); lean::dec(x_27); x_33 = lean::box(0); } @@ -22889,23 +22889,23 @@ else { obj* x_35; obj* x_37; obj* x_38; obj* x_40; obj* x_42; obj* x_43; x_35 = lean::cnstr_get(x_27, 0); -lean::inc(x_35); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_37 = x_27; } else { + lean::inc(x_35); lean::dec(x_27); x_37 = lean::box(0); } x_38 = lean::cnstr_get(x_35, 0); -lean::inc(x_38); x_40 = lean::cnstr_get(x_35, 1); -lean::inc(x_40); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); - lean::cnstr_release(x_35, 1); + lean::cnstr_set(x_35, 0, lean::box(0)); + lean::cnstr_set(x_35, 1, lean::box(0)); x_42 = x_35; } else { + lean::inc(x_38); + lean::inc(x_40); lean::dec(x_35); x_42 = lean::box(0); } @@ -22982,11 +22982,11 @@ obj* x_71; obj* x_73; obj* x_74; lean::dec(x_11); lean::dec(x_62); x_71 = lean::cnstr_get(x_68, 0); -lean::inc(x_71); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_73 = x_68; } else { + lean::inc(x_71); lean::dec(x_68); x_73 = lean::box(0); } @@ -23002,23 +23002,23 @@ else { obj* x_75; obj* x_77; obj* x_78; obj* x_80; obj* x_82; obj* x_83; obj* x_84; obj* x_85; obj* x_86; obj* x_87; x_75 = lean::cnstr_get(x_68, 0); -lean::inc(x_75); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_77 = x_68; } else { + lean::inc(x_75); lean::dec(x_68); x_77 = lean::box(0); } x_78 = lean::cnstr_get(x_75, 0); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 1); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -23064,11 +23064,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_97 = lean::cnstr_get(x_93, 0); -lean::inc(x_97); if (lean::is_exclusive(x_93)) { - lean::cnstr_release(x_93, 0); + lean::cnstr_set(x_93, 0, lean::box(0)); x_99 = x_93; } else { + lean::inc(x_97); lean::dec(x_93); x_99 = lean::box(0); } @@ -23084,23 +23084,23 @@ else { obj* x_101; obj* x_103; obj* x_104; obj* x_106; obj* x_108; obj* x_109; x_101 = lean::cnstr_get(x_93, 0); -lean::inc(x_101); if (lean::is_exclusive(x_93)) { - lean::cnstr_release(x_93, 0); + lean::cnstr_set(x_93, 0, lean::box(0)); x_103 = x_93; } else { + lean::inc(x_101); lean::dec(x_93); x_103 = lean::box(0); } x_104 = lean::cnstr_get(x_101, 0); -lean::inc(x_104); x_106 = lean::cnstr_get(x_101, 1); -lean::inc(x_106); if (lean::is_exclusive(x_101)) { - lean::cnstr_release(x_101, 0); - lean::cnstr_release(x_101, 1); + lean::cnstr_set(x_101, 0, lean::box(0)); + lean::cnstr_set(x_101, 1, lean::box(0)); x_108 = x_101; } else { + lean::inc(x_104); + lean::inc(x_106); lean::dec(x_101); x_108 = lean::box(0); } @@ -23206,11 +23206,11 @@ lean::dec(x_8); lean::dec(x_1); lean::dec(x_0); x_16 = lean::cnstr_get(x_12, 0); -lean::inc(x_16); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_18 = x_12; } else { + lean::inc(x_16); lean::dec(x_12); x_18 = lean::box(0); } @@ -23226,11 +23226,11 @@ else { obj* x_20; obj* x_22; obj* x_23; obj* x_25; obj* x_28; obj* x_31; x_20 = lean::cnstr_get(x_12, 0); -lean::inc(x_20); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_22 = x_12; } else { + lean::inc(x_20); lean::dec(x_12); x_22 = lean::box(0); } @@ -23325,11 +23325,11 @@ obj* x_16; obj* x_18; obj* x_19; lean::dec(x_1); lean::dec(x_0); x_16 = lean::cnstr_get(x_13, 0); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -23454,14 +23454,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -23492,11 +23492,11 @@ if (lean::obj_tag(x_4) == 0) obj* x_6; obj* x_8; obj* x_9; lean::dec(x_0); x_6 = lean::cnstr_get(x_4, 0); -lean::inc(x_6); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_8 = x_4; } else { + lean::inc(x_6); lean::dec(x_4); x_8 = lean::box(0); } @@ -23512,23 +23512,23 @@ else { obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_22; obj* x_23; obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_34; obj* x_35; obj* x_36; obj* x_38; obj* x_40; obj* x_42; obj* x_44; obj* x_46; obj* x_48; obj* x_51; obj* x_52; obj* x_53; obj* x_54; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_12 = x_4; } else { + lean::inc(x_10); lean::dec(x_4); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_10, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_17 = x_10; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_10); x_17 = lean::box(0); } @@ -24054,14 +24054,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -24210,14 +24210,14 @@ _start: { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -24475,14 +24475,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -24522,14 +24522,14 @@ _start: { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -24770,14 +24770,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; obj* x_6; obj* x_9; obj* x_10; obj* x_11; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -24803,12 +24803,12 @@ _start: { obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; x_2 = lean::cnstr_get(x_1, 1); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 1, lean::box(0)); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } @@ -25038,14 +25038,14 @@ _start: { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_25; obj* x_27; obj* x_30; obj* x_33; obj* x_34; obj* x_36; obj* x_37; obj* x_39; obj* x_42; obj* x_43; obj* x_45; obj* x_47; obj* x_49; obj* x_51; obj* x_53; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -25317,20 +25317,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -25397,20 +25397,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -26347,11 +26347,11 @@ else { obj* x_12; obj* x_14; obj* x_15; obj* x_17; uint8 x_20; x_12 = lean::cnstr_get(x_2, 0); -lean::inc(x_12); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_14 = x_2; } else { + lean::inc(x_12); lean::dec(x_2); x_14 = lean::box(0); } @@ -26434,14 +26434,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_14; uint8 x_15; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -26486,14 +26486,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_8; uint8 x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -26536,14 +26536,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_8; uint8 x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -26586,14 +26586,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_8; uint8 x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -26727,12 +26727,12 @@ else obj* x_50; obj* x_52; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; lean::dec(x_4); x_50 = lean::cnstr_get(x_14, 0); -lean::inc(x_50); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); lean::cnstr_release(x_14, 1); x_52 = x_14; } else { + lean::inc(x_50); lean::dec(x_14); x_52 = lean::box(0); } @@ -26762,12 +26762,12 @@ x_60 = lean::cnstr_get(x_9, 0); lean::inc(x_60); lean::dec(x_9); x_63 = lean::cnstr_get(x_60, 1); -lean::inc(x_63); if (lean::is_exclusive(x_60)) { lean::cnstr_release(x_60, 0); - lean::cnstr_release(x_60, 1); + lean::cnstr_set(x_60, 1, lean::box(0)); x_65 = x_60; } else { + lean::inc(x_63); lean::dec(x_60); x_65 = lean::box(0); } @@ -26818,14 +26818,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_13; x_7 = lean::cnstr_get(x_0, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_11 = x_0; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_0); x_11 = lean::box(0); } @@ -26838,11 +26838,11 @@ lean::dec(x_9); lean::dec(x_1); lean::dec(x_11); x_17 = lean::cnstr_get(x_13, 0); -lean::inc(x_17); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_19 = x_13; } else { + lean::inc(x_17); lean::dec(x_13); x_19 = lean::box(0); } @@ -26858,23 +26858,23 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_21 = lean::cnstr_get(x_13, 0); -lean::inc(x_21); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_23 = x_13; } else { + lean::inc(x_21); lean::dec(x_13); x_23 = lean::box(0); } x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_21, 1); -lean::inc(x_26); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_28 = x_21; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_21); x_28 = lean::box(0); } @@ -26942,11 +26942,11 @@ case 1: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -26959,11 +26959,11 @@ obj* x_11; obj* x_13; obj* x_14; lean::dec(x_5); lean::dec(x_3); x_11 = lean::cnstr_get(x_8, 0); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -26979,23 +26979,23 @@ else { obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_32; obj* x_35; obj* x_36; obj* x_37; obj* x_38; x_15 = lean::cnstr_get(x_8, 0); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } x_18 = lean::cnstr_get(x_15, 0); -lean::inc(x_18); x_20 = lean::cnstr_get(x_15, 1); -lean::inc(x_20); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); x_22 = x_15; } else { + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_15); x_22 = lean::box(0); } @@ -27043,11 +27043,11 @@ case 2: { obj* x_39; obj* x_41; obj* x_42; obj* x_44; x_39 = lean::cnstr_get(x_0, 0); -lean::inc(x_39); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_41 = x_0; } else { + lean::inc(x_39); lean::dec(x_0); x_41 = lean::box(0); } @@ -27060,11 +27060,11 @@ obj* x_47; obj* x_49; obj* x_50; lean::dec(x_39); lean::dec(x_41); x_47 = lean::cnstr_get(x_44, 0); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); + lean::cnstr_set(x_44, 0, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -27080,23 +27080,23 @@ else { obj* x_51; obj* x_53; obj* x_54; obj* x_56; obj* x_58; obj* x_59; obj* x_61; obj* x_64; obj* x_65; obj* x_66; obj* x_67; x_51 = lean::cnstr_get(x_44, 0); -lean::inc(x_51); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); + lean::cnstr_set(x_44, 0, lean::box(0)); x_53 = x_44; } else { + lean::inc(x_51); lean::dec(x_44); x_53 = lean::box(0); } x_54 = lean::cnstr_get(x_51, 0); -lean::inc(x_54); x_56 = lean::cnstr_get(x_51, 1); -lean::inc(x_56); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); - lean::cnstr_release(x_51, 1); + lean::cnstr_set(x_51, 0, lean::box(0)); + lean::cnstr_set(x_51, 1, lean::box(0)); x_58 = x_51; } else { + lean::inc(x_54); + lean::inc(x_56); lean::dec(x_51); x_58 = lean::box(0); } @@ -27378,11 +27378,11 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_22; obj* x_24; obj* x_26; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } diff --git a/src/boot/init/lean/expander.cpp b/src/boot/init/lean/expander.cpp index bff98ad58c..a5cceb4ca3 100644 --- a/src/boot/init/lean/expander.cpp +++ b/src/boot/init/lean/expander.cpp @@ -612,14 +612,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -898,14 +898,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -980,14 +980,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_18; obj* x_20; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -1012,11 +1012,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_13); x_32 = lean::cnstr_get(x_26, 0); -lean::inc(x_32); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); + lean::cnstr_set(x_26, 0, lean::box(0)); x_34 = x_26; } else { + lean::inc(x_32); lean::dec(x_26); x_34 = lean::box(0); } @@ -1053,11 +1053,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_11); x_47 = lean::cnstr_get(x_42, 0); -lean::inc(x_47); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_49 = x_42; } else { + lean::inc(x_47); lean::dec(x_42); x_49 = lean::box(0); } @@ -1083,12 +1083,12 @@ lbl_15: { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_14, 1); -lean::inc(x_54); if (lean::is_exclusive(x_14)) { lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 1, lean::box(0)); x_56 = x_14; } else { + lean::inc(x_54); lean::dec(x_14); x_56 = lean::box(0); } @@ -1107,11 +1107,11 @@ else { obj* x_63; obj* x_65; x_63 = lean::cnstr_get(x_57, 0); -lean::inc(x_63); if (lean::is_exclusive(x_57)) { - lean::cnstr_release(x_57, 0); + lean::cnstr_set(x_57, 0, lean::box(0)); x_65 = x_57; } else { + lean::inc(x_63); lean::dec(x_57); x_65 = lean::box(0); } @@ -1132,11 +1132,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_65); x_75 = lean::cnstr_get(x_69, 0); -lean::inc(x_75); if (lean::is_exclusive(x_69)) { - lean::cnstr_release(x_69, 0); + lean::cnstr_set(x_69, 0, lean::box(0)); x_77 = x_69; } else { + lean::inc(x_75); lean::dec(x_69); x_77 = lean::box(0); } @@ -1216,11 +1216,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_65); x_115 = lean::cnstr_get(x_110, 0); -lean::inc(x_115); if (lean::is_exclusive(x_110)) { - lean::cnstr_release(x_110, 0); + lean::cnstr_set(x_110, 0, lean::box(0)); x_117 = x_110; } else { + lean::inc(x_115); lean::dec(x_110); x_117 = lean::box(0); } @@ -1298,11 +1298,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_56); x_159 = lean::cnstr_get(x_152, 0); -lean::inc(x_159); if (lean::is_exclusive(x_152)) { - lean::cnstr_release(x_152, 0); + lean::cnstr_set(x_152, 0, lean::box(0)); x_161 = x_152; } else { + lean::inc(x_159); lean::dec(x_152); x_161 = lean::box(0); } @@ -1384,11 +1384,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_56); x_199 = lean::cnstr_get(x_192, 0); -lean::inc(x_199); if (lean::is_exclusive(x_192)) { - lean::cnstr_release(x_192, 0); + lean::cnstr_set(x_192, 0, lean::box(0)); x_201 = x_192; } else { + lean::inc(x_199); lean::dec(x_192); x_201 = lean::box(0); } @@ -1463,11 +1463,11 @@ lean::dec(x_13); lean::dec(x_224); lean::dec(x_56); x_236 = lean::cnstr_get(x_228, 0); -lean::inc(x_236); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_238 = x_228; } else { + lean::inc(x_236); lean::dec(x_228); x_238 = lean::box(0); } @@ -1483,11 +1483,11 @@ else { obj* x_240; obj* x_242; obj* x_243; obj* x_245; obj* x_248; obj* x_250; obj* x_252; obj* x_254; x_240 = lean::cnstr_get(x_228, 0); -lean::inc(x_240); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_242 = x_228; } else { + lean::inc(x_240); lean::dec(x_228); x_242 = lean::box(0); } @@ -1644,11 +1644,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_11); x_329 = lean::cnstr_get(x_325, 0); -lean::inc(x_329); if (lean::is_exclusive(x_325)) { - lean::cnstr_release(x_325, 0); + lean::cnstr_set(x_325, 0, lean::box(0)); x_331 = x_325; } else { + lean::inc(x_329); lean::dec(x_325); x_331 = lean::box(0); } @@ -1684,12 +1684,12 @@ lbl_17: { obj* x_340; obj* x_342; obj* x_343; x_340 = lean::cnstr_get(x_16, 1); -lean::inc(x_340); if (lean::is_exclusive(x_16)) { lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 1, lean::box(0)); x_342 = x_16; } else { + lean::inc(x_340); lean::dec(x_16); x_342 = lean::box(0); } @@ -1707,11 +1707,11 @@ else { obj* x_348; obj* x_350; x_348 = lean::cnstr_get(x_343, 0); -lean::inc(x_348); if (lean::is_exclusive(x_343)) { - lean::cnstr_release(x_343, 0); + lean::cnstr_set(x_343, 0, lean::box(0)); x_350 = x_343; } else { + lean::inc(x_348); lean::dec(x_343); x_350 = lean::box(0); } @@ -1731,11 +1731,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_350); x_359 = lean::cnstr_get(x_354, 0); -lean::inc(x_359); if (lean::is_exclusive(x_354)) { - lean::cnstr_release(x_354, 0); + lean::cnstr_set(x_354, 0, lean::box(0)); x_361 = x_354; } else { + lean::inc(x_359); lean::dec(x_354); x_361 = lean::box(0); } @@ -1810,11 +1810,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_350); x_398 = lean::cnstr_get(x_393, 0); -lean::inc(x_398); if (lean::is_exclusive(x_393)) { - lean::cnstr_release(x_393, 0); + lean::cnstr_set(x_393, 0, lean::box(0)); x_400 = x_393; } else { + lean::inc(x_398); lean::dec(x_393); x_400 = lean::box(0); } @@ -1891,11 +1891,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_342); x_441 = lean::cnstr_get(x_435, 0); -lean::inc(x_441); if (lean::is_exclusive(x_435)) { - lean::cnstr_release(x_435, 0); + lean::cnstr_set(x_435, 0, lean::box(0)); x_443 = x_435; } else { + lean::inc(x_441); lean::dec(x_435); x_443 = lean::box(0); } @@ -1972,11 +1972,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_342); x_480 = lean::cnstr_get(x_474, 0); -lean::inc(x_480); if (lean::is_exclusive(x_474)) { - lean::cnstr_release(x_474, 0); + lean::cnstr_set(x_474, 0, lean::box(0)); x_482 = x_474; } else { + lean::inc(x_480); lean::dec(x_474); x_482 = lean::box(0); } @@ -2046,11 +2046,11 @@ lean::dec(x_11); lean::dec(x_505); lean::dec(x_342); x_516 = lean::cnstr_get(x_509, 0); -lean::inc(x_516); if (lean::is_exclusive(x_509)) { - lean::cnstr_release(x_509, 0); + lean::cnstr_set(x_509, 0, lean::box(0)); x_518 = x_509; } else { + lean::inc(x_516); lean::dec(x_509); x_518 = lean::box(0); } @@ -2066,11 +2066,11 @@ else { obj* x_520; obj* x_522; obj* x_523; obj* x_525; obj* x_528; obj* x_530; obj* x_532; obj* x_534; x_520 = lean::cnstr_get(x_509, 0); -lean::inc(x_520); if (lean::is_exclusive(x_509)) { - lean::cnstr_release(x_509, 0); + lean::cnstr_set(x_509, 0, lean::box(0)); x_522 = x_509; } else { + lean::inc(x_520); lean::dec(x_509); x_522 = lean::box(0); } @@ -2221,11 +2221,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_11); x_607 = lean::cnstr_get(x_603, 0); -lean::inc(x_607); if (lean::is_exclusive(x_603)) { - lean::cnstr_release(x_603, 0); + lean::cnstr_set(x_603, 0, lean::box(0)); x_609 = x_603; } else { + lean::inc(x_607); lean::dec(x_603); x_609 = lean::box(0); } @@ -2273,26 +2273,26 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_11 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -2451,11 +2451,11 @@ else { obj* x_8; obj* x_10; obj* x_11; obj* x_14; obj* x_16; obj* x_17; obj* x_20; obj* x_22; obj* x_24; x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -2503,11 +2503,11 @@ lean::dec(x_1); lean::dec(x_2); lean::dec(x_27); x_38 = lean::cnstr_get(x_31, 0); -lean::inc(x_38); if (lean::is_exclusive(x_31)) { - lean::cnstr_release(x_31, 0); + lean::cnstr_set(x_31, 0, lean::box(0)); x_40 = x_31; } else { + lean::inc(x_38); lean::dec(x_31); x_40 = lean::box(0); } @@ -2526,14 +2526,14 @@ x_42 = lean::cnstr_get(x_31, 0); lean::inc(x_42); lean::dec(x_31); x_45 = lean::cnstr_get(x_42, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_42, 1); -lean::inc(x_47); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); - lean::cnstr_release(x_42, 1); + lean::cnstr_set(x_42, 0, lean::box(0)); + lean::cnstr_set(x_42, 1, lean::box(0)); x_49 = x_42; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_42); x_49 = lean::box(0); } @@ -2584,11 +2584,11 @@ obj* x_72; obj* x_74; obj* x_75; lean::dec(x_17); lean::dec(x_10); x_72 = lean::cnstr_get(x_69, 0); -lean::inc(x_72); if (lean::is_exclusive(x_69)) { - lean::cnstr_release(x_69, 0); + lean::cnstr_set(x_69, 0, lean::box(0)); x_74 = x_69; } else { + lean::inc(x_72); lean::dec(x_69); x_74 = lean::box(0); } @@ -2604,11 +2604,11 @@ else { obj* x_76; obj* x_78; obj* x_79; obj* x_82; obj* x_85; obj* x_86; obj* x_87; obj* x_90; obj* x_91; obj* x_92; x_76 = lean::cnstr_get(x_69, 0); -lean::inc(x_76); if (lean::is_exclusive(x_69)) { - lean::cnstr_release(x_69, 0); + lean::cnstr_set(x_69, 0, lean::box(0)); x_78 = x_69; } else { + lean::inc(x_76); lean::dec(x_69); x_78 = lean::box(0); } @@ -2820,11 +2820,11 @@ else { obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_33; uint8 x_34; x_27 = lean::cnstr_get(x_5, 0); -lean::inc(x_27); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_29 = x_5; } else { + lean::inc(x_27); lean::dec(x_5); x_29 = lean::box(0); } @@ -2878,11 +2878,11 @@ if (lean::obj_tag(x_55) == 0) obj* x_57; obj* x_59; obj* x_60; lean::dec(x_1); x_57 = lean::cnstr_get(x_55, 0); -lean::inc(x_57); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_59 = x_55; } else { + lean::inc(x_57); lean::dec(x_55); x_59 = lean::box(0); } @@ -3173,11 +3173,11 @@ obj* x_26; obj* x_28; obj* x_29; lean::dec(x_6); lean::dec(x_9); x_26 = lean::cnstr_get(x_23, 0); -lean::inc(x_26); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_28 = x_23; } else { + lean::inc(x_26); lean::dec(x_23); x_28 = lean::box(0); } @@ -3193,11 +3193,11 @@ else { obj* x_30; obj* x_32; obj* x_33; obj* x_34; obj* x_37; obj* x_39; x_30 = lean::cnstr_get(x_23, 0); -lean::inc(x_30); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_32 = x_23; } else { + lean::inc(x_30); lean::dec(x_23); x_32 = lean::box(0); } @@ -3360,11 +3360,11 @@ if (lean::obj_tag(x_12) == 0) { obj* x_13; obj* x_15; obj* x_16; x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_15 = x_12; } else { + lean::inc(x_13); lean::dec(x_12); x_15 = lean::box(0); } @@ -3380,11 +3380,11 @@ else { obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -3716,14 +3716,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; uint8 x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -3757,14 +3757,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -3811,14 +3811,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_3, 1); -lean::inc(x_9); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_11 = x_3; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_3); x_11 = lean::box(0); } @@ -3875,14 +3875,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -3922,14 +3922,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -3962,14 +3962,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; uint8 x_13; obj* x_14; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4006,14 +4006,14 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; uint8 x_22; obj* x_23; obj* x_24; obj* x_25; x_6 = lean::cnstr_get(x_2, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_2, 1); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } @@ -4060,14 +4060,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4108,14 +4108,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; uint8 x_10; obj* x_12; obj* x_13; obj* x_14; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4149,14 +4149,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; uint8 x_13; obj* x_14; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4193,14 +4193,14 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; uint8 x_22; obj* x_23; obj* x_24; obj* x_25; x_6 = lean::cnstr_get(x_2, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_2, 1); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } @@ -4247,14 +4247,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4295,14 +4295,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; uint8 x_10; obj* x_12; obj* x_13; obj* x_14; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4336,14 +4336,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; uint8 x_13; obj* x_14; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4380,14 +4380,14 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; uint8 x_22; obj* x_23; obj* x_24; obj* x_25; x_6 = lean::cnstr_get(x_2, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_2, 1); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } @@ -4434,14 +4434,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4482,14 +4482,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; uint8 x_10; obj* x_12; obj* x_13; obj* x_14; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4523,14 +4523,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4572,14 +4572,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; uint8 x_15; obj* x_16; obj* x_17; obj* x_18; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -4620,14 +4620,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -4663,14 +4663,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_7 = lean::cnstr_get(x_3, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_3, 1); -lean::inc(x_9); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_11 = x_3; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_3); x_11 = lean::box(0); } @@ -4716,14 +4716,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -4763,14 +4763,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -4989,11 +4989,11 @@ if (lean::obj_tag(x_58) == 0) obj* x_60; obj* x_62; obj* x_63; lean::dec(x_18); x_60 = lean::cnstr_get(x_58, 0); -lean::inc(x_60); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_62 = x_58; } else { + lean::inc(x_60); lean::dec(x_58); x_62 = lean::box(0); } @@ -5009,11 +5009,11 @@ else { obj* x_64; obj* x_66; obj* x_67; obj* x_70; obj* x_71; x_64 = lean::cnstr_get(x_58, 0); -lean::inc(x_64); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_66 = x_58; } else { + lean::inc(x_64); lean::dec(x_58); x_66 = lean::box(0); } @@ -5109,11 +5109,11 @@ if (lean::obj_tag(x_111) == 0) obj* x_113; obj* x_115; obj* x_116; lean::dec(x_6); x_113 = lean::cnstr_get(x_111, 0); -lean::inc(x_113); if (lean::is_exclusive(x_111)) { - lean::cnstr_release(x_111, 0); + lean::cnstr_set(x_111, 0, lean::box(0)); x_115 = x_111; } else { + lean::inc(x_113); lean::dec(x_111); x_115 = lean::box(0); } @@ -5129,11 +5129,11 @@ else { obj* x_117; obj* x_119; obj* x_120; obj* x_123; obj* x_124; x_117 = lean::cnstr_get(x_111, 0); -lean::inc(x_117); if (lean::is_exclusive(x_111)) { - lean::cnstr_release(x_111, 0); + lean::cnstr_set(x_111, 0, lean::box(0)); x_119 = x_111; } else { + lean::inc(x_117); lean::dec(x_111); x_119 = lean::box(0); } @@ -5228,11 +5228,11 @@ if (lean::obj_tag(x_164) == 0) obj* x_166; obj* x_168; obj* x_169; lean::dec(x_6); x_166 = lean::cnstr_get(x_164, 0); -lean::inc(x_166); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); + lean::cnstr_set(x_164, 0, lean::box(0)); x_168 = x_164; } else { + lean::inc(x_166); lean::dec(x_164); x_168 = lean::box(0); } @@ -5248,11 +5248,11 @@ else { obj* x_170; obj* x_172; obj* x_173; obj* x_176; obj* x_177; x_170 = lean::cnstr_get(x_164, 0); -lean::inc(x_170); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); + lean::cnstr_set(x_164, 0, lean::box(0)); x_172 = x_164; } else { + lean::inc(x_170); lean::dec(x_164); x_172 = lean::box(0); } @@ -5327,11 +5327,11 @@ if (lean::obj_tag(x_206) == 0) obj* x_208; obj* x_210; obj* x_211; lean::dec(x_1); x_208 = lean::cnstr_get(x_206, 0); -lean::inc(x_208); if (lean::is_exclusive(x_206)) { - lean::cnstr_release(x_206, 0); + lean::cnstr_set(x_206, 0, lean::box(0)); x_210 = x_206; } else { + lean::inc(x_208); lean::dec(x_206); x_210 = lean::box(0); } @@ -5347,11 +5347,11 @@ else { obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_220; x_212 = lean::cnstr_get(x_206, 0); -lean::inc(x_212); if (lean::is_exclusive(x_206)) { - lean::cnstr_release(x_206, 0); + lean::cnstr_set(x_206, 0, lean::box(0)); x_214 = x_206; } else { + lean::inc(x_212); lean::dec(x_206); x_214 = lean::box(0); } @@ -5643,11 +5643,11 @@ if (lean::obj_tag(x_354) == 0) obj* x_356; obj* x_358; obj* x_359; lean::dec(x_1); x_356 = lean::cnstr_get(x_354, 0); -lean::inc(x_356); if (lean::is_exclusive(x_354)) { - lean::cnstr_release(x_354, 0); + lean::cnstr_set(x_354, 0, lean::box(0)); x_358 = x_354; } else { + lean::inc(x_356); lean::dec(x_354); x_358 = lean::box(0); } @@ -5754,11 +5754,11 @@ obj* x_411; obj* x_413; obj* x_414; lean::dec(x_365); lean::dec(x_363); x_411 = lean::cnstr_get(x_408, 0); -lean::inc(x_411); if (lean::is_exclusive(x_408)) { - lean::cnstr_release(x_408, 0); + lean::cnstr_set(x_408, 0, lean::box(0)); x_413 = x_408; } else { + lean::inc(x_411); lean::dec(x_408); x_413 = lean::box(0); } @@ -5774,11 +5774,11 @@ else { obj* x_415; obj* x_417; obj* x_418; uint8 x_421; obj* x_422; obj* x_423; x_415 = lean::cnstr_get(x_408, 0); -lean::inc(x_415); if (lean::is_exclusive(x_408)) { - lean::cnstr_release(x_408, 0); + lean::cnstr_set(x_408, 0, lean::box(0)); x_417 = x_408; } else { + lean::inc(x_415); lean::dec(x_408); x_417 = lean::box(0); } @@ -6142,14 +6142,14 @@ else { obj* x_7; obj* x_9; obj* x_11; obj* x_14; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_11 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -6164,11 +6164,11 @@ lean::dec(x_11); lean::dec(x_3); lean::dec(x_0); x_19 = lean::cnstr_get(x_14, 0); -lean::inc(x_19); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_21 = x_14; } else { + lean::inc(x_19); lean::dec(x_14); x_21 = lean::box(0); } @@ -6184,11 +6184,11 @@ else { obj* x_23; obj* x_25; x_23 = lean::cnstr_get(x_14, 0); -lean::inc(x_23); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_25 = x_14; } else { + lean::inc(x_23); lean::dec(x_14); x_25 = lean::box(0); } @@ -6419,11 +6419,11 @@ else { obj* x_16; obj* x_18; x_16 = lean::cnstr_get(x_7, 0); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -6552,11 +6552,11 @@ lean::dec(x_0); lean::dec(x_56); lean::dec(x_32); x_66 = lean::cnstr_get(x_60, 0); -lean::inc(x_66); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_68 = x_60; } else { + lean::inc(x_66); lean::dec(x_60); x_68 = lean::box(0); } @@ -6572,11 +6572,11 @@ else { obj* x_70; obj* x_72; obj* x_73; obj* x_76; x_70 = lean::cnstr_get(x_60, 0); -lean::inc(x_70); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_72 = x_60; } else { + lean::inc(x_70); lean::dec(x_60); x_72 = lean::box(0); } @@ -6674,14 +6674,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } @@ -6694,11 +6694,11 @@ lean::dec(x_8); lean::dec(x_6); lean::dec(x_1); x_14 = lean::cnstr_get(x_10, 0); -lean::inc(x_14); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_16 = x_10; } else { + lean::inc(x_14); lean::dec(x_10); x_16 = lean::box(0); } @@ -6714,11 +6714,11 @@ else { obj* x_18; obj* x_20; obj* x_21; x_18 = lean::cnstr_get(x_10, 0); -lean::inc(x_18); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_20 = x_10; } else { + lean::inc(x_18); lean::dec(x_10); x_20 = lean::box(0); } @@ -6777,11 +6777,11 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_9; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_8 = x_5; } else { + lean::inc(x_6); lean::dec(x_5); x_8 = lean::box(0); } @@ -6791,11 +6791,11 @@ if (lean::obj_tag(x_9) == 0) obj* x_11; obj* x_13; obj* x_14; lean::dec(x_8); x_11 = lean::cnstr_get(x_9, 0); -lean::inc(x_11); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_13 = x_9; } else { + lean::inc(x_11); lean::dec(x_9); x_13 = lean::box(0); } @@ -6811,11 +6811,11 @@ else { obj* x_15; obj* x_17; obj* x_18; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_15 = lean::cnstr_get(x_9, 0); -lean::inc(x_15); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_17 = x_9; } else { + lean::inc(x_15); lean::dec(x_9); x_17 = lean::box(0); } @@ -7035,14 +7035,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_10; obj* x_11; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7080,14 +7080,14 @@ _start: obj* x_3; obj* x_5; obj* x_7; lean::dec(x_1); x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_0, 1); -lean::inc(x_5); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_7 = x_0; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_0); x_7 = lean::box(0); } @@ -7185,11 +7185,11 @@ else { obj* x_12; obj* x_14; obj* x_15; obj* x_17; x_12 = lean::cnstr_get(x_8, 0); -lean::inc(x_12); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_14 = x_8; } else { + lean::inc(x_12); lean::dec(x_8); x_14 = lean::box(0); } @@ -7436,11 +7436,11 @@ else { obj* x_25; obj* x_27; obj* x_28; obj* x_30; obj* x_31; obj* x_34; obj* x_37; obj* x_38; obj* x_39; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_47; obj* x_48; obj* x_49; obj* x_51; obj* x_52; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; obj* x_69; obj* x_70; obj* x_71; x_25 = lean::cnstr_get(x_8, 0); -lean::inc(x_25); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_27 = x_8; } else { + lean::inc(x_25); lean::dec(x_8); x_27 = lean::box(0); } @@ -7541,14 +7541,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7613,26 +7613,26 @@ if (lean::obj_tag(x_7) == 0) { obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_16; obj* x_18; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } x_12 = lean::cnstr_get(x_9, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_9, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 2); -lean::inc(x_16); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_18 = x_9; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_9); x_18 = lean::box(0); } @@ -7854,14 +7854,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7901,14 +7901,14 @@ x_6 = lean::apply_1(x_4, x_0); x_7 = lean::cnstr_get(x_6, 2); lean::inc(x_7); x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_7, 1); -lean::inc(x_11); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_13 = x_7; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_7); x_13 = lean::box(0); } @@ -8072,38 +8072,38 @@ case 4: { obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_24; obj* x_26; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } x_12 = lean::cnstr_get(x_9, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_9, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 2); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 3); -lean::inc(x_18); x_20 = lean::cnstr_get(x_9, 4); -lean::inc(x_20); x_22 = lean::cnstr_get(x_9, 5); -lean::inc(x_22); x_24 = lean::cnstr_get(x_9, 6); -lean::inc(x_24); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); - lean::cnstr_release(x_9, 3); - lean::cnstr_release(x_9, 4); - lean::cnstr_release(x_9, 5); - lean::cnstr_release(x_9, 6); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); + lean::cnstr_set(x_9, 3, lean::box(0)); + lean::cnstr_set(x_9, 4, lean::box(0)); + lean::cnstr_set(x_9, 5, lean::box(0)); + lean::cnstr_set(x_9, 6, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); + lean::inc(x_22); + lean::inc(x_24); lean::dec(x_9); x_26 = lean::box(0); } @@ -8212,41 +8212,41 @@ case 5: { obj* x_76; obj* x_78; obj* x_79; obj* x_81; obj* x_83; obj* x_85; obj* x_87; obj* x_89; obj* x_91; obj* x_93; obj* x_95; x_76 = lean::cnstr_get(x_7, 0); -lean::inc(x_76); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_78 = x_7; } else { + lean::inc(x_76); lean::dec(x_7); x_78 = lean::box(0); } x_79 = lean::cnstr_get(x_76, 0); -lean::inc(x_79); x_81 = lean::cnstr_get(x_76, 1); -lean::inc(x_81); x_83 = lean::cnstr_get(x_76, 2); -lean::inc(x_83); x_85 = lean::cnstr_get(x_76, 3); -lean::inc(x_85); x_87 = lean::cnstr_get(x_76, 4); -lean::inc(x_87); x_89 = lean::cnstr_get(x_76, 5); -lean::inc(x_89); x_91 = lean::cnstr_get(x_76, 6); -lean::inc(x_91); x_93 = lean::cnstr_get(x_76, 7); -lean::inc(x_93); if (lean::is_exclusive(x_76)) { - lean::cnstr_release(x_76, 0); - lean::cnstr_release(x_76, 1); - lean::cnstr_release(x_76, 2); - lean::cnstr_release(x_76, 3); - lean::cnstr_release(x_76, 4); - lean::cnstr_release(x_76, 5); - lean::cnstr_release(x_76, 6); - lean::cnstr_release(x_76, 7); + lean::cnstr_set(x_76, 0, lean::box(0)); + lean::cnstr_set(x_76, 1, lean::box(0)); + lean::cnstr_set(x_76, 2, lean::box(0)); + lean::cnstr_set(x_76, 3, lean::box(0)); + lean::cnstr_set(x_76, 4, lean::box(0)); + lean::cnstr_set(x_76, 5, lean::box(0)); + lean::cnstr_set(x_76, 6, lean::box(0)); + lean::cnstr_set(x_76, 7, lean::box(0)); x_95 = x_76; } else { + lean::inc(x_79); + lean::inc(x_81); + lean::inc(x_83); + lean::inc(x_85); + lean::inc(x_87); + lean::inc(x_89); + lean::inc(x_91); + lean::inc(x_93); lean::dec(x_76); x_95 = lean::box(0); } @@ -8368,14 +8368,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -8405,14 +8405,14 @@ x_6 = lean::apply_1(x_4, x_0); x_7 = lean::cnstr_get(x_6, 3); lean::inc(x_7); x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_7, 1); -lean::inc(x_11); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_13 = x_7; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_7); x_13 = lean::box(0); } @@ -8435,11 +8435,11 @@ else { obj* x_21; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_33; obj* x_35; obj* x_37; obj* x_40; obj* x_41; obj* x_44; obj* x_47; obj* x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; x_21 = lean::cnstr_get(x_11, 0); -lean::inc(x_21); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_23 = x_11; } else { + lean::inc(x_21); lean::dec(x_11); x_23 = lean::box(0); } @@ -8767,14 +8767,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } @@ -8785,17 +8785,17 @@ obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_19; x_11 = lean::cnstr_get(x_4, 0); lean::inc(x_11); x_13 = lean::cnstr_get(x_11, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_11, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_11, 2); -lean::inc(x_17); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_19 = x_11; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_11); x_19 = lean::box(0); } @@ -8815,26 +8815,26 @@ else { obj* x_26; obj* x_28; obj* x_29; obj* x_31; obj* x_33; obj* x_35; x_26 = lean::cnstr_get(x_15, 0); -lean::inc(x_26); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_28 = x_15; } else { + lean::inc(x_26); lean::dec(x_15); x_28 = lean::box(0); } x_29 = lean::cnstr_get(x_26, 0); -lean::inc(x_29); x_31 = lean::cnstr_get(x_26, 1); -lean::inc(x_31); x_33 = lean::cnstr_get(x_26, 2); -lean::inc(x_33); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); - lean::cnstr_release(x_26, 2); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); + lean::cnstr_set(x_26, 2, lean::box(0)); x_35 = x_26; } else { + lean::inc(x_29); + lean::inc(x_31); + lean::inc(x_33); lean::dec(x_26); x_35 = lean::box(0); } @@ -8926,11 +8926,11 @@ lean::dec(x_8); lean::dec(x_6); lean::dec(x_1); x_68 = lean::cnstr_get(x_9, 0); -lean::inc(x_68); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_70 = x_9; } else { + lean::inc(x_68); lean::dec(x_9); x_70 = lean::box(0); } @@ -8946,11 +8946,11 @@ else { obj* x_72; obj* x_74; obj* x_75; x_72 = lean::cnstr_get(x_9, 0); -lean::inc(x_72); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_74 = x_9; } else { + lean::inc(x_72); lean::dec(x_9); x_74 = lean::box(0); } @@ -9013,11 +9013,11 @@ if (lean::obj_tag(x_6) == 0) { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_6, 0); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -9027,11 +9027,11 @@ if (lean::obj_tag(x_12) == 0) obj* x_14; obj* x_16; obj* x_17; lean::dec(x_11); x_14 = lean::cnstr_get(x_12, 0); -lean::inc(x_14); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_16 = x_12; } else { + lean::inc(x_14); lean::dec(x_12); x_16 = lean::box(0); } @@ -9047,11 +9047,11 @@ else { obj* x_18; obj* x_20; obj* x_21; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; x_18 = lean::cnstr_get(x_12, 0); -lean::inc(x_18); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_20 = x_12; } else { + lean::inc(x_18); lean::dec(x_12); x_20 = lean::box(0); } @@ -9214,14 +9214,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -9336,20 +9336,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -9416,20 +9416,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -9849,14 +9849,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_16; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -9871,11 +9871,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_13); x_21 = lean::cnstr_get(x_16, 0); -lean::inc(x_21); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_23 = x_16; } else { + lean::inc(x_21); lean::dec(x_16); x_23 = lean::box(0); } @@ -9891,23 +9891,23 @@ else { obj* x_25; obj* x_27; obj* x_28; obj* x_30; obj* x_32; obj* x_33; x_25 = lean::cnstr_get(x_16, 0); -lean::inc(x_25); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_27 = x_16; } else { + lean::inc(x_25); lean::dec(x_16); x_27 = lean::box(0); } x_28 = lean::cnstr_get(x_25, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_25, 1); -lean::inc(x_30); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); x_32 = x_25; } else { + lean::inc(x_28); + lean::inc(x_30); lean::dec(x_25); x_32 = lean::box(0); } @@ -9981,14 +9981,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -10030,14 +10030,14 @@ else { obj* x_9; obj* x_11; obj* x_13; obj* x_16; x_9 = lean::cnstr_get(x_1, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_1, 1); -lean::inc(x_11); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_13 = x_1; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_1); x_13 = lean::box(0); } @@ -10052,11 +10052,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_13); x_21 = lean::cnstr_get(x_16, 0); -lean::inc(x_21); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_23 = x_16; } else { + lean::inc(x_21); lean::dec(x_16); x_23 = lean::box(0); } @@ -10072,23 +10072,23 @@ else { obj* x_25; obj* x_27; obj* x_28; obj* x_30; obj* x_32; obj* x_33; x_25 = lean::cnstr_get(x_16, 0); -lean::inc(x_25); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_27 = x_16; } else { + lean::inc(x_25); lean::dec(x_16); x_27 = lean::box(0); } x_28 = lean::cnstr_get(x_25, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_25, 1); -lean::inc(x_30); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); x_32 = x_25; } else { + lean::inc(x_28); + lean::inc(x_30); lean::dec(x_25); x_32 = lean::box(0); } @@ -10207,11 +10207,11 @@ if (lean::obj_tag(x_28) == 0) obj* x_30; obj* x_32; obj* x_33; lean::dec(x_21); x_30 = lean::cnstr_get(x_28, 0); -lean::inc(x_30); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); + lean::cnstr_set(x_28, 0, lean::box(0)); x_32 = x_28; } else { + lean::inc(x_30); lean::dec(x_28); x_32 = lean::box(0); } @@ -10227,23 +10227,23 @@ else { obj* x_34; obj* x_36; obj* x_37; obj* x_39; obj* x_41; obj* x_42; obj* x_43; obj* x_44; x_34 = lean::cnstr_get(x_28, 0); -lean::inc(x_34); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); + lean::cnstr_set(x_28, 0, lean::box(0)); x_36 = x_28; } else { + lean::inc(x_34); lean::dec(x_28); x_36 = lean::box(0); } x_37 = lean::cnstr_get(x_34, 0); -lean::inc(x_37); x_39 = lean::cnstr_get(x_34, 1); -lean::inc(x_39); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); - lean::cnstr_release(x_34, 1); + lean::cnstr_set(x_34, 0, lean::box(0)); + lean::cnstr_set(x_34, 1, lean::box(0)); x_41 = x_34; } else { + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_34); x_41 = lean::box(0); } @@ -10281,11 +10281,11 @@ lean::dec(x_45); lean::dec(x_17); lean::dec(x_21); x_55 = lean::cnstr_get(x_49, 0); -lean::inc(x_55); if (lean::is_exclusive(x_49)) { - lean::cnstr_release(x_49, 0); + lean::cnstr_set(x_49, 0, lean::box(0)); x_57 = x_49; } else { + lean::inc(x_55); lean::dec(x_49); x_57 = lean::box(0); } @@ -10301,23 +10301,23 @@ else { obj* x_59; obj* x_61; obj* x_62; obj* x_64; obj* x_66; obj* x_67; obj* x_72; obj* x_74; obj* x_75; obj* x_77; x_59 = lean::cnstr_get(x_49, 0); -lean::inc(x_59); if (lean::is_exclusive(x_49)) { - lean::cnstr_release(x_49, 0); + lean::cnstr_set(x_49, 0, lean::box(0)); x_61 = x_49; } else { + lean::inc(x_59); lean::dec(x_49); x_61 = lean::box(0); } x_62 = lean::cnstr_get(x_59, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_59, 1); -lean::inc(x_64); if (lean::is_exclusive(x_59)) { - lean::cnstr_release(x_59, 0); - lean::cnstr_release(x_59, 1); + lean::cnstr_set(x_59, 0, lean::box(0)); + lean::cnstr_set(x_59, 1, lean::box(0)); x_66 = x_59; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_59); x_66 = lean::box(0); } @@ -10464,11 +10464,11 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_8; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_7 = x_4; } else { + lean::inc(x_5); lean::dec(x_4); x_7 = lean::box(0); } @@ -10484,11 +10484,11 @@ else { obj* x_9; obj* x_11; obj* x_12; obj* x_15; x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } diff --git a/src/boot/init/lean/format.cpp b/src/boot/init/lean/format.cpp index a6f014a2b3..e72a9f4176 100644 --- a/src/boot/init/lean/format.cpp +++ b/src/boot/init/lean/format.cpp @@ -701,26 +701,26 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; x_6 = lean::cnstr_get(x_3, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_3, 1); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -1801,11 +1801,11 @@ case 2: { obj* x_3; obj* x_5; obj* x_6; obj* x_7; uint8 x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -1846,14 +1846,14 @@ case 3: { obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_27; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; x_21 = lean::cnstr_get(x_0, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_0, 1); -lean::inc(x_23); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_25 = x_0; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_0); x_25 = lean::box(0); } @@ -1907,14 +1907,14 @@ case 4: uint8 x_47; obj* x_48; obj* x_50; obj* x_52; obj* x_53; obj* x_54; x_47 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_48 = lean::cnstr_get(x_0, 0); -lean::inc(x_48); x_50 = lean::cnstr_get(x_0, 1); -lean::inc(x_50); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_52 = x_0; } else { + lean::inc(x_48); + lean::inc(x_50); lean::dec(x_0); x_52 = lean::box(0); } @@ -2013,14 +2013,14 @@ default: { obj* x_91; obj* x_93; obj* x_95; obj* x_96; uint8 x_97; obj* x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; obj* x_104; obj* x_105; obj* x_106; obj* x_107; obj* x_108; obj* x_109; obj* x_110; obj* x_111; obj* x_112; obj* x_113; obj* x_114; obj* x_115; x_91 = lean::cnstr_get(x_0, 0); -lean::inc(x_91); x_93 = lean::cnstr_get(x_0, 1); -lean::inc(x_93); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_95 = x_0; } else { + lean::inc(x_91); + lean::inc(x_93); lean::dec(x_0); x_95 = lean::box(0); } diff --git a/src/boot/init/lean/frontend.cpp b/src/boot/init/lean/frontend.cpp index 7c0340f361..11fc2d8457 100644 --- a/src/boot/init/lean/frontend.cpp +++ b/src/boot/init/lean/frontend.cpp @@ -121,11 +121,11 @@ obj* x_16; obj* x_18; obj* x_19; lean::dec(x_1); lean::dec(x_0); x_16 = lean::cnstr_get(x_13, 0); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -141,11 +141,11 @@ else { obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -240,14 +240,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -328,12 +328,12 @@ _start: { obj* x_2; obj* x_4; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); lean::cnstr_release(x_1, 1); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } @@ -424,14 +424,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = lean::apply_1(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -439,11 +439,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -466,11 +466,11 @@ else { obj* x_13; obj* x_15; obj* x_16; obj* x_17; x_13 = lean::cnstr_get(x_3, 0); -lean::inc(x_13); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_15 = x_3; } else { + lean::inc(x_13); lean::dec(x_3); x_15 = lean::box(0); } @@ -515,14 +515,14 @@ _start: obj* x_2; obj* x_3; obj* x_5; obj* x_7; x_2 = l___private_init_io_12__put__str___at_lean_run__frontend___spec__5(x_0, x_1); x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -530,11 +530,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -598,14 +598,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -615,11 +615,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -673,14 +673,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -690,11 +690,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -748,14 +748,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -765,11 +765,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -823,14 +823,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -840,11 +840,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -898,14 +898,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -915,11 +915,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -973,14 +973,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -990,11 +990,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -1048,14 +1048,14 @@ lean::dec(x_1); lean::inc(x_0); x_12 = lean::apply_2(x_0, x_6, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -1065,11 +1065,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_0); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -1120,50 +1120,50 @@ _start: { obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_28; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } x_11 = lean::cnstr_get(x_8, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_15 = x_8; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_8); x_15 = lean::box(0); } x_16 = lean::cnstr_get(x_13, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_13, 1); -lean::inc(x_18); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_20 = x_13; } else { + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_13); x_20 = lean::box(0); } x_21 = lean::cnstr_get(x_18, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_18, 1); -lean::inc(x_23); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); x_25 = x_18; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_18); x_25 = lean::box(0); } @@ -1194,11 +1194,11 @@ if (lean::obj_tag(x_39) == 0) obj* x_45; obj* x_47; obj* x_48; lean::dec(x_23); x_45 = lean::cnstr_get(x_39, 0); -lean::inc(x_45); if (lean::is_exclusive(x_39)) { - lean::cnstr_release(x_39, 0); + lean::cnstr_set(x_39, 0, lean::box(0)); x_47 = x_39; } else { + lean::inc(x_45); lean::dec(x_39); x_47 = lean::box(0); } @@ -1262,11 +1262,11 @@ if (lean::obj_tag(x_66) == 0) { obj* x_67; obj* x_69; obj* x_71; obj* x_72; obj* x_74; x_67 = lean::cnstr_get(x_66, 0); -lean::inc(x_67); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_69 = x_66; } else { + lean::inc(x_67); lean::dec(x_66); x_69 = lean::box(0); } @@ -1358,11 +1358,11 @@ obj* x_101; obj* x_103; obj* x_104; obj* x_106; lean::dec(x_16); lean::dec(x_21); x_101 = lean::cnstr_get(x_66, 0); -lean::inc(x_101); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_103 = x_66; } else { + lean::inc(x_101); lean::dec(x_66); x_103 = lean::box(0); } @@ -1642,11 +1642,11 @@ lean::dec(x_21); lean::dec(x_53); lean::dec(x_55); x_229 = lean::cnstr_get(x_214, 0); -lean::inc(x_229); if (lean::is_exclusive(x_214)) { - lean::cnstr_release(x_214, 0); + lean::cnstr_set(x_214, 0, lean::box(0)); x_231 = x_214; } else { + lean::inc(x_229); lean::dec(x_214); x_231 = lean::box(0); } @@ -2035,11 +2035,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_386; obj* x_388; obj* x_389; obj* x_390; lean::dec(x_0); x_386 = lean::cnstr_get(x_3, 0); -lean::inc(x_386); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_388 = x_3; } else { + lean::inc(x_386); lean::dec(x_3); x_388 = lean::box(0); } @@ -2058,11 +2058,11 @@ else { obj* x_391; obj* x_393; x_391 = lean::cnstr_get(x_3, 0); -lean::inc(x_391); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_393 = x_3; } else { + lean::inc(x_391); lean::dec(x_3); x_393 = lean::box(0); } @@ -2168,11 +2168,11 @@ if (lean::obj_tag(x_9) == 0) { obj* x_10; obj* x_12; obj* x_13; x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_12 = x_9; } else { + lean::inc(x_10); lean::dec(x_9); x_12 = lean::box(0); } @@ -2190,11 +2190,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_16 = x_9; } else { + lean::inc(x_14); lean::dec(x_9); x_16 = lean::box(0); } @@ -2217,11 +2217,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_21 = lean::cnstr_get(x_4, 0); -lean::inc(x_21); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_23 = x_4; } else { + lean::inc(x_21); lean::dec(x_4); x_23 = lean::box(0); } @@ -2476,14 +2476,14 @@ lean::closure_set(x_5, 0, x_4); lean::inc(x_0); x_7 = l_lean_run__frontend(x_0, x_1, x_5, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -2512,12 +2512,12 @@ x_24 = x_23; x_25 = l_lean_message_to__string(x_24); x_26 = l_io_println___at_lean_run__frontend___spec__3(x_25, x_10); x_27 = lean::cnstr_get(x_26, 1); -lean::inc(x_27); if (lean::is_exclusive(x_26)) { lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); + lean::cnstr_set(x_26, 1, lean::box(0)); x_29 = x_26; } else { + lean::inc(x_27); lean::dec(x_26); x_29 = lean::box(0); } diff --git a/src/boot/init/lean/ir/elim_phi.cpp b/src/boot/init/lean/ir/elim_phi.cpp index 8b2f4d613b..ba74d5c795 100644 --- a/src/boot/init/lean/ir/elim_phi.cpp +++ b/src/boot/init/lean/ir/elim_phi.cpp @@ -348,14 +348,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; uint8 x_12; x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -410,14 +410,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_9; usize x_10; usize x_11; obj* x_12; uint8 x_15; x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_0, 1); -lean::inc(x_5); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_7 = x_0; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_0); x_7 = lean::box(0); } @@ -787,27 +787,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_find(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -851,27 +851,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_find(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -915,27 +915,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_find(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -971,28 +971,28 @@ case 0: { obj* x_2; uint8 x_4; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_15; obj* x_17; obj* x_20; obj* x_21; obj* x_22; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_5 = lean::cnstr_get(x_0, 1); -lean::inc(x_5); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_7 = x_0; } else { + lean::inc(x_2); + lean::inc(x_5); lean::dec(x_0); x_7 = lean::box(0); } x_8 = l_lean_ir_find(x_2, x_1); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -1024,28 +1024,28 @@ case 1: { obj* x_23; uint8 x_25; obj* x_26; obj* x_28; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_36; obj* x_37; x_23 = lean::cnstr_get(x_0, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_26 = lean::cnstr_get(x_0, 1); -lean::inc(x_26); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_28 = x_0; } else { + lean::inc(x_23); + lean::inc(x_26); lean::dec(x_0); x_28 = lean::box(0); } x_29 = l_lean_ir_find(x_23, x_1); x_30 = lean::cnstr_get(x_29, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_29, 1); -lean::inc(x_32); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); - lean::cnstr_release(x_29, 1); + lean::cnstr_set(x_29, 0, lean::box(0)); + lean::cnstr_set(x_29, 1, lean::box(0)); x_34 = x_29; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_29); x_34 = lean::box(0); } @@ -1071,29 +1071,29 @@ case 2: { obj* x_38; uint8 x_40; uint8 x_41; obj* x_42; obj* x_44; obj* x_45; obj* x_46; obj* x_48; obj* x_50; obj* x_51; obj* x_52; obj* x_54; obj* x_57; obj* x_58; obj* x_59; obj* x_60; x_38 = lean::cnstr_get(x_0, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_41 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2 + 1); x_42 = lean::cnstr_get(x_0, 1); -lean::inc(x_42); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_44 = x_0; } else { + lean::inc(x_38); + lean::inc(x_42); lean::dec(x_0); x_44 = lean::box(0); } x_45 = l_lean_ir_find(x_38, x_1); x_46 = lean::cnstr_get(x_45, 0); -lean::inc(x_46); x_48 = lean::cnstr_get(x_45, 1); -lean::inc(x_48); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); - lean::cnstr_release(x_45, 1); + lean::cnstr_set(x_45, 0, lean::box(0)); + lean::cnstr_set(x_45, 1, lean::box(0)); x_50 = x_45; } else { + lean::inc(x_46); + lean::inc(x_48); lean::dec(x_45); x_50 = lean::box(0); } @@ -1127,32 +1127,32 @@ case 3: { obj* x_61; uint8 x_63; uint8 x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_71; obj* x_73; obj* x_75; obj* x_76; obj* x_77; obj* x_79; obj* x_82; obj* x_83; obj* x_85; obj* x_88; obj* x_89; obj* x_90; obj* x_91; x_61 = lean::cnstr_get(x_0, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_0, sizeof(void*)*3); x_64 = lean::cnstr_get_scalar(x_0, sizeof(void*)*3 + 1); x_65 = lean::cnstr_get(x_0, 1); -lean::inc(x_65); x_67 = lean::cnstr_get(x_0, 2); -lean::inc(x_67); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_69 = x_0; } else { + lean::inc(x_61); + lean::inc(x_65); + lean::inc(x_67); lean::dec(x_0); x_69 = lean::box(0); } x_70 = l_lean_ir_find(x_61, x_1); x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); x_75 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); lean::dec(x_70); x_75 = lean::box(0); } @@ -1194,24 +1194,24 @@ case 4: uint8 x_92; obj* x_93; obj* x_95; obj* x_96; obj* x_97; obj* x_99; obj* x_101; obj* x_102; obj* x_103; obj* x_104; x_92 = lean::cnstr_get_scalar(x_0, sizeof(void*)*1); x_93 = lean::cnstr_get(x_0, 0); -lean::inc(x_93); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_95 = x_0; } else { + lean::inc(x_93); lean::dec(x_0); x_95 = lean::box(0); } x_96 = l_lean_ir_find(x_93, x_1); x_97 = lean::cnstr_get(x_96, 0); -lean::inc(x_97); x_99 = lean::cnstr_get(x_96, 1); -lean::inc(x_99); if (lean::is_exclusive(x_96)) { - lean::cnstr_release(x_96, 0); - lean::cnstr_release(x_96, 1); + lean::cnstr_set(x_96, 0, lean::box(0)); + lean::cnstr_set(x_96, 1, lean::box(0)); x_101 = x_96; } else { + lean::inc(x_97); + lean::inc(x_99); lean::dec(x_96); x_101 = lean::box(0); } @@ -1236,30 +1236,30 @@ case 5: { obj* x_105; obj* x_107; obj* x_109; obj* x_111; obj* x_112; obj* x_113; obj* x_115; obj* x_117; obj* x_118; obj* x_119; obj* x_121; obj* x_124; obj* x_125; x_105 = lean::cnstr_get(x_0, 0); -lean::inc(x_105); x_107 = lean::cnstr_get(x_0, 1); -lean::inc(x_107); x_109 = lean::cnstr_get(x_0, 2); -lean::inc(x_109); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_111 = x_0; } else { + lean::inc(x_105); + lean::inc(x_107); + lean::inc(x_109); lean::dec(x_0); x_111 = lean::box(0); } x_112 = l_lean_ir_find(x_105, x_1); x_113 = lean::cnstr_get(x_112, 0); -lean::inc(x_113); x_115 = lean::cnstr_get(x_112, 1); -lean::inc(x_115); if (lean::is_exclusive(x_112)) { - lean::cnstr_release(x_112, 0); - lean::cnstr_release(x_112, 1); + lean::cnstr_set(x_112, 0, lean::box(0)); + lean::cnstr_set(x_112, 1, lean::box(0)); x_117 = x_112; } else { + lean::inc(x_113); + lean::inc(x_115); lean::dec(x_112); x_117 = lean::box(0); } @@ -1290,27 +1290,27 @@ case 6: { obj* x_126; uint16 x_128; uint16 x_129; usize x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_135; obj* x_137; obj* x_138; obj* x_139; obj* x_140; obj* x_141; obj* x_142; x_126 = lean::cnstr_get(x_0, 0); -lean::inc(x_126); x_128 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_129 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2 + 2); x_130 = lean::cnstr_get_scalar(x_0, sizeof(void*)*1); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_131 = x_0; } else { + lean::inc(x_126); lean::dec(x_0); x_131 = lean::box(0); } x_132 = l_lean_ir_find(x_126, x_1); x_133 = lean::cnstr_get(x_132, 0); -lean::inc(x_133); x_135 = lean::cnstr_get(x_132, 1); -lean::inc(x_135); if (lean::is_exclusive(x_132)) { - lean::cnstr_release(x_132, 0); - lean::cnstr_release(x_132, 1); + lean::cnstr_set(x_132, 0, lean::box(0)); + lean::cnstr_set(x_132, 1, lean::box(0)); x_137 = x_132; } else { + lean::inc(x_133); + lean::inc(x_135); lean::dec(x_132); x_137 = lean::box(0); } @@ -1339,28 +1339,28 @@ case 7: { obj* x_143; uint16 x_145; obj* x_146; obj* x_148; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_156; obj* x_158; obj* x_161; obj* x_162; obj* x_163; x_143 = lean::cnstr_get(x_0, 0); -lean::inc(x_143); x_145 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_146 = lean::cnstr_get(x_0, 1); -lean::inc(x_146); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_148 = x_0; } else { + lean::inc(x_143); + lean::inc(x_146); lean::dec(x_0); x_148 = lean::box(0); } x_149 = l_lean_ir_find(x_143, x_1); x_150 = lean::cnstr_get(x_149, 0); -lean::inc(x_150); x_152 = lean::cnstr_get(x_149, 1); -lean::inc(x_152); if (lean::is_exclusive(x_149)) { - lean::cnstr_release(x_149, 0); - lean::cnstr_release(x_149, 1); + lean::cnstr_set(x_149, 0, lean::box(0)); + lean::cnstr_set(x_149, 1, lean::box(0)); x_154 = x_149; } else { + lean::inc(x_150); + lean::inc(x_152); lean::dec(x_149); x_154 = lean::box(0); } @@ -1392,28 +1392,28 @@ case 8: { obj* x_164; obj* x_166; uint16 x_168; obj* x_169; obj* x_170; obj* x_171; obj* x_173; obj* x_175; obj* x_176; obj* x_177; obj* x_179; obj* x_182; obj* x_183; obj* x_184; x_164 = lean::cnstr_get(x_0, 0); -lean::inc(x_164); x_166 = lean::cnstr_get(x_0, 1); -lean::inc(x_166); x_168 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_169 = x_0; } else { + lean::inc(x_164); + lean::inc(x_166); lean::dec(x_0); x_169 = lean::box(0); } x_170 = l_lean_ir_find(x_164, x_1); x_171 = lean::cnstr_get(x_170, 0); -lean::inc(x_171); x_173 = lean::cnstr_get(x_170, 1); -lean::inc(x_173); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); - lean::cnstr_release(x_170, 1); + lean::cnstr_set(x_170, 0, lean::box(0)); + lean::cnstr_set(x_170, 1, lean::box(0)); x_175 = x_170; } else { + lean::inc(x_171); + lean::inc(x_173); lean::dec(x_170); x_175 = lean::box(0); } @@ -1445,28 +1445,28 @@ case 9: { obj* x_185; usize x_187; obj* x_188; obj* x_190; obj* x_191; obj* x_192; obj* x_194; obj* x_196; obj* x_197; obj* x_198; obj* x_200; obj* x_203; obj* x_204; obj* x_205; x_185 = lean::cnstr_get(x_0, 0); -lean::inc(x_185); x_187 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_188 = lean::cnstr_get(x_0, 1); -lean::inc(x_188); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_190 = x_0; } else { + lean::inc(x_185); + lean::inc(x_188); lean::dec(x_0); x_190 = lean::box(0); } x_191 = l_lean_ir_find(x_185, x_1); x_192 = lean::cnstr_get(x_191, 0); -lean::inc(x_192); x_194 = lean::cnstr_get(x_191, 1); -lean::inc(x_194); if (lean::is_exclusive(x_191)) { - lean::cnstr_release(x_191, 0); - lean::cnstr_release(x_191, 1); + lean::cnstr_set(x_191, 0, lean::box(0)); + lean::cnstr_set(x_191, 1, lean::box(0)); x_196 = x_191; } else { + lean::inc(x_192); + lean::inc(x_194); lean::dec(x_191); x_196 = lean::box(0); } @@ -1498,29 +1498,29 @@ case 10: { obj* x_206; uint8 x_208; obj* x_209; usize x_211; obj* x_212; obj* x_213; obj* x_214; obj* x_216; obj* x_218; obj* x_219; obj* x_220; obj* x_222; obj* x_225; obj* x_226; obj* x_227; obj* x_228; x_206 = lean::cnstr_get(x_0, 0); -lean::inc(x_206); x_208 = lean::cnstr_get_scalar(x_0, sizeof(void*)*3); x_209 = lean::cnstr_get(x_0, 1); -lean::inc(x_209); x_211 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_212 = x_0; } else { + lean::inc(x_206); + lean::inc(x_209); lean::dec(x_0); x_212 = lean::box(0); } x_213 = l_lean_ir_find(x_206, x_1); x_214 = lean::cnstr_get(x_213, 0); -lean::inc(x_214); x_216 = lean::cnstr_get(x_213, 1); -lean::inc(x_216); if (lean::is_exclusive(x_213)) { - lean::cnstr_release(x_213, 0); - lean::cnstr_release(x_213, 1); + lean::cnstr_set(x_213, 0, lean::box(0)); + lean::cnstr_set(x_213, 1, lean::box(0)); x_218 = x_213; } else { + lean::inc(x_214); + lean::inc(x_216); lean::dec(x_213); x_218 = lean::box(0); } @@ -1554,30 +1554,30 @@ case 11: { obj* x_229; obj* x_231; obj* x_233; obj* x_235; obj* x_236; obj* x_237; obj* x_239; obj* x_241; obj* x_242; obj* x_243; obj* x_245; obj* x_248; obj* x_249; x_229 = lean::cnstr_get(x_0, 0); -lean::inc(x_229); x_231 = lean::cnstr_get(x_0, 1); -lean::inc(x_231); x_233 = lean::cnstr_get(x_0, 2); -lean::inc(x_233); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_235 = x_0; } else { + lean::inc(x_229); + lean::inc(x_231); + lean::inc(x_233); lean::dec(x_0); x_235 = lean::box(0); } x_236 = l_lean_ir_find(x_229, x_1); x_237 = lean::cnstr_get(x_236, 0); -lean::inc(x_237); x_239 = lean::cnstr_get(x_236, 1); -lean::inc(x_239); if (lean::is_exclusive(x_236)) { - lean::cnstr_release(x_236, 0); - lean::cnstr_release(x_236, 1); + lean::cnstr_set(x_236, 0, lean::box(0)); + lean::cnstr_set(x_236, 1, lean::box(0)); x_241 = x_236; } else { + lean::inc(x_237); + lean::inc(x_239); lean::dec(x_236); x_241 = lean::box(0); } @@ -1608,27 +1608,27 @@ case 12: { obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_256; obj* x_258; obj* x_260; obj* x_261; obj* x_262; obj* x_264; obj* x_267; obj* x_268; x_250 = lean::cnstr_get(x_0, 0); -lean::inc(x_250); x_252 = lean::cnstr_get(x_0, 1); -lean::inc(x_252); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_254 = x_0; } else { + lean::inc(x_250); + lean::inc(x_252); lean::dec(x_0); x_254 = lean::box(0); } x_255 = l_lean_ir_find(x_250, x_1); x_256 = lean::cnstr_get(x_255, 0); -lean::inc(x_256); x_258 = lean::cnstr_get(x_255, 1); -lean::inc(x_258); if (lean::is_exclusive(x_255)) { - lean::cnstr_release(x_255, 0); - lean::cnstr_release(x_255, 1); + lean::cnstr_set(x_255, 0, lean::box(0)); + lean::cnstr_set(x_255, 1, lean::box(0)); x_260 = x_255; } else { + lean::inc(x_256); + lean::inc(x_258); lean::dec(x_255); x_260 = lean::box(0); } @@ -1658,30 +1658,30 @@ case 13: { obj* x_269; obj* x_271; obj* x_273; obj* x_275; obj* x_276; obj* x_277; obj* x_279; obj* x_281; obj* x_282; obj* x_283; obj* x_285; obj* x_288; obj* x_289; obj* x_291; obj* x_294; obj* x_295; x_269 = lean::cnstr_get(x_0, 0); -lean::inc(x_269); x_271 = lean::cnstr_get(x_0, 1); -lean::inc(x_271); x_273 = lean::cnstr_get(x_0, 2); -lean::inc(x_273); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_275 = x_0; } else { + lean::inc(x_269); + lean::inc(x_271); + lean::inc(x_273); lean::dec(x_0); x_275 = lean::box(0); } x_276 = l_lean_ir_find(x_269, x_1); x_277 = lean::cnstr_get(x_276, 0); -lean::inc(x_277); x_279 = lean::cnstr_get(x_276, 1); -lean::inc(x_279); if (lean::is_exclusive(x_276)) { - lean::cnstr_release(x_276, 0); - lean::cnstr_release(x_276, 1); + lean::cnstr_set(x_276, 0, lean::box(0)); + lean::cnstr_set(x_276, 1, lean::box(0)); x_281 = x_276; } else { + lean::inc(x_277); + lean::inc(x_279); lean::dec(x_276); x_281 = lean::box(0); } @@ -1718,31 +1718,31 @@ case 14: { obj* x_296; uint8 x_298; obj* x_299; obj* x_301; obj* x_303; obj* x_304; obj* x_305; obj* x_307; obj* x_309; obj* x_310; obj* x_311; obj* x_313; obj* x_316; obj* x_317; obj* x_319; obj* x_322; obj* x_323; obj* x_324; x_296 = lean::cnstr_get(x_0, 0); -lean::inc(x_296); x_298 = lean::cnstr_get_scalar(x_0, sizeof(void*)*3); x_299 = lean::cnstr_get(x_0, 1); -lean::inc(x_299); x_301 = lean::cnstr_get(x_0, 2); -lean::inc(x_301); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_303 = x_0; } else { + lean::inc(x_296); + lean::inc(x_299); + lean::inc(x_301); lean::dec(x_0); x_303 = lean::box(0); } x_304 = l_lean_ir_find(x_296, x_1); x_305 = lean::cnstr_get(x_304, 0); -lean::inc(x_305); x_307 = lean::cnstr_get(x_304, 1); -lean::inc(x_307); if (lean::is_exclusive(x_304)) { - lean::cnstr_release(x_304, 0); - lean::cnstr_release(x_304, 1); + lean::cnstr_set(x_304, 0, lean::box(0)); + lean::cnstr_set(x_304, 1, lean::box(0)); x_309 = x_304; } else { + lean::inc(x_305); + lean::inc(x_307); lean::dec(x_304); x_309 = lean::box(0); } @@ -1781,30 +1781,30 @@ default: { obj* x_325; obj* x_327; obj* x_329; obj* x_331; obj* x_332; obj* x_333; obj* x_335; obj* x_337; obj* x_338; obj* x_339; obj* x_341; obj* x_344; obj* x_345; obj* x_347; obj* x_350; obj* x_351; x_325 = lean::cnstr_get(x_0, 0); -lean::inc(x_325); x_327 = lean::cnstr_get(x_0, 1); -lean::inc(x_327); x_329 = lean::cnstr_get(x_0, 2); -lean::inc(x_329); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); x_331 = x_0; } else { + lean::inc(x_325); + lean::inc(x_327); + lean::inc(x_329); lean::dec(x_0); x_331 = lean::box(0); } x_332 = l_lean_ir_find(x_325, x_1); x_333 = lean::cnstr_get(x_332, 0); -lean::inc(x_333); x_335 = lean::cnstr_get(x_332, 1); -lean::inc(x_335); if (lean::is_exclusive(x_332)) { - lean::cnstr_release(x_332, 0); - lean::cnstr_release(x_332, 1); + lean::cnstr_set(x_332, 0, lean::box(0)); + lean::cnstr_set(x_332, 1, lean::box(0)); x_337 = x_332; } else { + lean::inc(x_333); + lean::inc(x_335); lean::dec(x_332); x_337 = lean::box(0); } @@ -1856,24 +1856,24 @@ case 0: { obj* x_2; obj* x_4; obj* x_5; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_4 = x_0; } else { + lean::inc(x_2); lean::dec(x_0); x_4 = lean::box(0); } x_5 = l_lean_ir_find(x_2, x_1); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1896,27 +1896,27 @@ case 1: { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_21; obj* x_23; obj* x_24; obj* x_25; x_13 = lean::cnstr_get(x_0, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_0, 1); -lean::inc(x_15); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_17 = x_0; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_0); x_17 = lean::box(0); } x_18 = l_lean_ir_find(x_13, x_1); x_19 = lean::cnstr_get(x_18, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_18, 1); -lean::inc(x_21); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); x_23 = x_18; } else { + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_18); x_23 = lean::box(0); } @@ -1963,14 +1963,14 @@ x_2 = lean::cnstr_get(x_0, 0); lean::inc(x_2); x_4 = l_lean_ir_find(x_2, x_1); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -2006,27 +2006,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_arg_replace__vars(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -2062,14 +2062,14 @@ x_2 = lean::cnstr_get(x_0, 1); lean::inc(x_2); x_4 = l_list_mmap___main___at_lean_ir_header_replace__vars___spec__1(x_2, x_1); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -2111,27 +2111,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_instr_replace__vars___main(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -2167,14 +2167,14 @@ x_2 = lean::cnstr_get(x_0, 2); lean::inc(x_2); x_4 = l_list_mmap___main___at_lean_ir_block_replace__vars___spec__1(x_2, x_1); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -2221,27 +2221,27 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } x_9 = l_lean_ir_block_replace__vars(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -2284,27 +2284,27 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_15; obj* x_17; obj* x_20; obj* x_21; x_3 = lean::cnstr_get(x_0, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_0, 1); -lean::inc(x_5); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_7 = x_0; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_0); x_7 = lean::box(0); } x_8 = l_lean_ir_header_replace__vars(x_3, x_1); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } diff --git a/src/boot/init/lean/ir/extract_cpp.cpp b/src/boot/init/lean/ir/extract_cpp.cpp index 69774f8f09..dc4b280c23 100644 --- a/src/boot/init/lean/ir/extract_cpp.cpp +++ b/src/boot/init/lean/ir/extract_cpp.cpp @@ -677,14 +677,14 @@ x_3 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -694,11 +694,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -832,14 +832,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = lean::apply_2(x_0, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -849,11 +849,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_2); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -1009,14 +1009,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; lean::inc(x_1); x_4 = l_lean_ir_cpp_fid2cpp(x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -1025,11 +1025,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_11; obj* x_13; obj* x_14; obj* x_15; lean::dec(x_1); x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_13 = x_5; } else { + lean::inc(x_11); lean::dec(x_5); x_13 = lean::box(0); } @@ -1124,14 +1124,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; x_3 = l_lean_ir_cpp_fid2cpp(x_0, x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -1139,11 +1139,11 @@ if (lean::obj_tag(x_4) == 0) { obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -1166,11 +1166,11 @@ else { obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_20; obj* x_21; x_14 = lean::cnstr_get(x_4, 0); -lean::inc(x_14); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_16 = x_4; } else { + lean::inc(x_14); lean::dec(x_4); x_16 = lean::box(0); } @@ -1201,14 +1201,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; lean::inc(x_1); x_4 = l_lean_ir_cpp_global2cpp(x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -1217,11 +1217,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_11; obj* x_13; obj* x_14; obj* x_15; lean::dec(x_1); x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_13 = x_5; } else { + lean::inc(x_11); lean::dec(x_5); x_13 = lean::box(0); } @@ -1502,14 +1502,14 @@ lean::inc(x_3); lean::inc(x_0); x_19 = lean::apply_3(x_0, x_10, x_3, x_4); x_20 = lean::cnstr_get(x_19, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_19, 1); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); - lean::cnstr_release(x_19, 1); + lean::cnstr_set(x_19, 0, lean::box(0)); + lean::cnstr_set(x_19, 1, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -1521,11 +1521,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_12); x_29 = lean::cnstr_get(x_20, 0); -lean::inc(x_29); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_31 = x_20; } else { + lean::inc(x_29); lean::dec(x_20); x_31 = lean::box(0); } @@ -1734,14 +1734,14 @@ x_3 = l_lean_ir_cpp_emit__template__params___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1751,11 +1751,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -1859,14 +1859,14 @@ x_3 = lean::cnstr_get_scalar(x_0, sizeof(void*)*1); lean::inc(x_1); x_5 = l_lean_ir_cpp_emit__type(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1876,11 +1876,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -1982,14 +1982,14 @@ x_2 = l_lean_ir_cpp_emit__eos___closed__1; lean::inc(x_0); x_4 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_2, x_0, x_1); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -1998,11 +1998,11 @@ if (lean::obj_tag(x_5) == 0) obj* x_11; obj* x_13; obj* x_14; obj* x_15; lean::dec(x_0); x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_13 = x_5; } else { + lean::inc(x_11); lean::dec(x_5); x_13 = lean::box(0); } @@ -2113,14 +2113,14 @@ x_14 = l_lean_ir_cpp_emit__cases___main___closed__2; lean::inc(x_2); x_16 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_14, x_2, x_3); x_17 = lean::cnstr_get(x_16, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_16, 1); -lean::inc(x_19); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); x_21 = x_16; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_16); x_21 = lean::box(0); } @@ -2130,11 +2130,11 @@ obj* x_24; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_8); lean::dec(x_2); x_24 = lean::cnstr_get(x_17, 0); -lean::inc(x_24); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_26 = x_17; } else { + lean::inc(x_24); lean::dec(x_17); x_26 = lean::box(0); } @@ -2211,14 +2211,14 @@ x_47 = l_lean_ir_cpp_emit__cases___main___closed__3; lean::inc(x_2); x_49 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_47, x_2, x_3); x_50 = lean::cnstr_get(x_49, 0); -lean::inc(x_50); x_52 = lean::cnstr_get(x_49, 1); -lean::inc(x_52); if (lean::is_exclusive(x_49)) { - lean::cnstr_release(x_49, 0); - lean::cnstr_release(x_49, 1); + lean::cnstr_set(x_49, 0, lean::box(0)); + lean::cnstr_set(x_49, 1, lean::box(0)); x_54 = x_49; } else { + lean::inc(x_50); + lean::inc(x_52); lean::dec(x_49); x_54 = lean::box(0); } @@ -2230,11 +2230,11 @@ lean::dec(x_8); lean::dec(x_1); lean::dec(x_2); x_59 = lean::cnstr_get(x_50, 0); -lean::inc(x_59); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_61 = x_50; } else { + lean::inc(x_59); lean::dec(x_50); x_61 = lean::box(0); } @@ -2539,14 +2539,14 @@ x_16 = l_lean_ir_cpp_emit__case___main___closed__4; lean::inc(x_2); x_18 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_16, x_2, x_3); x_19 = lean::cnstr_get(x_18, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_18, 1); -lean::inc(x_21); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); x_23 = x_18; } else { + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_18); x_23 = lean::box(0); } @@ -2556,11 +2556,11 @@ obj* x_26; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_10); lean::dec(x_2); x_26 = lean::cnstr_get(x_19, 0); -lean::inc(x_26); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_28 = x_19; } else { + lean::inc(x_26); lean::dec(x_19); x_28 = lean::box(0); } @@ -2683,11 +2683,11 @@ lean::dec(x_10); lean::dec(x_0); lean::dec(x_49); x_81 = lean::cnstr_get(x_73, 0); -lean::inc(x_81); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_83 = x_73; } else { + lean::inc(x_81); lean::dec(x_73); x_83 = lean::box(0); } @@ -2866,11 +2866,11 @@ lean::dec(x_10); lean::dec(x_0); lean::dec(x_49); x_161 = lean::cnstr_get(x_153, 0); -lean::inc(x_161); if (lean::is_exclusive(x_153)) { - lean::cnstr_release(x_153, 0); + lean::cnstr_set(x_153, 0, lean::box(0)); x_163 = x_153; } else { + lean::inc(x_161); lean::dec(x_153); x_163 = lean::box(0); } @@ -3051,11 +3051,11 @@ if (lean::obj_tag(x_55) == 0) obj* x_235; obj* x_237; obj* x_238; obj* x_239; lean::dec(x_2); x_235 = lean::cnstr_get(x_55, 0); -lean::inc(x_235); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_237 = x_55; } else { + lean::inc(x_235); lean::dec(x_55); x_237 = lean::box(0); } @@ -3099,11 +3099,11 @@ obj* x_248; obj* x_250; obj* x_251; obj* x_252; lean::dec(x_1); lean::dec(x_2); x_248 = lean::cnstr_get(x_4, 0); -lean::inc(x_248); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_250 = x_4; } else { + lean::inc(x_248); lean::dec(x_4); x_250 = lean::box(0); } @@ -3132,14 +3132,14 @@ x_254 = l_lean_ir_cpp_emit__case___main___closed__1; lean::inc(x_2); x_256 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_254, x_2, x_5); x_257 = lean::cnstr_get(x_256, 0); -lean::inc(x_257); x_259 = lean::cnstr_get(x_256, 1); -lean::inc(x_259); if (lean::is_exclusive(x_256)) { - lean::cnstr_release(x_256, 0); - lean::cnstr_release(x_256, 1); + lean::cnstr_set(x_256, 0, lean::box(0)); + lean::cnstr_set(x_256, 1, lean::box(0)); x_261 = x_256; } else { + lean::inc(x_257); + lean::inc(x_259); lean::dec(x_256); x_261 = lean::box(0); } @@ -3295,14 +3295,14 @@ x_320 = l_lean_ir_cpp_emit__case___main___closed__3; lean::inc(x_2); x_322 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_320, x_2, x_3); x_323 = lean::cnstr_get(x_322, 0); -lean::inc(x_323); x_325 = lean::cnstr_get(x_322, 1); -lean::inc(x_325); if (lean::is_exclusive(x_322)) { - lean::cnstr_release(x_322, 0); - lean::cnstr_release(x_322, 1); + lean::cnstr_set(x_322, 0, lean::box(0)); + lean::cnstr_set(x_322, 1, lean::box(0)); x_327 = x_322; } else { + lean::inc(x_323); + lean::inc(x_325); lean::dec(x_322); x_327 = lean::box(0); } @@ -3313,11 +3313,11 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_331 = lean::cnstr_get(x_323, 0); -lean::inc(x_331); if (lean::is_exclusive(x_323)) { - lean::cnstr_release(x_323, 0); + lean::cnstr_set(x_323, 0, lean::box(0)); x_333 = x_323; } else { + lean::inc(x_331); lean::dec(x_323); x_333 = lean::box(0); } @@ -3493,11 +3493,11 @@ obj* x_18; obj* x_20; obj* x_21; lean::dec(x_6); lean::dec(x_1); x_18 = lean::cnstr_get(x_11, 0); -lean::inc(x_18); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_20 = x_11; } else { + lean::inc(x_18); lean::dec(x_11); x_20 = lean::box(0); } @@ -3599,11 +3599,11 @@ obj* x_65; obj* x_67; obj* x_68; lean::dec(x_1); lean::dec(x_53); x_65 = lean::cnstr_get(x_58, 0); -lean::inc(x_65); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_67 = x_58; } else { + lean::inc(x_65); lean::dec(x_58); x_67 = lean::box(0); } @@ -3676,11 +3676,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_90; obj* x_92; obj* x_93; uint8 x_94; obj* x_95; obj* x_96; obj* x_97; obj* x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; obj* x_104; obj* x_105; obj* x_106; obj* x_107; x_90 = lean::cnstr_get(x_3, 0); -lean::inc(x_90); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_92 = x_3; } else { + lean::inc(x_90); lean::dec(x_3); x_92 = lean::box(0); } @@ -3748,14 +3748,14 @@ x_3 = l_lean_ir_cpp_emit__type__size___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -3764,11 +3764,11 @@ if (lean::obj_tag(x_6) == 0) obj* x_12; obj* x_14; obj* x_15; obj* x_16; lean::dec(x_1); x_12 = lean::cnstr_get(x_6, 0); -lean::inc(x_12); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_14 = x_6; } else { + lean::inc(x_12); lean::dec(x_6); x_14 = lean::box(0); } @@ -3938,14 +3938,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_0, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -3955,11 +3955,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_2); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -4137,11 +4137,11 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_19; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_18 = x_11; } else { + lean::inc(x_16); lean::dec(x_11); x_18 = lean::box(0); } @@ -4181,11 +4181,11 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_33 = lean::cnstr_get(x_6, 0); -lean::inc(x_33); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_35 = x_6; } else { + lean::inc(x_33); lean::dec(x_6); x_35 = lean::box(0); } @@ -4213,14 +4213,14 @@ if (lean::is_exclusive(x_6)) { lean::inc(x_4); x_40 = l_lean_ir_cpp_emit__var(x_1, x_4, x_7); x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get(x_40, 1); -lean::inc(x_43); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_45 = x_40; } else { + lean::inc(x_41); + lean::inc(x_43); lean::dec(x_40); x_45 = lean::box(0); } @@ -4388,11 +4388,11 @@ if (lean::obj_tag(x_11) == 0) obj* x_17; obj* x_19; obj* x_20; lean::dec(x_3); x_17 = lean::cnstr_get(x_11, 0); -lean::inc(x_17); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_19 = x_11; } else { + lean::inc(x_17); lean::dec(x_11); x_19 = lean::box(0); } @@ -4468,11 +4468,11 @@ lean::dec(x_4); lean::dec(x_1); lean::dec(x_2); x_47 = lean::cnstr_get(x_6, 0); -lean::inc(x_47); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_49 = x_6; } else { + lean::inc(x_47); lean::dec(x_6); x_49 = lean::box(0); } @@ -4501,14 +4501,14 @@ x_53 = l_prod_has__repr___rarg___closed__1; lean::inc(x_4); x_55 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_53, x_4, x_7); x_56 = lean::cnstr_get(x_55, 0); -lean::inc(x_56); x_58 = lean::cnstr_get(x_55, 1); -lean::inc(x_58); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); - lean::cnstr_release(x_55, 1); + lean::cnstr_set(x_55, 0, lean::box(0)); + lean::cnstr_set(x_55, 1, lean::box(0)); x_60 = x_55; } else { + lean::inc(x_56); + lean::inc(x_58); lean::dec(x_55); x_60 = lean::box(0); } @@ -5301,11 +5301,11 @@ if (lean::obj_tag(x_75) == 0) { obj* x_80; obj* x_82; obj* x_83; x_80 = lean::cnstr_get(x_75, 0); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); + lean::cnstr_set(x_75, 0, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -5351,14 +5351,14 @@ obj* x_95; obj* x_96; obj* x_98; obj* x_100; lean::inc(x_5); x_95 = l_lean_ir_cpp_emit__var(x_0, x_5, x_6); x_96 = lean::cnstr_get(x_95, 0); -lean::inc(x_96); x_98 = lean::cnstr_get(x_95, 1); -lean::inc(x_98); if (lean::is_exclusive(x_95)) { - lean::cnstr_release(x_95, 0); - lean::cnstr_release(x_95, 1); + lean::cnstr_set(x_95, 0, lean::box(0)); + lean::cnstr_set(x_95, 1, lean::box(0)); x_100 = x_95; } else { + lean::inc(x_96); + lean::inc(x_98); lean::dec(x_95); x_100 = lean::box(0); } @@ -5369,11 +5369,11 @@ lean::dec(x_5); lean::dec(x_4); lean::dec(x_3); x_104 = lean::cnstr_get(x_96, 0); -lean::inc(x_104); if (lean::is_exclusive(x_96)) { - lean::cnstr_release(x_96, 0); + lean::cnstr_set(x_96, 0, lean::box(0)); x_106 = x_96; } else { + lean::inc(x_104); lean::dec(x_96); x_106 = lean::box(0); } @@ -5519,11 +5519,11 @@ if (lean::obj_tag(x_167) == 0) { obj* x_172; obj* x_174; obj* x_175; x_172 = lean::cnstr_get(x_167, 0); -lean::inc(x_172); if (lean::is_exclusive(x_167)) { - lean::cnstr_release(x_167, 0); + lean::cnstr_set(x_167, 0, lean::box(0)); x_174 = x_167; } else { + lean::inc(x_172); lean::dec(x_167); x_174 = lean::box(0); } @@ -5568,11 +5568,11 @@ if (lean::obj_tag(x_187) == 0) { obj* x_192; obj* x_194; obj* x_195; x_192 = lean::cnstr_get(x_187, 0); -lean::inc(x_192); if (lean::is_exclusive(x_187)) { - lean::cnstr_release(x_187, 0); + lean::cnstr_set(x_187, 0, lean::box(0)); x_194 = x_187; } else { + lean::inc(x_192); lean::dec(x_187); x_194 = lean::box(0); } @@ -5619,11 +5619,11 @@ if (lean::obj_tag(x_211) == 0) { obj* x_216; obj* x_218; obj* x_219; x_216 = lean::cnstr_get(x_211, 0); -lean::inc(x_216); if (lean::is_exclusive(x_211)) { - lean::cnstr_release(x_211, 0); + lean::cnstr_set(x_211, 0, lean::box(0)); x_218 = x_211; } else { + lean::inc(x_216); lean::dec(x_211); x_218 = lean::box(0); } @@ -5698,11 +5698,11 @@ lean::dec(x_5); lean::dec(x_4); lean::dec(x_3); x_245 = lean::cnstr_get(x_206, 0); -lean::inc(x_245); if (lean::is_exclusive(x_206)) { - lean::cnstr_release(x_206, 0); + lean::cnstr_set(x_206, 0, lean::box(0)); x_247 = x_206; } else { + lean::inc(x_245); lean::dec(x_206); x_247 = lean::box(0); } @@ -5731,14 +5731,14 @@ x_251 = l_prod_has__repr___rarg___closed__1; lean::inc(x_5); x_253 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_251, x_5, x_207); x_254 = lean::cnstr_get(x_253, 0); -lean::inc(x_254); x_256 = lean::cnstr_get(x_253, 1); -lean::inc(x_256); if (lean::is_exclusive(x_253)) { - lean::cnstr_release(x_253, 0); - lean::cnstr_release(x_253, 1); + lean::cnstr_set(x_253, 0, lean::box(0)); + lean::cnstr_set(x_253, 1, lean::box(0)); x_258 = x_253; } else { + lean::inc(x_254); + lean::inc(x_256); lean::dec(x_253); x_258 = lean::box(0); } @@ -5943,11 +5943,11 @@ lean::dec(x_5); lean::dec(x_4); lean::dec(x_3); x_334 = lean::cnstr_get(x_9, 0); -lean::inc(x_334); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_336 = x_9; } else { + lean::inc(x_334); lean::dec(x_9); x_336 = lean::box(0); } @@ -5976,14 +5976,14 @@ x_340 = l_prod_has__repr___rarg___closed__1; lean::inc(x_5); x_342 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_340, x_5, x_10); x_343 = lean::cnstr_get(x_342, 0); -lean::inc(x_343); x_345 = lean::cnstr_get(x_342, 1); -lean::inc(x_345); if (lean::is_exclusive(x_342)) { - lean::cnstr_release(x_342, 0); - lean::cnstr_release(x_342, 1); + lean::cnstr_set(x_342, 0, lean::box(0)); + lean::cnstr_set(x_342, 1, lean::box(0)); x_347 = x_342; } else { + lean::inc(x_343); + lean::inc(x_345); lean::dec(x_342); x_347 = lean::box(0); } @@ -6205,11 +6205,11 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_18; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_17 = x_10; } else { + lean::inc(x_15); lean::dec(x_10); x_17 = lean::box(0); } @@ -6248,11 +6248,11 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_31 = lean::cnstr_get(x_5, 0); -lean::inc(x_31); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_33 = x_5; } else { + lean::inc(x_31); lean::dec(x_5); x_33 = lean::box(0); } @@ -6280,14 +6280,14 @@ if (lean::is_exclusive(x_5)) { lean::inc(x_3); x_38 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_1, x_3, x_6); x_39 = lean::cnstr_get(x_38, 0); -lean::inc(x_39); x_41 = lean::cnstr_get(x_38, 1); -lean::inc(x_41); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); - lean::cnstr_release(x_38, 1); + lean::cnstr_set(x_38, 0, lean::box(0)); + lean::cnstr_set(x_38, 1, lean::box(0)); x_43 = x_38; } else { + lean::inc(x_39); + lean::inc(x_41); lean::dec(x_38); x_43 = lean::box(0); } @@ -6769,11 +6769,11 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_20; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -6812,11 +6812,11 @@ lean::dec(x_4); lean::dec(x_6); lean::dec(x_3); x_33 = lean::cnstr_get(x_7, 0); -lean::inc(x_33); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_35 = x_7; } else { + lean::inc(x_33); lean::dec(x_7); x_35 = lean::box(0); } @@ -6844,14 +6844,14 @@ if (lean::is_exclusive(x_7)) { lean::inc(x_4); x_40 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_6, x_4, x_8); x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get(x_40, 1); -lean::inc(x_43); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_45 = x_40; } else { + lean::inc(x_41); + lean::inc(x_43); lean::dec(x_40); x_45 = lean::box(0); } @@ -7196,14 +7196,14 @@ obj* x_8; obj* x_9; obj* x_11; obj* x_13; lean::inc(x_3); x_8 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -7212,11 +7212,11 @@ if (lean::obj_tag(x_9) == 0) obj* x_15; obj* x_17; obj* x_18; obj* x_19; lean::dec(x_3); x_15 = lean::cnstr_get(x_9, 0); -lean::inc(x_15); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_17 = x_9; } else { + lean::inc(x_15); lean::dec(x_9); x_17 = lean::box(0); } @@ -7251,14 +7251,14 @@ obj* x_25; obj* x_26; obj* x_28; obj* x_30; lean::inc(x_3); x_25 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_26 = lean::cnstr_get(x_25, 0); -lean::inc(x_26); x_28 = lean::cnstr_get(x_25, 1); -lean::inc(x_28); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); x_30 = x_25; } else { + lean::inc(x_26); + lean::inc(x_28); lean::dec(x_25); x_30 = lean::box(0); } @@ -7267,11 +7267,11 @@ if (lean::obj_tag(x_26) == 0) obj* x_32; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_3); x_32 = lean::cnstr_get(x_26, 0); -lean::inc(x_32); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); + lean::cnstr_set(x_26, 0, lean::box(0)); x_34 = x_26; } else { + lean::inc(x_32); lean::dec(x_26); x_34 = lean::box(0); } @@ -7310,14 +7310,14 @@ lean::dec(x_2); lean::inc(x_3); x_45 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_46 = lean::cnstr_get(x_45, 0); -lean::inc(x_46); x_48 = lean::cnstr_get(x_45, 1); -lean::inc(x_48); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); - lean::cnstr_release(x_45, 1); + lean::cnstr_set(x_45, 0, lean::box(0)); + lean::cnstr_set(x_45, 1, lean::box(0)); x_50 = x_45; } else { + lean::inc(x_46); + lean::inc(x_48); lean::dec(x_45); x_50 = lean::box(0); } @@ -7327,11 +7327,11 @@ obj* x_53; obj* x_55; obj* x_56; obj* x_57; lean::dec(x_3); lean::dec(x_41); x_53 = lean::cnstr_get(x_46, 0); -lean::inc(x_53); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_55 = x_46; } else { + lean::inc(x_53); lean::dec(x_46); x_55 = lean::box(0); } @@ -7546,11 +7546,11 @@ if (lean::obj_tag(x_136) == 0) { obj* x_141; obj* x_143; obj* x_144; x_141 = lean::cnstr_get(x_136, 0); -lean::inc(x_141); if (lean::is_exclusive(x_136)) { - lean::cnstr_release(x_136, 0); + lean::cnstr_set(x_136, 0, lean::box(0)); x_143 = x_136; } else { + lean::inc(x_141); lean::dec(x_136); x_143 = lean::box(0); } @@ -7588,11 +7588,11 @@ obj* x_156; obj* x_158; obj* x_159; obj* x_160; lean::dec(x_124); lean::dec(x_3); x_156 = lean::cnstr_get(x_131, 0); -lean::inc(x_156); if (lean::is_exclusive(x_131)) { - lean::cnstr_release(x_131, 0); + lean::cnstr_set(x_131, 0, lean::box(0)); x_158 = x_131; } else { + lean::inc(x_156); lean::dec(x_131); x_158 = lean::box(0); } @@ -7624,14 +7624,14 @@ x_162 = l_lean_ir_cpp_emit__assign__lit___closed__5; lean::inc(x_3); x_164 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_162, x_3, x_132); x_165 = lean::cnstr_get(x_164, 0); -lean::inc(x_165); x_167 = lean::cnstr_get(x_164, 1); -lean::inc(x_167); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); - lean::cnstr_release(x_164, 1); + lean::cnstr_set(x_164, 0, lean::box(0)); + lean::cnstr_set(x_164, 1, lean::box(0)); x_169 = x_164; } else { + lean::inc(x_165); + lean::inc(x_167); lean::dec(x_164); x_169 = lean::box(0); } @@ -7712,14 +7712,14 @@ x_196 = l_lean_ir_cpp_emit__assign__lit___closed__7; lean::inc(x_3); x_198 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_196, x_3, x_132); x_199 = lean::cnstr_get(x_198, 0); -lean::inc(x_199); x_201 = lean::cnstr_get(x_198, 1); -lean::inc(x_201); if (lean::is_exclusive(x_198)) { - lean::cnstr_release(x_198, 0); - lean::cnstr_release(x_198, 1); + lean::cnstr_set(x_198, 0, lean::box(0)); + lean::cnstr_set(x_198, 1, lean::box(0)); x_203 = x_198; } else { + lean::inc(x_199); + lean::inc(x_201); lean::dec(x_198); x_203 = lean::box(0); } @@ -7930,14 +7930,14 @@ lean::dec(x_127); lean::inc(x_3); x_278 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_279 = lean::cnstr_get(x_278, 0); -lean::inc(x_279); x_281 = lean::cnstr_get(x_278, 1); -lean::inc(x_281); if (lean::is_exclusive(x_278)) { - lean::cnstr_release(x_278, 0); - lean::cnstr_release(x_278, 1); + lean::cnstr_set(x_278, 0, lean::box(0)); + lean::cnstr_set(x_278, 1, lean::box(0)); x_283 = x_278; } else { + lean::inc(x_279); + lean::inc(x_281); lean::dec(x_278); x_283 = lean::box(0); } @@ -7947,11 +7947,11 @@ obj* x_286; obj* x_288; obj* x_289; obj* x_290; lean::dec(x_124); lean::dec(x_3); x_286 = lean::cnstr_get(x_279, 0); -lean::inc(x_286); if (lean::is_exclusive(x_279)) { - lean::cnstr_release(x_279, 0); + lean::cnstr_set(x_279, 0, lean::box(0)); x_288 = x_279; } else { + lean::inc(x_286); lean::dec(x_279); x_288 = lean::box(0); } @@ -8068,14 +8068,14 @@ lean::dec(x_2); lean::inc(x_3); x_329 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_330 = lean::cnstr_get(x_329, 0); -lean::inc(x_330); x_332 = lean::cnstr_get(x_329, 1); -lean::inc(x_332); if (lean::is_exclusive(x_329)) { - lean::cnstr_release(x_329, 0); - lean::cnstr_release(x_329, 1); + lean::cnstr_set(x_329, 0, lean::box(0)); + lean::cnstr_set(x_329, 1, lean::box(0)); x_334 = x_329; } else { + lean::inc(x_330); + lean::inc(x_332); lean::dec(x_329); x_334 = lean::box(0); } @@ -8085,11 +8085,11 @@ obj* x_337; obj* x_339; obj* x_340; obj* x_341; lean::dec(x_325); lean::dec(x_3); x_337 = lean::cnstr_get(x_330, 0); -lean::inc(x_337); if (lean::is_exclusive(x_330)) { - lean::cnstr_release(x_330, 0); + lean::cnstr_set(x_330, 0, lean::box(0)); x_339 = x_330; } else { + lean::inc(x_337); lean::dec(x_330); x_339 = lean::box(0); } @@ -8340,14 +8340,14 @@ x_4 = l_lean_ir_cpp_unop2cpp___main(x_0); lean::inc(x_2); x_6 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_4, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -8357,11 +8357,11 @@ obj* x_14; obj* x_16; obj* x_17; obj* x_18; lean::dec(x_1); lean::dec(x_2); x_14 = lean::cnstr_get(x_7, 0); -lean::inc(x_14); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_16 = x_7; } else { + lean::inc(x_14); lean::dec(x_7); x_16 = lean::box(0); } @@ -8643,11 +8643,11 @@ if (lean::obj_tag(x_24) == 0) { obj* x_29; obj* x_31; obj* x_32; x_29 = lean::cnstr_get(x_24, 0); -lean::inc(x_29); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_31 = x_24; } else { + lean::inc(x_29); lean::dec(x_24); x_31 = lean::box(0); } @@ -8686,11 +8686,11 @@ lean::dec(x_1); lean::dec(x_14); lean::dec(x_2); x_45 = lean::cnstr_get(x_19, 0); -lean::inc(x_45); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_47 = x_19; } else { + lean::inc(x_45); lean::dec(x_19); x_47 = lean::box(0); } @@ -8718,14 +8718,14 @@ if (lean::is_exclusive(x_19)) { lean::inc(x_2); x_52 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__cases___main___spec__1(x_14, x_2, x_20); x_53 = lean::cnstr_get(x_52, 0); -lean::inc(x_53); x_55 = lean::cnstr_get(x_52, 1); -lean::inc(x_55); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); - lean::cnstr_release(x_52, 1); + lean::cnstr_set(x_52, 0, lean::box(0)); + lean::cnstr_set(x_52, 1, lean::box(0)); x_57 = x_52; } else { + lean::inc(x_53); + lean::inc(x_55); lean::dec(x_52); x_57 = lean::box(0); } @@ -8902,11 +8902,11 @@ if (lean::obj_tag(x_132) == 0) { obj* x_137; obj* x_139; obj* x_140; x_137 = lean::cnstr_get(x_132, 0); -lean::inc(x_137); if (lean::is_exclusive(x_132)) { - lean::cnstr_release(x_132, 0); + lean::cnstr_set(x_132, 0, lean::box(0)); x_139 = x_132; } else { + lean::inc(x_137); lean::dec(x_132); x_139 = lean::box(0); } @@ -8980,11 +8980,11 @@ if (lean::obj_tag(x_117) == 0) obj* x_165; obj* x_167; obj* x_168; obj* x_169; lean::dec(x_2); x_165 = lean::cnstr_get(x_117, 0); -lean::inc(x_165); if (lean::is_exclusive(x_117)) { - lean::cnstr_release(x_117, 0); + lean::cnstr_set(x_117, 0, lean::box(0)); x_167 = x_117; } else { + lean::inc(x_165); lean::dec(x_117); x_167 = lean::box(0); } @@ -9014,11 +9014,11 @@ if (lean::obj_tag(x_120) == 0) { obj* x_173; obj* x_175; obj* x_176; x_173 = lean::cnstr_get(x_120, 0); -lean::inc(x_173); if (lean::is_exclusive(x_120)) { - lean::cnstr_release(x_120, 0); + lean::cnstr_set(x_120, 0, lean::box(0)); x_175 = x_120; } else { + lean::inc(x_173); lean::dec(x_120); x_175 = lean::box(0); } @@ -9154,11 +9154,11 @@ obj* x_223; obj* x_225; obj* x_226; lean::dec(x_8); lean::dec(x_14); x_223 = lean::cnstr_get(x_123, 0); -lean::inc(x_223); if (lean::is_exclusive(x_123)) { - lean::cnstr_release(x_123, 0); + lean::cnstr_set(x_123, 0, lean::box(0)); x_225 = x_123; } else { + lean::inc(x_223); lean::dec(x_123); x_225 = lean::box(0); } @@ -9296,11 +9296,11 @@ obj* x_280; obj* x_282; obj* x_283; lean::dec(x_10); lean::dec(x_0); x_280 = lean::cnstr_get(x_126, 0); -lean::inc(x_280); if (lean::is_exclusive(x_126)) { - lean::cnstr_release(x_126, 0); + lean::cnstr_set(x_126, 0, lean::box(0)); x_282 = x_126; } else { + lean::inc(x_280); lean::dec(x_126); x_282 = lean::box(0); } @@ -9481,11 +9481,11 @@ obj* x_32; obj* x_34; obj* x_35; lean::dec(x_9); lean::dec(x_1); x_32 = lean::cnstr_get(x_25, 0); -lean::inc(x_32); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_34 = x_25; } else { + lean::inc(x_32); lean::dec(x_25); x_34 = lean::box(0); } @@ -9625,11 +9625,11 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_11); x_92 = lean::cnstr_get(x_16, 0); -lean::inc(x_92); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_94 = x_16; } else { + lean::inc(x_92); lean::dec(x_16); x_94 = lean::box(0); } @@ -9660,11 +9660,11 @@ if (lean::obj_tag(x_19) == 0) obj* x_100; obj* x_102; obj* x_103; lean::dec(x_9); x_100 = lean::cnstr_get(x_19, 0); -lean::inc(x_100); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_102 = x_19; } else { + lean::inc(x_100); lean::dec(x_19); x_102 = lean::box(0); } @@ -9865,14 +9865,14 @@ lean::inc(x_3); lean::inc(x_0); x_23 = l_lean_ir_cpp_emit__var(x_0, x_3, x_4); x_24 = lean::cnstr_get(x_23, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_23, 1); -lean::inc(x_26); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); - lean::cnstr_release(x_23, 1); + lean::cnstr_set(x_23, 0, lean::box(0)); + lean::cnstr_set(x_23, 1, lean::box(0)); x_28 = x_23; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_23); x_28 = lean::box(0); } @@ -9885,11 +9885,11 @@ lean::dec(x_0); lean::dec(x_18); lean::dec(x_2); x_34 = lean::cnstr_get(x_24, 0); -lean::inc(x_34); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_36 = x_24; } else { + lean::inc(x_34); lean::dec(x_24); x_36 = lean::box(0); } @@ -9922,14 +9922,14 @@ x_43 = l_lean_ir_cpp_emit__closure___closed__2; lean::inc(x_3); x_45 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_43, x_3, x_26); x_46 = lean::cnstr_get(x_45, 0); -lean::inc(x_46); x_48 = lean::cnstr_get(x_45, 1); -lean::inc(x_48); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); - lean::cnstr_release(x_45, 1); + lean::cnstr_set(x_45, 0, lean::box(0)); + lean::cnstr_set(x_45, 1, lean::box(0)); x_50 = x_45; } else { + lean::inc(x_46); + lean::inc(x_48); lean::dec(x_45); x_50 = lean::box(0); } @@ -9944,11 +9944,11 @@ lean::dec(x_2); lean::dec(x_28); lean::dec(x_39); x_58 = lean::cnstr_get(x_46, 0); -lean::inc(x_58); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_60 = x_46; } else { + lean::inc(x_58); lean::dec(x_46); x_60 = lean::box(0); } @@ -10017,11 +10017,11 @@ else obj* x_83; obj* x_85; obj* x_86; obj* x_87; obj* x_90; obj* x_91; obj* x_92; uint8 x_93; obj* x_95; obj* x_96; obj* x_98; obj* x_99; obj* x_100; lean::dec(x_50); x_83 = lean::cnstr_get(x_66, 0); -lean::inc(x_83); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_85 = x_66; } else { + lean::inc(x_83); lean::dec(x_66); x_85 = lean::box(0); } @@ -10545,14 +10545,14 @@ lean::inc(x_7); lean::inc(x_1); x_10 = l_lean_ir_cpp_emit__var(x_5, x_1, x_2); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -10561,11 +10561,11 @@ if (lean::obj_tag(x_11) == 0) obj* x_17; obj* x_19; obj* x_20; obj* x_21; lean::dec(x_7); x_17 = lean::cnstr_get(x_11, 0); -lean::inc(x_17); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_19 = x_11; } else { + lean::inc(x_17); lean::dec(x_11); x_19 = lean::box(0); } @@ -10714,11 +10714,11 @@ if (lean::obj_tag(x_83) == 0) { obj* x_88; obj* x_90; obj* x_91; x_88 = lean::cnstr_get(x_83, 0); -lean::inc(x_88); if (lean::is_exclusive(x_83)) { - lean::cnstr_release(x_83, 0); + lean::cnstr_set(x_83, 0, lean::box(0)); x_90 = x_83; } else { + lean::inc(x_88); lean::dec(x_83); x_90 = lean::box(0); } @@ -10756,11 +10756,11 @@ obj* x_103; obj* x_105; obj* x_106; obj* x_107; lean::dec(x_74); lean::dec(x_76); x_103 = lean::cnstr_get(x_78, 0); -lean::inc(x_103); if (lean::is_exclusive(x_78)) { - lean::cnstr_release(x_78, 0); + lean::cnstr_set(x_78, 0, lean::box(0)); x_105 = x_78; } else { + lean::inc(x_103); lean::dec(x_78); x_105 = lean::box(0); } @@ -10790,14 +10790,14 @@ lean::inc(x_1); lean::inc(x_74); x_111 = l_lean_ir_cpp_is__const(x_74, x_1, x_79); x_112 = lean::cnstr_get(x_111, 0); -lean::inc(x_112); x_114 = lean::cnstr_get(x_111, 1); -lean::inc(x_114); if (lean::is_exclusive(x_111)) { - lean::cnstr_release(x_111, 0); - lean::cnstr_release(x_111, 1); + lean::cnstr_set(x_111, 0, lean::box(0)); + lean::cnstr_set(x_111, 1, lean::box(0)); x_116 = x_111; } else { + lean::inc(x_112); + lean::inc(x_114); lean::dec(x_111); x_116 = lean::box(0); } @@ -10809,11 +10809,11 @@ lean::dec(x_108); lean::dec(x_74); lean::dec(x_76); x_123 = lean::cnstr_get(x_112, 0); -lean::inc(x_123); if (lean::is_exclusive(x_112)) { - lean::cnstr_release(x_112, 0); + lean::cnstr_set(x_112, 0, lean::box(0)); x_125 = x_112; } else { + lean::inc(x_123); lean::dec(x_112); x_125 = lean::box(0); } @@ -11046,11 +11046,11 @@ if (lean::obj_tag(x_215) == 0) { obj* x_220; obj* x_222; obj* x_223; x_220 = lean::cnstr_get(x_215, 0); -lean::inc(x_220); if (lean::is_exclusive(x_215)) { - lean::cnstr_release(x_215, 0); + lean::cnstr_set(x_215, 0, lean::box(0)); x_222 = x_215; } else { + lean::inc(x_220); lean::dec(x_215); x_222 = lean::box(0); } @@ -11086,11 +11086,11 @@ if (lean::obj_tag(x_207) == 0) { obj* x_233; obj* x_235; obj* x_236; obj* x_237; x_233 = lean::cnstr_get(x_207, 0); -lean::inc(x_233); if (lean::is_exclusive(x_207)) { - lean::cnstr_release(x_207, 0); + lean::cnstr_set(x_207, 0, lean::box(0)); x_235 = x_207; } else { + lean::inc(x_233); lean::dec(x_207); x_235 = lean::box(0); } @@ -11120,14 +11120,14 @@ x_239 = l_list_repr__aux___main___rarg___closed__1; lean::inc(x_1); x_241 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_239, x_1, x_208); x_242 = lean::cnstr_get(x_241, 0); -lean::inc(x_242); x_244 = lean::cnstr_get(x_241, 1); -lean::inc(x_244); if (lean::is_exclusive(x_241)) { - lean::cnstr_release(x_241, 0); - lean::cnstr_release(x_241, 1); + lean::cnstr_set(x_241, 0, lean::box(0)); + lean::cnstr_set(x_241, 1, lean::box(0)); x_246 = x_241; } else { + lean::inc(x_242); + lean::inc(x_244); lean::dec(x_241); x_246 = lean::box(0); } @@ -11256,11 +11256,11 @@ if (lean::obj_tag(x_210) == 0) { obj* x_285; obj* x_287; obj* x_288; obj* x_289; x_285 = lean::cnstr_get(x_210, 0); -lean::inc(x_285); if (lean::is_exclusive(x_210)) { - lean::cnstr_release(x_210, 0); + lean::cnstr_set(x_210, 0, lean::box(0)); x_287 = x_210; } else { + lean::inc(x_285); lean::dec(x_210); x_287 = lean::box(0); } @@ -11290,14 +11290,14 @@ x_291 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_293 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_291, x_1, x_211); x_294 = lean::cnstr_get(x_293, 0); -lean::inc(x_294); x_296 = lean::cnstr_get(x_293, 1); -lean::inc(x_296); if (lean::is_exclusive(x_293)) { - lean::cnstr_release(x_293, 0); - lean::cnstr_release(x_293, 1); + lean::cnstr_set(x_293, 0, lean::box(0)); + lean::cnstr_set(x_293, 1, lean::box(0)); x_298 = x_293; } else { + lean::inc(x_294); + lean::inc(x_296); lean::dec(x_293); x_298 = lean::box(0); } @@ -11415,14 +11415,14 @@ x_347 = l_lean_ir_cpp_emit__instr___closed__2; lean::inc(x_1); x_349 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_347, x_1, x_2); x_350 = lean::cnstr_get(x_349, 0); -lean::inc(x_350); x_352 = lean::cnstr_get(x_349, 1); -lean::inc(x_352); if (lean::is_exclusive(x_349)) { - lean::cnstr_release(x_349, 0); - lean::cnstr_release(x_349, 1); + lean::cnstr_set(x_349, 0, lean::box(0)); + lean::cnstr_set(x_349, 1, lean::box(0)); x_354 = x_349; } else { + lean::inc(x_350); + lean::inc(x_352); lean::dec(x_349); x_354 = lean::box(0); } @@ -11432,11 +11432,11 @@ obj* x_357; obj* x_359; obj* x_360; obj* x_361; lean::dec(x_342); lean::dec(x_339); x_357 = lean::cnstr_get(x_350, 0); -lean::inc(x_357); if (lean::is_exclusive(x_350)) { - lean::cnstr_release(x_350, 0); + lean::cnstr_set(x_350, 0, lean::box(0)); x_359 = x_350; } else { + lean::inc(x_357); lean::dec(x_350); x_359 = lean::box(0); } @@ -11583,11 +11583,11 @@ if (lean::obj_tag(x_344) == 0) obj* x_414; obj* x_416; obj* x_417; obj* x_418; lean::dec(x_342); x_414 = lean::cnstr_get(x_344, 0); -lean::inc(x_414); if (lean::is_exclusive(x_344)) { - lean::cnstr_release(x_344, 0); + lean::cnstr_set(x_344, 0, lean::box(0)); x_416 = x_344; } else { + lean::inc(x_414); lean::dec(x_344); x_416 = lean::box(0); } @@ -11617,14 +11617,14 @@ x_420 = l_list_repr__aux___main___rarg___closed__1; lean::inc(x_1); x_422 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_420, x_1, x_345); x_423 = lean::cnstr_get(x_422, 0); -lean::inc(x_423); x_425 = lean::cnstr_get(x_422, 1); -lean::inc(x_425); if (lean::is_exclusive(x_422)) { - lean::cnstr_release(x_422, 0); - lean::cnstr_release(x_422, 1); + lean::cnstr_set(x_422, 0, lean::box(0)); + lean::cnstr_set(x_422, 1, lean::box(0)); x_427 = x_422; } else { + lean::inc(x_423); + lean::inc(x_425); lean::dec(x_422); x_427 = lean::box(0); } @@ -11768,11 +11768,11 @@ if (lean::obj_tag(x_477) == 0) { obj* x_482; obj* x_484; obj* x_485; x_482 = lean::cnstr_get(x_477, 0); -lean::inc(x_482); if (lean::is_exclusive(x_477)) { - lean::cnstr_release(x_477, 0); + lean::cnstr_set(x_477, 0, lean::box(0)); x_484 = x_477; } else { + lean::inc(x_482); lean::dec(x_477); x_484 = lean::box(0); } @@ -11809,11 +11809,11 @@ if (lean::obj_tag(x_472) == 0) obj* x_496; obj* x_498; obj* x_499; obj* x_500; lean::dec(x_469); x_496 = lean::cnstr_get(x_472, 0); -lean::inc(x_496); if (lean::is_exclusive(x_472)) { - lean::cnstr_release(x_472, 0); + lean::cnstr_set(x_472, 0, lean::box(0)); x_498 = x_472; } else { + lean::inc(x_496); lean::dec(x_472); x_498 = lean::box(0); } @@ -11843,14 +11843,14 @@ x_502 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_504 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_502, x_1, x_473); x_505 = lean::cnstr_get(x_504, 0); -lean::inc(x_505); x_507 = lean::cnstr_get(x_504, 1); -lean::inc(x_507); if (lean::is_exclusive(x_504)) { - lean::cnstr_release(x_504, 0); - lean::cnstr_release(x_504, 1); + lean::cnstr_set(x_504, 0, lean::box(0)); + lean::cnstr_set(x_504, 1, lean::box(0)); x_509 = x_504; } else { + lean::inc(x_505); + lean::inc(x_507); lean::dec(x_504); x_509 = lean::box(0); } @@ -12058,14 +12058,14 @@ x_584 = l_lean_ir_cpp_emit__instr___closed__4; lean::inc(x_1); x_586 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_584, x_1, x_2); x_587 = lean::cnstr_get(x_586, 0); -lean::inc(x_587); x_589 = lean::cnstr_get(x_586, 1); -lean::inc(x_589); if (lean::is_exclusive(x_586)) { - lean::cnstr_release(x_586, 0); - lean::cnstr_release(x_586, 1); + lean::cnstr_set(x_586, 0, lean::box(0)); + lean::cnstr_set(x_586, 1, lean::box(0)); x_591 = x_586; } else { + lean::inc(x_587); + lean::inc(x_589); lean::dec(x_586); x_591 = lean::box(0); } @@ -12075,11 +12075,11 @@ obj* x_594; obj* x_596; obj* x_597; obj* x_598; lean::dec(x_579); lean::dec(x_576); x_594 = lean::cnstr_get(x_587, 0); -lean::inc(x_594); if (lean::is_exclusive(x_587)) { - lean::cnstr_release(x_587, 0); + lean::cnstr_set(x_587, 0, lean::box(0)); x_596 = x_587; } else { + lean::inc(x_594); lean::dec(x_587); x_596 = lean::box(0); } @@ -12226,11 +12226,11 @@ if (lean::obj_tag(x_581) == 0) obj* x_651; obj* x_653; obj* x_654; obj* x_655; lean::dec(x_579); x_651 = lean::cnstr_get(x_581, 0); -lean::inc(x_651); if (lean::is_exclusive(x_581)) { - lean::cnstr_release(x_581, 0); + lean::cnstr_set(x_581, 0, lean::box(0)); x_653 = x_581; } else { + lean::inc(x_651); lean::dec(x_581); x_653 = lean::box(0); } @@ -12260,14 +12260,14 @@ x_657 = l_list_repr__aux___main___rarg___closed__1; lean::inc(x_1); x_659 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_657, x_1, x_582); x_660 = lean::cnstr_get(x_659, 0); -lean::inc(x_660); x_662 = lean::cnstr_get(x_659, 1); -lean::inc(x_662); if (lean::is_exclusive(x_659)) { - lean::cnstr_release(x_659, 0); - lean::cnstr_release(x_659, 1); + lean::cnstr_set(x_659, 0, lean::box(0)); + lean::cnstr_set(x_659, 1, lean::box(0)); x_664 = x_659; } else { + lean::inc(x_660); + lean::inc(x_662); lean::dec(x_659); x_664 = lean::box(0); } @@ -12412,11 +12412,11 @@ if (lean::obj_tag(x_715) == 0) { obj* x_720; obj* x_722; obj* x_723; x_720 = lean::cnstr_get(x_715, 0); -lean::inc(x_720); if (lean::is_exclusive(x_715)) { - lean::cnstr_release(x_715, 0); + lean::cnstr_set(x_715, 0, lean::box(0)); x_722 = x_715; } else { + lean::inc(x_720); lean::dec(x_715); x_722 = lean::box(0); } @@ -12489,11 +12489,11 @@ if (lean::obj_tag(x_710) == 0) obj* x_747; obj* x_749; obj* x_750; obj* x_751; lean::dec(x_707); x_747 = lean::cnstr_get(x_710, 0); -lean::inc(x_747); if (lean::is_exclusive(x_710)) { - lean::cnstr_release(x_710, 0); + lean::cnstr_set(x_710, 0, lean::box(0)); x_749 = x_710; } else { + lean::inc(x_747); lean::dec(x_710); x_749 = lean::box(0); } @@ -12523,14 +12523,14 @@ x_753 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_755 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_753, x_1, x_711); x_756 = lean::cnstr_get(x_755, 0); -lean::inc(x_756); x_758 = lean::cnstr_get(x_755, 1); -lean::inc(x_758); if (lean::is_exclusive(x_755)) { - lean::cnstr_release(x_755, 0); - lean::cnstr_release(x_755, 1); + lean::cnstr_set(x_755, 0, lean::box(0)); + lean::cnstr_set(x_755, 1, lean::box(0)); x_760 = x_755; } else { + lean::inc(x_756); + lean::inc(x_758); lean::dec(x_755); x_760 = lean::box(0); } @@ -12772,11 +12772,11 @@ if (lean::obj_tag(x_852) == 0) { obj* x_857; obj* x_859; obj* x_860; x_857 = lean::cnstr_get(x_852, 0); -lean::inc(x_857); if (lean::is_exclusive(x_852)) { - lean::cnstr_release(x_852, 0); + lean::cnstr_set(x_852, 0, lean::box(0)); x_859 = x_852; } else { + lean::inc(x_857); lean::dec(x_852); x_859 = lean::box(0); } @@ -12814,11 +12814,11 @@ obj* x_872; obj* x_874; obj* x_875; obj* x_876; lean::dec(x_843); lean::dec(x_845); x_872 = lean::cnstr_get(x_847, 0); -lean::inc(x_872); if (lean::is_exclusive(x_847)) { - lean::cnstr_release(x_847, 0); + lean::cnstr_set(x_847, 0, lean::box(0)); x_874 = x_847; } else { + lean::inc(x_872); lean::dec(x_847); x_874 = lean::box(0); } @@ -12848,14 +12848,14 @@ x_878 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_880 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_878, x_1, x_848); x_881 = lean::cnstr_get(x_880, 0); -lean::inc(x_881); x_883 = lean::cnstr_get(x_880, 1); -lean::inc(x_883); if (lean::is_exclusive(x_880)) { - lean::cnstr_release(x_880, 0); - lean::cnstr_release(x_880, 1); + lean::cnstr_set(x_880, 0, lean::box(0)); + lean::cnstr_set(x_880, 1, lean::box(0)); x_885 = x_880; } else { + lean::inc(x_881); + lean::inc(x_883); lean::dec(x_880); x_885 = lean::box(0); } @@ -13075,11 +13075,11 @@ if (lean::obj_tag(x_970) == 0) { obj* x_975; obj* x_977; obj* x_978; x_975 = lean::cnstr_get(x_970, 0); -lean::inc(x_975); if (lean::is_exclusive(x_970)) { - lean::cnstr_release(x_970, 0); + lean::cnstr_set(x_970, 0, lean::box(0)); x_977 = x_970; } else { + lean::inc(x_975); lean::dec(x_970); x_977 = lean::box(0); } @@ -13116,11 +13116,11 @@ if (lean::obj_tag(x_962) == 0) obj* x_989; obj* x_991; obj* x_992; obj* x_993; lean::dec(x_960); x_989 = lean::cnstr_get(x_962, 0); -lean::inc(x_989); if (lean::is_exclusive(x_962)) { - lean::cnstr_release(x_962, 0); + lean::cnstr_set(x_962, 0, lean::box(0)); x_991 = x_962; } else { + lean::inc(x_989); lean::dec(x_962); x_991 = lean::box(0); } @@ -13150,14 +13150,14 @@ x_995 = l_list_repr__aux___main___rarg___closed__1; lean::inc(x_1); x_997 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_995, x_1, x_963); x_998 = lean::cnstr_get(x_997, 0); -lean::inc(x_998); x_1000 = lean::cnstr_get(x_997, 1); -lean::inc(x_1000); if (lean::is_exclusive(x_997)) { - lean::cnstr_release(x_997, 0); - lean::cnstr_release(x_997, 1); + lean::cnstr_set(x_997, 0, lean::box(0)); + lean::cnstr_set(x_997, 1, lean::box(0)); x_1002 = x_997; } else { + lean::inc(x_998); + lean::inc(x_1000); lean::dec(x_997); x_1002 = lean::box(0); } @@ -13289,11 +13289,11 @@ obj* x_1044; obj* x_1046; obj* x_1047; obj* x_1048; lean::dec(x_958); lean::dec(x_960); x_1044 = lean::cnstr_get(x_965, 0); -lean::inc(x_1044); if (lean::is_exclusive(x_965)) { - lean::cnstr_release(x_965, 0); + lean::cnstr_set(x_965, 0, lean::box(0)); x_1046 = x_965; } else { + lean::inc(x_1044); lean::dec(x_965); x_1046 = lean::box(0); } @@ -13323,14 +13323,14 @@ x_1050 = l_prod_has__repr___rarg___closed__1; lean::inc(x_1); x_1052 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_1050, x_1, x_966); x_1053 = lean::cnstr_get(x_1052, 0); -lean::inc(x_1053); x_1055 = lean::cnstr_get(x_1052, 1); -lean::inc(x_1055); if (lean::is_exclusive(x_1052)) { - lean::cnstr_release(x_1052, 0); - lean::cnstr_release(x_1052, 1); + lean::cnstr_set(x_1052, 0, lean::box(0)); + lean::cnstr_set(x_1052, 1, lean::box(0)); x_1057 = x_1052; } else { + lean::inc(x_1053); + lean::inc(x_1055); lean::dec(x_1052); x_1057 = lean::box(0); } @@ -13493,11 +13493,11 @@ if (lean::obj_tag(x_1108) == 0) obj* x_1131; obj* x_1133; obj* x_1134; obj* x_1135; lean::dec(x_1106); x_1131 = lean::cnstr_get(x_1108, 0); -lean::inc(x_1131); if (lean::is_exclusive(x_1108)) { - lean::cnstr_release(x_1108, 0); + lean::cnstr_set(x_1108, 0, lean::box(0)); x_1133 = x_1108; } else { + lean::inc(x_1131); lean::dec(x_1108); x_1133 = lean::box(0); } @@ -13527,14 +13527,14 @@ x_1137 = l_list_repr__aux___main___rarg___closed__1; lean::inc(x_1); x_1139 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_1137, x_1, x_1109); x_1140 = lean::cnstr_get(x_1139, 0); -lean::inc(x_1140); x_1142 = lean::cnstr_get(x_1139, 1); -lean::inc(x_1142); if (lean::is_exclusive(x_1139)) { - lean::cnstr_release(x_1139, 0); - lean::cnstr_release(x_1139, 1); + lean::cnstr_set(x_1139, 0, lean::box(0)); + lean::cnstr_set(x_1139, 1, lean::box(0)); x_1144 = x_1139; } else { + lean::inc(x_1140); + lean::inc(x_1142); lean::dec(x_1139); x_1144 = lean::box(0); } @@ -13666,14 +13666,14 @@ x_1185 = l_lean_ir_cpp_emit__instr___closed__8; lean::inc(x_1); x_1187 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_1185, x_1, x_2); x_1188 = lean::cnstr_get(x_1187, 0); -lean::inc(x_1188); x_1190 = lean::cnstr_get(x_1187, 1); -lean::inc(x_1190); if (lean::is_exclusive(x_1187)) { - lean::cnstr_release(x_1187, 0); - lean::cnstr_release(x_1187, 1); + lean::cnstr_set(x_1187, 0, lean::box(0)); + lean::cnstr_set(x_1187, 1, lean::box(0)); x_1192 = x_1187; } else { + lean::inc(x_1188); + lean::inc(x_1190); lean::dec(x_1187); x_1192 = lean::box(0); } @@ -13684,11 +13684,11 @@ lean::dec(x_1106); lean::dec(x_1104); lean::dec(x_1102); x_1196 = lean::cnstr_get(x_1188, 0); -lean::inc(x_1196); if (lean::is_exclusive(x_1188)) { - lean::cnstr_release(x_1188, 0); + lean::cnstr_set(x_1188, 0, lean::box(0)); x_1198 = x_1188; } else { + lean::inc(x_1196); lean::dec(x_1188); x_1198 = lean::box(0); } @@ -13840,14 +13840,14 @@ x_1256 = l_lean_ir_cpp_emit__instr___closed__9; lean::inc(x_1); x_1258 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_1256, x_1, x_2); x_1259 = lean::cnstr_get(x_1258, 0); -lean::inc(x_1259); x_1261 = lean::cnstr_get(x_1258, 1); -lean::inc(x_1261); if (lean::is_exclusive(x_1258)) { - lean::cnstr_release(x_1258, 0); - lean::cnstr_release(x_1258, 1); + lean::cnstr_set(x_1258, 0, lean::box(0)); + lean::cnstr_set(x_1258, 1, lean::box(0)); x_1263 = x_1258; } else { + lean::inc(x_1259); + lean::inc(x_1261); lean::dec(x_1258); x_1263 = lean::box(0); } @@ -13858,11 +13858,11 @@ lean::dec(x_1106); lean::dec(x_1104); lean::dec(x_1102); x_1267 = lean::cnstr_get(x_1259, 0); -lean::inc(x_1267); if (lean::is_exclusive(x_1259)) { - lean::cnstr_release(x_1259, 0); + lean::cnstr_set(x_1259, 0, lean::box(0)); x_1269 = x_1259; } else { + lean::inc(x_1267); lean::dec(x_1259); x_1269 = lean::box(0); } @@ -14012,14 +14012,14 @@ lbl_4: { obj* x_1326; obj* x_1328; obj* x_1330; x_1326 = lean::cnstr_get(x_3, 0); -lean::inc(x_1326); x_1328 = lean::cnstr_get(x_3, 1); -lean::inc(x_1328); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_1330 = x_3; } else { + lean::inc(x_1326); + lean::inc(x_1328); lean::dec(x_3); x_1330 = lean::box(0); } @@ -14028,11 +14028,11 @@ if (lean::obj_tag(x_1326) == 0) obj* x_1332; obj* x_1334; obj* x_1335; uint8 x_1336; obj* x_1337; obj* x_1338; obj* x_1339; obj* x_1340; obj* x_1341; obj* x_1342; obj* x_1343; obj* x_1344; obj* x_1345; obj* x_1346; obj* x_1347; obj* x_1348; obj* x_1349; lean::dec(x_1); x_1332 = lean::cnstr_get(x_1326, 0); -lean::inc(x_1332); if (lean::is_exclusive(x_1326)) { - lean::cnstr_release(x_1326, 0); + lean::cnstr_set(x_1326, 0, lean::box(0)); x_1334 = x_1326; } else { + lean::inc(x_1332); lean::dec(x_1326); x_1334 = lean::box(0); } @@ -14208,14 +14208,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_cpp_emit__instr(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -14225,11 +14225,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -14319,11 +14319,11 @@ lean::dec(x_10); lean::dec(x_1); lean::dec(x_8); x_22 = lean::cnstr_get(x_13, 0); -lean::inc(x_22); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_24 = x_13; } else { + lean::inc(x_22); lean::dec(x_13); x_24 = lean::box(0); } @@ -14351,14 +14351,14 @@ if (lean::is_exclusive(x_13)) { lean::inc(x_1); x_29 = l_lean_ir_cpp_emit__blockid(x_6, x_1, x_14); x_30 = lean::cnstr_get(x_29, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_29, 1); -lean::inc(x_32); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); - lean::cnstr_release(x_29, 1); + lean::cnstr_set(x_29, 0, lean::box(0)); + lean::cnstr_set(x_29, 1, lean::box(0)); x_34 = x_29; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_29); x_34 = lean::box(0); } @@ -14543,11 +14543,11 @@ if (lean::obj_tag(x_16) == 0) { obj* x_21; obj* x_23; obj* x_24; x_21 = lean::cnstr_get(x_16, 0); -lean::inc(x_21); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_23 = x_16; } else { + lean::inc(x_21); lean::dec(x_16); x_23 = lean::box(0); } @@ -14586,11 +14586,11 @@ lean::dec(x_7); lean::dec(x_5); lean::dec(x_1); x_37 = lean::cnstr_get(x_10, 0); -lean::inc(x_37); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_39 = x_10; } else { + lean::inc(x_37); lean::dec(x_10); x_39 = lean::box(0); } @@ -14618,14 +14618,14 @@ if (lean::is_exclusive(x_10)) { lean::inc(x_1); x_44 = l_lean_ir_cpp_emit__fnid(x_5, x_1, x_11); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -14794,14 +14794,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = l_lean_ir_cpp_emit__type(x_1, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -14811,11 +14811,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_0); lean::dec(x_2); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -15005,14 +15005,14 @@ lean::inc(x_3); lean::inc(x_0); x_20 = l_rbnode_mfold___main___at_lean_ir_cpp_decl__locals___spec__2(x_0, x_9, x_2, x_3, x_4); x_21 = lean::cnstr_get(x_20, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_20, 1); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -15025,11 +15025,11 @@ lean::dec(x_11); lean::dec(x_13); lean::dec(x_15); x_31 = lean::cnstr_get(x_21, 0); -lean::inc(x_31); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_33 = x_21; } else { + lean::inc(x_31); lean::dec(x_21); x_33 = lean::box(0); } @@ -15142,14 +15142,14 @@ lean::inc(x_3); lean::inc(x_0); x_79 = l_rbnode_mfold___main___at_lean_ir_cpp_decl__locals___spec__2(x_0, x_68, x_2, x_3, x_4); x_80 = lean::cnstr_get(x_79, 0); -lean::inc(x_80); x_82 = lean::cnstr_get(x_79, 1); -lean::inc(x_82); if (lean::is_exclusive(x_79)) { - lean::cnstr_release(x_79, 0); - lean::cnstr_release(x_79, 1); + lean::cnstr_set(x_79, 0, lean::box(0)); + lean::cnstr_set(x_79, 1, lean::box(0)); x_84 = x_79; } else { + lean::inc(x_80); + lean::inc(x_82); lean::dec(x_79); x_84 = lean::box(0); } @@ -15162,11 +15162,11 @@ lean::dec(x_72); lean::dec(x_70); lean::dec(x_74); x_90 = lean::cnstr_get(x_80, 0); -lean::inc(x_90); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_92 = x_80; } else { + lean::inc(x_90); lean::dec(x_80); x_92 = lean::box(0); } @@ -15391,14 +15391,14 @@ x_3 = l_lean_ir_cpp_emit__uncurry__header___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -15408,11 +15408,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -15525,14 +15525,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = lean::apply_2(x_0, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -15542,11 +15542,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_2); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -15803,11 +15803,11 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_20; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -15917,11 +15917,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_64; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_1); x_64 = lean::cnstr_get(x_3, 0); -lean::inc(x_64); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_66 = x_3; } else { + lean::inc(x_64); lean::dec(x_3); x_66 = lean::box(0); } @@ -15949,14 +15949,14 @@ if (lean::is_exclusive(x_3)) { lean::inc(x_1); x_71 = l_lean_ir_cpp_emit__eos(x_1, x_4); x_72 = lean::cnstr_get(x_71, 0); -lean::inc(x_72); x_74 = lean::cnstr_get(x_71, 1); -lean::inc(x_74); if (lean::is_exclusive(x_71)) { - lean::cnstr_release(x_71, 0); - lean::cnstr_release(x_71, 1); + lean::cnstr_set(x_71, 0, lean::box(0)); + lean::cnstr_set(x_71, 1, lean::box(0)); x_76 = x_71; } else { + lean::inc(x_72); + lean::inc(x_74); lean::dec(x_71); x_76 = lean::box(0); } @@ -16002,11 +16002,11 @@ if (lean::obj_tag(x_6) == 0) obj* x_89; obj* x_91; obj* x_92; lean::dec(x_0); x_89 = lean::cnstr_get(x_6, 0); -lean::inc(x_89); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_91 = x_6; } else { + lean::inc(x_89); lean::dec(x_6); x_91 = lean::box(0); } @@ -16191,14 +16191,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_cpp_emit__block(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -16208,11 +16208,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -16299,11 +16299,11 @@ if (lean::obj_tag(x_29) == 0) obj* x_35; obj* x_37; obj* x_38; lean::dec(x_15); x_35 = lean::cnstr_get(x_29, 0); -lean::inc(x_35); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_37 = x_29; } else { + lean::inc(x_35); lean::dec(x_29); x_37 = lean::box(0); } @@ -16410,11 +16410,11 @@ lean::dec(x_13); lean::dec(x_1); lean::dec(x_0); x_79 = lean::cnstr_get(x_24, 0); -lean::inc(x_79); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_81 = x_24; } else { + lean::inc(x_79); lean::dec(x_24); x_81 = lean::box(0); } @@ -16566,11 +16566,11 @@ if (lean::obj_tag(x_5) == 0) { obj* x_138; obj* x_140; obj* x_141; obj* x_144; uint8 x_145; obj* x_146; obj* x_147; obj* x_148; obj* x_149; obj* x_150; obj* x_151; obj* x_152; obj* x_153; obj* x_154; obj* x_155; obj* x_156; obj* x_157; obj* x_158; x_138 = lean::cnstr_get(x_5, 0); -lean::inc(x_138); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_140 = x_5; } else { + lean::inc(x_138); lean::dec(x_5); x_140 = lean::box(0); } @@ -16642,11 +16642,11 @@ obj* x_12; obj* x_14; obj* x_15; obj* x_16; lean::dec(x_3); lean::dec(x_0); x_12 = lean::cnstr_get(x_9, 0); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -16693,20 +16693,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -16773,20 +16773,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -17064,14 +17064,14 @@ lean::inc(x_3); lean::inc(x_0); x_18 = l_rbnode_mfold___main___at_lean_ir_cpp_emit__used__headers___spec__1(x_0, x_9, x_2, x_3, x_4); x_19 = lean::cnstr_get(x_18, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_18, 1); -lean::inc(x_21); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); x_23 = x_18; } else { + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_18); x_23 = lean::box(0); } @@ -17083,11 +17083,11 @@ lean::dec(x_0); lean::dec(x_11); lean::dec(x_13); x_28 = lean::cnstr_get(x_19, 0); -lean::inc(x_28); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_30 = x_19; } else { + lean::inc(x_28); lean::dec(x_19); x_30 = lean::box(0); } @@ -17165,11 +17165,11 @@ if (lean::obj_tag(x_61) == 0) { obj* x_66; obj* x_68; obj* x_69; x_66 = lean::cnstr_get(x_61, 0); -lean::inc(x_66); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); + lean::cnstr_set(x_61, 0, lean::box(0)); x_68 = x_61; } else { + lean::inc(x_66); lean::dec(x_61); x_68 = lean::box(0); } @@ -17243,11 +17243,11 @@ if (lean::obj_tag(x_86) == 0) obj* x_92; obj* x_94; obj* x_95; lean::dec(x_46); x_92 = lean::cnstr_get(x_86, 0); -lean::inc(x_92); if (lean::is_exclusive(x_86)) { - lean::cnstr_release(x_86, 0); + lean::cnstr_set(x_86, 0, lean::box(0)); x_94 = x_86; } else { + lean::inc(x_92); lean::dec(x_86); x_94 = lean::box(0); } @@ -17362,11 +17362,11 @@ if (lean::obj_tag(x_135) == 0) obj* x_141; obj* x_143; obj* x_144; lean::dec(x_46); x_141 = lean::cnstr_get(x_135, 0); -lean::inc(x_141); if (lean::is_exclusive(x_135)) { - lean::cnstr_release(x_135, 0); + lean::cnstr_set(x_135, 0, lean::box(0)); x_143 = x_135; } else { + lean::inc(x_141); lean::dec(x_135); x_143 = lean::box(0); } @@ -17626,14 +17626,14 @@ lean::inc(x_3); lean::inc(x_0); x_246 = l_rbnode_mfold___main___at_lean_ir_cpp_emit__used__headers___spec__1(x_0, x_237, x_2, x_3, x_4); x_247 = lean::cnstr_get(x_246, 0); -lean::inc(x_247); x_249 = lean::cnstr_get(x_246, 1); -lean::inc(x_249); if (lean::is_exclusive(x_246)) { - lean::cnstr_release(x_246, 0); - lean::cnstr_release(x_246, 1); + lean::cnstr_set(x_246, 0, lean::box(0)); + lean::cnstr_set(x_246, 1, lean::box(0)); x_251 = x_246; } else { + lean::inc(x_247); + lean::inc(x_249); lean::dec(x_246); x_251 = lean::box(0); } @@ -17645,11 +17645,11 @@ lean::dec(x_0); lean::dec(x_241); lean::dec(x_239); x_256 = lean::cnstr_get(x_247, 0); -lean::inc(x_256); if (lean::is_exclusive(x_247)) { - lean::cnstr_release(x_247, 0); + lean::cnstr_set(x_247, 0, lean::box(0)); x_258 = x_247; } else { + lean::inc(x_256); lean::dec(x_247); x_258 = lean::box(0); } @@ -17727,11 +17727,11 @@ if (lean::obj_tag(x_289) == 0) { obj* x_294; obj* x_296; obj* x_297; x_294 = lean::cnstr_get(x_289, 0); -lean::inc(x_294); if (lean::is_exclusive(x_289)) { - lean::cnstr_release(x_289, 0); + lean::cnstr_set(x_289, 0, lean::box(0)); x_296 = x_289; } else { + lean::inc(x_294); lean::dec(x_289); x_296 = lean::box(0); } @@ -17805,11 +17805,11 @@ if (lean::obj_tag(x_314) == 0) obj* x_320; obj* x_322; obj* x_323; lean::dec(x_274); x_320 = lean::cnstr_get(x_314, 0); -lean::inc(x_320); if (lean::is_exclusive(x_314)) { - lean::cnstr_release(x_314, 0); + lean::cnstr_set(x_314, 0, lean::box(0)); x_322 = x_314; } else { + lean::inc(x_320); lean::dec(x_314); x_322 = lean::box(0); } @@ -17924,11 +17924,11 @@ if (lean::obj_tag(x_363) == 0) obj* x_369; obj* x_371; obj* x_372; lean::dec(x_274); x_369 = lean::cnstr_get(x_363, 0); -lean::inc(x_369); if (lean::is_exclusive(x_363)) { - lean::cnstr_release(x_363, 0); + lean::cnstr_set(x_363, 0, lean::box(0)); x_371 = x_363; } else { + lean::inc(x_369); lean::dec(x_363); x_371 = lean::box(0); } @@ -18227,14 +18227,14 @@ x_17 = lean::unbox(x_15); lean::inc(x_1); x_19 = l_lean_ir_cpp_emit__type(x_17, x_1, x_2); x_20 = lean::cnstr_get(x_19, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_19, 1); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); - lean::cnstr_release(x_19, 1); + lean::cnstr_set(x_19, 0, lean::box(0)); + lean::cnstr_set(x_19, 1, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -18245,11 +18245,11 @@ lean::dec(x_11); lean::dec(x_8); lean::dec(x_1); x_28 = lean::cnstr_get(x_20, 0); -lean::inc(x_28); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_30 = x_20; } else { + lean::inc(x_28); lean::dec(x_20); x_30 = lean::box(0); } @@ -18442,14 +18442,14 @@ x_11 = l_lean_ir_cpp_initialize__prefix; lean::inc(x_1); x_13 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_11, x_1, x_2); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -18460,11 +18460,11 @@ lean::dec(x_6); lean::dec(x_8); lean::dec(x_1); x_22 = lean::cnstr_get(x_14, 0); -lean::inc(x_22); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_24 = x_14; } else { + lean::inc(x_22); lean::dec(x_14); x_24 = lean::box(0); } @@ -18613,14 +18613,14 @@ lean::inc(x_1); lean::inc(x_15); x_20 = l_lean_ir_cpp_emit__global(x_15, x_1, x_2); x_21 = lean::cnstr_get(x_20, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_20, 1); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -18631,11 +18631,11 @@ lean::dec(x_15); lean::dec(x_8); lean::dec(x_1); x_29 = lean::cnstr_get(x_21, 0); -lean::inc(x_29); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_31 = x_21; } else { + lean::inc(x_29); lean::dec(x_21); x_31 = lean::box(0); } @@ -18824,14 +18824,14 @@ x_3 = l_lean_ir_cpp_emit__initialize__proc___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -18841,11 +18841,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -19173,14 +19173,14 @@ x_11 = l_lean_ir_cpp_finalize__prefix; lean::inc(x_1); x_13 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_11, x_1, x_2); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -19191,11 +19191,11 @@ lean::dec(x_6); lean::dec(x_8); lean::dec(x_1); x_22 = lean::cnstr_get(x_14, 0); -lean::inc(x_22); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_24 = x_14; } else { + lean::inc(x_22); lean::dec(x_14); x_24 = lean::box(0); } @@ -19418,11 +19418,11 @@ obj* x_35; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_8); lean::dec(x_1); x_35 = lean::cnstr_get(x_11, 0); -lean::inc(x_35); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_37 = x_11; } else { + lean::inc(x_35); lean::dec(x_11); x_37 = lean::box(0); } @@ -19462,11 +19462,11 @@ if (lean::obj_tag(x_46) == 0) obj* x_52; obj* x_54; obj* x_55; lean::dec(x_14); x_52 = lean::cnstr_get(x_46, 0); -lean::inc(x_52); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_54 = x_46; } else { + lean::inc(x_52); lean::dec(x_46); x_54 = lean::box(0); } @@ -19625,14 +19625,14 @@ x_3 = l_lean_ir_cpp_emit__initialize__proc___closed__1; lean::inc(x_1); x_5 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -19642,11 +19642,11 @@ obj* x_13; obj* x_15; obj* x_16; obj* x_17; lean::dec(x_1); lean::dec(x_0); x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -20182,11 +20182,11 @@ obj* x_89; obj* x_91; obj* x_92; obj* x_93; lean::dec(x_0); lean::dec(x_48); x_89 = lean::cnstr_get(x_55, 0); -lean::inc(x_89); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_91 = x_55; } else { + lean::inc(x_89); lean::dec(x_55); x_91 = lean::box(0); } @@ -20215,14 +20215,14 @@ x_95 = l_list_mmap_x_27___main___at_lean_ir_cpp_emit__initialize__proc___spec__1 lean::inc(x_0); x_97 = l_lean_ir_cpp_emit___at_lean_ir_cpp_emit__line___spec__1(x_95, x_0, x_56); x_98 = lean::cnstr_get(x_97, 0); -lean::inc(x_98); x_100 = lean::cnstr_get(x_97, 1); -lean::inc(x_100); if (lean::is_exclusive(x_97)) { - lean::cnstr_release(x_97, 0); - lean::cnstr_release(x_97, 1); + lean::cnstr_set(x_97, 0, lean::box(0)); + lean::cnstr_set(x_97, 1, lean::box(0)); x_102 = x_97; } else { + lean::inc(x_98); + lean::inc(x_100); lean::dec(x_97); x_102 = lean::box(0); } @@ -20376,11 +20376,11 @@ if (lean::obj_tag(x_58) == 0) obj* x_160; obj* x_162; obj* x_163; lean::dec(x_10); x_160 = lean::cnstr_get(x_58, 0); -lean::inc(x_160); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_162 = x_58; } else { + lean::inc(x_160); lean::dec(x_58); x_162 = lean::box(0); } @@ -20516,11 +20516,11 @@ if (lean::obj_tag(x_61) == 0) { obj* x_215; obj* x_217; obj* x_218; x_215 = lean::cnstr_get(x_61, 0); -lean::inc(x_215); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); + lean::cnstr_set(x_61, 0, lean::box(0)); x_217 = x_61; } else { + lean::inc(x_215); lean::dec(x_61); x_217 = lean::box(0); } @@ -20617,14 +20617,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_cpp_emit__def(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -20634,11 +20634,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -20709,11 +20709,11 @@ if (lean::obj_tag(x_15) == 0) { obj* x_20; obj* x_22; obj* x_23; x_20 = lean::cnstr_get(x_15, 0); -lean::inc(x_20); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_22 = x_15; } else { + lean::inc(x_20); lean::dec(x_15); x_22 = lean::box(0); } @@ -20789,11 +20789,11 @@ lean::dec(x_8); lean::dec(x_0); lean::dec(x_10); x_50 = lean::cnstr_get(x_9, 0); -lean::inc(x_50); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_52 = x_9; } else { + lean::inc(x_50); lean::dec(x_9); x_52 = lean::box(0); } diff --git a/src/boot/init/lean/ir/lirc.cpp b/src/boot/init/lean/ir/lirc.cpp index c7bc982f1d..abd16c029b 100644 --- a/src/boot/init/lean/ir/lirc.cpp +++ b/src/boot/init/lean/ir/lirc.cpp @@ -138,20 +138,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -218,20 +218,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -584,11 +584,11 @@ else { obj* x_55; obj* x_57; obj* x_58; obj* x_60; obj* x_62; obj* x_65; obj* x_66; uint8 x_67; obj* x_68; obj* x_69; x_55 = lean::cnstr_get(x_41, 0); -lean::inc(x_55); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_57 = x_41; } else { + lean::inc(x_55); lean::dec(x_41); x_57 = lean::box(0); } @@ -638,15 +638,15 @@ if (lean::obj_tag(x_13) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_14 = lean::cnstr_get(x_13, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 2); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -673,12 +673,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; x_26 = lean::cnstr_get(x_13, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_29 = x_13; } else { + lean::inc(x_26); lean::dec(x_13); x_29 = lean::box(0); } @@ -720,15 +720,15 @@ if (lean::obj_tag(x_48) == 0) { obj* x_49; obj* x_51; obj* x_53; obj* x_54; x_49 = lean::cnstr_get(x_48, 1); -lean::inc(x_49); x_51 = lean::cnstr_get(x_48, 2); -lean::inc(x_51); if (lean::is_exclusive(x_48)) { lean::cnstr_release(x_48, 0); - lean::cnstr_release(x_48, 1); - lean::cnstr_release(x_48, 2); + lean::cnstr_set(x_48, 1, lean::box(0)); + lean::cnstr_set(x_48, 2, lean::box(0)); x_53 = x_48; } else { + lean::inc(x_49); + lean::inc(x_51); lean::dec(x_48); x_53 = lean::box(0); } @@ -737,17 +737,17 @@ if (lean::obj_tag(x_54) == 0) { obj* x_55; obj* x_57; obj* x_59; obj* x_61; obj* x_62; x_55 = lean::cnstr_get(x_54, 0); -lean::inc(x_55); x_57 = lean::cnstr_get(x_54, 1); -lean::inc(x_57); x_59 = lean::cnstr_get(x_54, 2); -lean::inc(x_59); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); - lean::cnstr_release(x_54, 1); - lean::cnstr_release(x_54, 2); + lean::cnstr_set(x_54, 0, lean::box(0)); + lean::cnstr_set(x_54, 1, lean::box(0)); + lean::cnstr_set(x_54, 2, lean::box(0)); x_61 = x_54; } else { + lean::inc(x_55); + lean::inc(x_57); + lean::inc(x_59); lean::dec(x_54); x_61 = lean::box(0); } @@ -813,12 +813,12 @@ obj* x_93; uint8 x_95; obj* x_96; obj* x_97; obj* x_98; obj* x_99; obj* x_100; lean::dec(x_61); lean::dec(x_72); x_93 = lean::cnstr_get(x_80, 0); -lean::inc(x_93); x_95 = lean::cnstr_get_scalar(x_80, sizeof(void*)*1); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_96 = x_80; } else { + lean::inc(x_93); lean::dec(x_80); x_96 = lean::box(0); } @@ -841,12 +841,12 @@ else obj* x_102; uint8 x_104; obj* x_105; obj* x_106; obj* x_107; obj* x_108; lean::dec(x_61); x_102 = lean::cnstr_get(x_71, 0); -lean::inc(x_102); x_104 = lean::cnstr_get_scalar(x_71, sizeof(void*)*1); if (lean::is_exclusive(x_71)) { - lean::cnstr_release(x_71, 0); + lean::cnstr_set(x_71, 0, lean::box(0)); x_105 = x_71; } else { + lean::inc(x_102); lean::dec(x_71); x_105 = lean::box(0); } @@ -869,12 +869,12 @@ obj* x_111; uint8 x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; lean::dec(x_61); lean::dec(x_55); x_111 = lean::cnstr_get(x_62, 0); -lean::inc(x_111); x_113 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_114 = x_62; } else { + lean::inc(x_111); lean::dec(x_62); x_114 = lean::box(0); } @@ -930,12 +930,12 @@ obj* x_140; uint8 x_142; obj* x_143; obj* x_144; obj* x_145; obj* x_146; obj* x_ lean::dec(x_118); lean::dec(x_53); x_140 = lean::cnstr_get(x_126, 0); -lean::inc(x_140); x_142 = lean::cnstr_get_scalar(x_126, sizeof(void*)*1); if (lean::is_exclusive(x_126)) { - lean::cnstr_release(x_126, 0); + lean::cnstr_set(x_126, 0, lean::box(0)); x_143 = x_126; } else { + lean::inc(x_140); lean::dec(x_126); x_143 = lean::box(0); } @@ -958,12 +958,12 @@ else obj* x_149; uint8 x_151; obj* x_152; obj* x_153; obj* x_154; obj* x_155; lean::dec(x_53); x_149 = lean::cnstr_get(x_117, 0); -lean::inc(x_149); x_151 = lean::cnstr_get_scalar(x_117, sizeof(void*)*1); if (lean::is_exclusive(x_117)) { - lean::cnstr_release(x_117, 0); + lean::cnstr_set(x_117, 0, lean::box(0)); x_152 = x_117; } else { + lean::inc(x_149); lean::dec(x_117); x_152 = lean::box(0); } @@ -986,12 +986,12 @@ else obj* x_157; uint8 x_159; obj* x_160; obj* x_161; obj* x_162; obj* x_163; lean::dec(x_53); x_157 = lean::cnstr_get(x_54, 0); -lean::inc(x_157); x_159 = lean::cnstr_get_scalar(x_54, sizeof(void*)*1); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_160 = x_54; } else { + lean::inc(x_157); lean::dec(x_54); x_160 = lean::box(0); } @@ -1012,12 +1012,12 @@ else { obj* x_164; uint8 x_166; obj* x_167; obj* x_168; obj* x_169; x_164 = lean::cnstr_get(x_48, 0); -lean::inc(x_164); x_166 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_167 = x_48; } else { + lean::inc(x_164); lean::dec(x_48); x_167 = lean::box(0); } @@ -1095,12 +1095,12 @@ lean::dec(x_1); lean::dec(x_2); lean::dec(x_39); x_203 = lean::cnstr_get(x_175, 0); -lean::inc(x_203); x_205 = lean::cnstr_get_scalar(x_175, sizeof(void*)*1); if (lean::is_exclusive(x_175)) { - lean::cnstr_release(x_175, 0); + lean::cnstr_set(x_175, 0, lean::box(0)); x_206 = x_175; } else { + lean::inc(x_203); lean::dec(x_175); x_206 = lean::box(0); } @@ -1183,12 +1183,12 @@ lean::dec(x_7); lean::dec(x_1); lean::dec(x_2); x_237 = lean::cnstr_get(x_43, 0); -lean::inc(x_237); x_239 = lean::cnstr_get_scalar(x_43, sizeof(void*)*1); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_240 = x_43; } else { + lean::inc(x_237); lean::dec(x_43); x_240 = lean::box(0); } @@ -1337,12 +1337,12 @@ obj* x_14; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; lean::dec(x_1); lean::dec(x_0); x_14 = lean::cnstr_get(x_3, 0); -lean::inc(x_14); x_16 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_17 = x_3; } else { + lean::inc(x_14); lean::dec(x_3); x_17 = lean::box(0); } @@ -1373,11 +1373,11 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_8 = x_5; } else { + lean::inc(x_6); lean::dec(x_5); x_8 = lean::box(0); } @@ -1396,11 +1396,11 @@ else { obj* x_12; obj* x_14; obj* x_15; x_12 = lean::cnstr_get(x_5, 0); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -1437,11 +1437,11 @@ obj* x_7; obj* x_9; obj* x_10; lean::dec(x_0); lean::dec(x_2); x_7 = lean::cnstr_get(x_4, 0); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -1500,11 +1500,11 @@ obj* x_24; obj* x_26; obj* x_27; lean::dec(x_0); lean::dec(x_2); x_24 = lean::cnstr_get(x_21, 0); -lean::inc(x_24); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_26 = x_21; } else { + lean::inc(x_24); lean::dec(x_21); x_26 = lean::box(0); } @@ -1605,20 +1605,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -1685,20 +1685,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -2146,11 +2146,11 @@ lean::dec(x_9); lean::dec(x_0); lean::dec(x_2); x_20 = lean::cnstr_get(x_16, 0); -lean::inc(x_20); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_22 = x_16; } else { + lean::inc(x_20); lean::dec(x_16); x_22 = lean::box(0); } @@ -2184,14 +2184,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -2218,11 +2218,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_5; obj* x_7; obj* x_8; lean::dec(x_1); x_5 = lean::cnstr_get(x_3, 0); -lean::inc(x_5); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_7 = x_3; } else { + lean::inc(x_5); lean::dec(x_3); x_7 = lean::box(0); } @@ -2238,11 +2238,11 @@ else { obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_20; x_9 = lean::cnstr_get(x_3, 0); -lean::inc(x_9); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_11 = x_3; } else { + lean::inc(x_9); lean::dec(x_3); x_11 = lean::box(0); } diff --git a/src/boot/init/lean/ir/parser.cpp b/src/boot/init/lean/ir/parser.cpp index cc86ee4b4b..7f49d172c0 100644 --- a/src/boot/init/lean/ir/parser.cpp +++ b/src/boot/init/lean/ir/parser.cpp @@ -459,12 +459,12 @@ else { obj* x_18; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; x_18 = lean::cnstr_get(x_9, 0); -lean::inc(x_18); x_20 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_21 = x_9; } else { + lean::inc(x_18); lean::dec(x_9); x_21 = lean::box(0); } @@ -549,15 +549,15 @@ if (lean::obj_tag(x_9) == 0) { obj* x_10; obj* x_12; obj* x_14; uint8 x_15; x_10 = lean::cnstr_get(x_9, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 2); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -594,11 +594,11 @@ else { obj* x_29; obj* x_31; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; obj* x_41; obj* x_42; x_29 = lean::cnstr_get(x_19, 0); -lean::inc(x_29); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_31 = x_19; } else { + lean::inc(x_29); lean::dec(x_19); x_31 = lean::box(0); } @@ -663,11 +663,11 @@ else { obj* x_58; obj* x_60; obj* x_61; obj* x_63; obj* x_65; obj* x_68; uint8 x_69; obj* x_70; obj* x_71; x_58 = lean::cnstr_get(x_48, 0); -lean::inc(x_58); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_60 = x_48; } else { + lean::inc(x_58); lean::dec(x_48); x_60 = lean::box(0); } @@ -727,11 +727,11 @@ else { obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_102; uint8 x_103; obj* x_104; obj* x_105; x_92 = lean::cnstr_get(x_82, 0); -lean::inc(x_92); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); + lean::cnstr_set(x_82, 0, lean::box(0)); x_94 = x_82; } else { + lean::inc(x_92); lean::dec(x_82); x_94 = lean::box(0); } @@ -765,11 +765,11 @@ else { obj* x_106; obj* x_108; obj* x_109; obj* x_111; obj* x_113; obj* x_116; uint8 x_117; obj* x_118; obj* x_119; x_106 = lean::cnstr_get(x_9, 0); -lean::inc(x_106); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_108 = x_9; } else { + lean::inc(x_106); lean::dec(x_9); x_108 = lean::box(0); } @@ -828,15 +828,15 @@ if (lean::obj_tag(x_17) == 0) { obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_18 = lean::cnstr_get(x_17, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_17, 2); -lean::inc(x_20); if (lean::is_exclusive(x_17)) { lean::cnstr_release(x_17, 0); - lean::cnstr_release(x_17, 1); - lean::cnstr_release(x_17, 2); + lean::cnstr_set(x_17, 1, lean::box(0)); + lean::cnstr_set(x_17, 2, lean::box(0)); x_22 = x_17; } else { + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_17); x_22 = lean::box(0); } @@ -886,12 +886,12 @@ else obj* x_40; uint8 x_42; obj* x_43; lean::dec(x_13); x_40 = lean::cnstr_get(x_17, 0); -lean::inc(x_40); x_42 = lean::cnstr_get_scalar(x_17, sizeof(void*)*1); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_43 = x_17; } else { + lean::inc(x_40); lean::dec(x_17); x_43 = lean::box(0); } @@ -1809,17 +1809,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; uint32 x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_19; obj* x_20; obj* x_21; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_6, 2); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -1862,12 +1862,12 @@ else { obj* x_28; uint8 x_30; obj* x_31; obj* x_33; obj* x_34; x_28 = lean::cnstr_get(x_6, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_31 = x_6; } else { + lean::inc(x_28); lean::dec(x_6); x_31 = lean::box(0); } @@ -1995,17 +1995,17 @@ if (lean::obj_tag(x_89) == 0) { obj* x_90; obj* x_92; obj* x_94; obj* x_96; uint32 x_97; obj* x_98; obj* x_99; obj* x_100; obj* x_102; obj* x_103; obj* x_105; obj* x_106; x_90 = lean::cnstr_get(x_89, 0); -lean::inc(x_90); x_92 = lean::cnstr_get(x_89, 1); -lean::inc(x_92); x_94 = lean::cnstr_get(x_89, 2); -lean::inc(x_94); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); - lean::cnstr_release(x_89, 1); - lean::cnstr_release(x_89, 2); + lean::cnstr_set(x_89, 0, lean::box(0)); + lean::cnstr_set(x_89, 1, lean::box(0)); + lean::cnstr_set(x_89, 2, lean::box(0)); x_96 = x_89; } else { + lean::inc(x_90); + lean::inc(x_92); + lean::inc(x_94); lean::dec(x_89); x_96 = lean::box(0); } @@ -2051,12 +2051,12 @@ else { obj* x_114; uint8 x_116; obj* x_117; obj* x_119; obj* x_120; x_114 = lean::cnstr_get(x_89, 0); -lean::inc(x_114); x_116 = lean::cnstr_get_scalar(x_89, sizeof(void*)*1); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); + lean::cnstr_set(x_89, 0, lean::box(0)); x_117 = x_89; } else { + lean::inc(x_114); lean::dec(x_89); x_117 = lean::box(0); } @@ -2189,17 +2189,17 @@ if (lean::obj_tag(x_170) == 0) { obj* x_171; obj* x_173; obj* x_175; obj* x_177; uint32 x_178; obj* x_179; obj* x_180; obj* x_181; obj* x_183; obj* x_184; obj* x_186; obj* x_187; obj* x_188; obj* x_189; obj* x_190; obj* x_191; x_171 = lean::cnstr_get(x_170, 0); -lean::inc(x_171); x_173 = lean::cnstr_get(x_170, 1); -lean::inc(x_173); x_175 = lean::cnstr_get(x_170, 2); -lean::inc(x_175); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); - lean::cnstr_release(x_170, 1); - lean::cnstr_release(x_170, 2); + lean::cnstr_set(x_170, 0, lean::box(0)); + lean::cnstr_set(x_170, 1, lean::box(0)); + lean::cnstr_set(x_170, 2, lean::box(0)); x_177 = x_170; } else { + lean::inc(x_171); + lean::inc(x_173); + lean::inc(x_175); lean::dec(x_170); x_177 = lean::box(0); } @@ -2230,12 +2230,12 @@ else { obj* x_192; uint8 x_194; obj* x_195; obj* x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; obj* x_201; x_192 = lean::cnstr_get(x_170, 0); -lean::inc(x_192); x_194 = lean::cnstr_get_scalar(x_170, sizeof(void*)*1); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); + lean::cnstr_set(x_170, 0, lean::box(0)); x_195 = x_170; } else { + lean::inc(x_192); lean::dec(x_170); x_195 = lean::box(0); } @@ -2279,17 +2279,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; uint32 x_16; uint32 x_17; uint8 x_18; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -2427,12 +2427,12 @@ lean::dec(x_47); lean::dec(x_39); lean::dec(x_9); x_100 = lean::cnstr_get(x_62, 0); -lean::inc(x_100); x_102 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_103 = x_62; } else { + lean::inc(x_100); lean::dec(x_62); x_103 = lean::box(0); } @@ -2460,12 +2460,12 @@ lean::dec(x_47); lean::dec(x_39); lean::dec(x_9); x_115 = lean::cnstr_get(x_54, 0); -lean::inc(x_115); x_117 = lean::cnstr_get_scalar(x_54, sizeof(void*)*1); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_118 = x_54; } else { + lean::inc(x_115); lean::dec(x_54); x_118 = lean::box(0); } @@ -2491,12 +2491,12 @@ obj* x_128; uint8 x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_ lean::dec(x_39); lean::dec(x_9); x_128 = lean::cnstr_get(x_46, 0); -lean::inc(x_128); x_130 = lean::cnstr_get_scalar(x_46, sizeof(void*)*1); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_131 = x_46; } else { + lean::inc(x_128); lean::dec(x_46); x_131 = lean::box(0); } @@ -2520,12 +2520,12 @@ else obj* x_139; uint8 x_141; obj* x_142; obj* x_143; obj* x_144; obj* x_145; obj* x_146; obj* x_147; lean::dec(x_9); x_139 = lean::cnstr_get(x_38, 0); -lean::inc(x_139); x_141 = lean::cnstr_get_scalar(x_38, sizeof(void*)*1); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_142 = x_38; } else { + lean::inc(x_139); lean::dec(x_38); x_142 = lean::box(0); } @@ -2573,17 +2573,17 @@ if (lean::obj_tag(x_157) == 0) { obj* x_158; obj* x_160; obj* x_162; obj* x_164; obj* x_165; x_158 = lean::cnstr_get(x_157, 0); -lean::inc(x_158); x_160 = lean::cnstr_get(x_157, 1); -lean::inc(x_160); x_162 = lean::cnstr_get(x_157, 2); -lean::inc(x_162); if (lean::is_exclusive(x_157)) { - lean::cnstr_release(x_157, 0); - lean::cnstr_release(x_157, 1); - lean::cnstr_release(x_157, 2); + lean::cnstr_set(x_157, 0, lean::box(0)); + lean::cnstr_set(x_157, 1, lean::box(0)); + lean::cnstr_set(x_157, 2, lean::box(0)); x_164 = x_157; } else { + lean::inc(x_158); + lean::inc(x_160); + lean::inc(x_162); lean::dec(x_157); x_164 = lean::box(0); } @@ -2627,12 +2627,12 @@ obj* x_189; uint8 x_191; obj* x_192; obj* x_193; obj* x_194; obj* x_195; obj* x_ lean::dec(x_158); lean::dec(x_164); x_189 = lean::cnstr_get(x_165, 0); -lean::inc(x_189); x_191 = lean::cnstr_get_scalar(x_165, sizeof(void*)*1); if (lean::is_exclusive(x_165)) { - lean::cnstr_release(x_165, 0); + lean::cnstr_set(x_165, 0, lean::box(0)); x_192 = x_165; } else { + lean::inc(x_189); lean::dec(x_165); x_192 = lean::box(0); } @@ -2655,12 +2655,12 @@ else { obj* x_199; uint8 x_201; obj* x_202; obj* x_203; obj* x_204; obj* x_205; obj* x_206; obj* x_207; x_199 = lean::cnstr_get(x_157, 0); -lean::inc(x_199); x_201 = lean::cnstr_get_scalar(x_157, sizeof(void*)*1); if (lean::is_exclusive(x_157)) { - lean::cnstr_release(x_157, 0); + lean::cnstr_set(x_157, 0, lean::box(0)); x_202 = x_157; } else { + lean::inc(x_199); lean::dec(x_157); x_202 = lean::box(0); } @@ -2775,12 +2775,12 @@ else obj* x_248; uint8 x_250; obj* x_251; obj* x_252; obj* x_253; obj* x_254; obj* x_255; lean::dec(x_0); x_248 = lean::cnstr_get(x_2, 0); -lean::inc(x_248); x_250 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_251 = x_2; } else { + lean::inc(x_248); lean::dec(x_2); x_251 = lean::box(0); } @@ -2812,17 +2812,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; uint32 x_16; uint32 x_17; uint8 x_18; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_5, 2); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -2891,12 +2891,12 @@ obj* x_45; uint8 x_47; obj* x_48; obj* x_49; obj* x_50; obj* x_51; lean::dec(x_1); lean::dec(x_14); x_45 = lean::cnstr_get(x_30, 0); -lean::inc(x_45); x_47 = lean::cnstr_get_scalar(x_30, sizeof(void*)*1); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_48 = x_30; } else { + lean::inc(x_45); lean::dec(x_30); x_48 = lean::box(0); } @@ -2919,12 +2919,12 @@ obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; lean::dec(x_1); lean::dec(x_0); x_54 = lean::cnstr_get(x_5, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_57 = x_5; } else { + lean::inc(x_54); lean::dec(x_5); x_57 = lean::box(0); } @@ -2949,15 +2949,15 @@ if (lean::obj_tag(x_62) == 0) { obj* x_63; obj* x_65; obj* x_67; obj* x_68; obj* x_69; obj* x_70; x_63 = lean::cnstr_get(x_62, 1); -lean::inc(x_63); x_65 = lean::cnstr_get(x_62, 2); -lean::inc(x_65); if (lean::is_exclusive(x_62)) { lean::cnstr_release(x_62, 0); - lean::cnstr_release(x_62, 1); - lean::cnstr_release(x_62, 2); + lean::cnstr_set(x_62, 1, lean::box(0)); + lean::cnstr_set(x_62, 2, lean::box(0)); x_67 = x_62; } else { + lean::inc(x_63); + lean::inc(x_65); lean::dec(x_62); x_67 = lean::box(0); } @@ -2978,12 +2978,12 @@ else obj* x_72; uint8 x_74; obj* x_75; obj* x_76; obj* x_77; lean::dec(x_1); x_72 = lean::cnstr_get(x_62, 0); -lean::inc(x_72); x_74 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_75 = x_62; } else { + lean::inc(x_72); lean::dec(x_62); x_75 = lean::box(0); } @@ -3026,12 +3026,12 @@ else { obj* x_14; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_14 = lean::cnstr_get(x_2, 0); -lean::inc(x_14); x_16 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_17 = x_2; } else { + lean::inc(x_14); lean::dec(x_2); x_17 = lean::box(0); } @@ -3274,12 +3274,12 @@ else { obj* x_18; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; x_18 = lean::cnstr_get(x_7, 0); -lean::inc(x_18); x_20 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_21 = x_7; } else { + lean::inc(x_18); lean::dec(x_7); x_21 = lean::box(0); } @@ -3331,12 +3331,12 @@ else { obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; x_46 = lean::cnstr_get(x_35, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_35, sizeof(void*)*1); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_49 = x_35; } else { + lean::inc(x_46); lean::dec(x_35); x_49 = lean::box(0); } @@ -3373,17 +3373,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -3404,12 +3404,12 @@ else { obj* x_13; uint8 x_15; obj* x_16; obj* x_17; obj* x_18; x_13 = lean::cnstr_get(x_1, 0); -lean::inc(x_13); x_15 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_16 = x_1; } else { + lean::inc(x_13); lean::dec(x_1); x_16 = lean::box(0); } @@ -3469,15 +3469,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; x_7 = lean::cnstr_get(x_6, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 2); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -3499,12 +3499,12 @@ else { obj* x_16; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; x_16 = lean::cnstr_get(x_6, 0); -lean::inc(x_16); x_18 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_19 = x_6; } else { + lean::inc(x_16); lean::dec(x_6); x_19 = lean::box(0); } @@ -3543,15 +3543,15 @@ if (lean::obj_tag(x_33) == 0) { obj* x_34; obj* x_36; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; x_34 = lean::cnstr_get(x_33, 1); -lean::inc(x_34); x_36 = lean::cnstr_get(x_33, 2); -lean::inc(x_36); if (lean::is_exclusive(x_33)) { lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); - lean::cnstr_release(x_33, 2); + lean::cnstr_set(x_33, 1, lean::box(0)); + lean::cnstr_set(x_33, 2, lean::box(0)); x_38 = x_33; } else { + lean::inc(x_34); + lean::inc(x_36); lean::dec(x_33); x_38 = lean::box(0); } @@ -3589,12 +3589,12 @@ else { obj* x_48; uint8 x_50; obj* x_51; obj* x_53; obj* x_54; x_48 = lean::cnstr_get(x_33, 0); -lean::inc(x_48); x_50 = lean::cnstr_get_scalar(x_33, sizeof(void*)*1); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_51 = x_33; } else { + lean::inc(x_48); lean::dec(x_33); x_51 = lean::box(0); } @@ -3632,17 +3632,17 @@ if (lean::obj_tag(x_63) == 0) { obj* x_64; obj* x_66; obj* x_68; obj* x_70; obj* x_71; x_64 = lean::cnstr_get(x_63, 0); -lean::inc(x_64); x_66 = lean::cnstr_get(x_63, 1); -lean::inc(x_66); x_68 = lean::cnstr_get(x_63, 2); -lean::inc(x_68); if (lean::is_exclusive(x_63)) { - lean::cnstr_release(x_63, 0); - lean::cnstr_release(x_63, 1); - lean::cnstr_release(x_63, 2); + lean::cnstr_set(x_63, 0, lean::box(0)); + lean::cnstr_set(x_63, 1, lean::box(0)); + lean::cnstr_set(x_63, 2, lean::box(0)); x_70 = x_63; } else { + lean::inc(x_64); + lean::inc(x_66); + lean::inc(x_68); lean::dec(x_63); x_70 = lean::box(0); } @@ -3651,15 +3651,15 @@ if (lean::obj_tag(x_71) == 0) { obj* x_72; obj* x_74; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_72 = lean::cnstr_get(x_71, 1); -lean::inc(x_72); x_74 = lean::cnstr_get(x_71, 2); -lean::inc(x_74); if (lean::is_exclusive(x_71)) { lean::cnstr_release(x_71, 0); - lean::cnstr_release(x_71, 1); - lean::cnstr_release(x_71, 2); + lean::cnstr_set(x_71, 1, lean::box(0)); + lean::cnstr_set(x_71, 2, lean::box(0)); x_76 = x_71; } else { + lean::inc(x_72); + lean::inc(x_74); lean::dec(x_71); x_76 = lean::box(0); } @@ -3723,12 +3723,12 @@ else obj* x_101; uint8 x_103; obj* x_104; obj* x_106; obj* x_107; lean::dec(x_76); x_101 = lean::cnstr_get(x_82, 0); -lean::inc(x_101); x_103 = lean::cnstr_get_scalar(x_82, sizeof(void*)*1); if (lean::is_exclusive(x_82)) { - lean::cnstr_release(x_82, 0); + lean::cnstr_set(x_82, 0, lean::box(0)); x_104 = x_82; } else { + lean::inc(x_101); lean::dec(x_82); x_104 = lean::box(0); } @@ -3752,12 +3752,12 @@ else obj* x_109; uint8 x_111; obj* x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; lean::dec(x_64); x_109 = lean::cnstr_get(x_71, 0); -lean::inc(x_109); x_111 = lean::cnstr_get_scalar(x_71, sizeof(void*)*1); if (lean::is_exclusive(x_71)) { - lean::cnstr_release(x_71, 0); + lean::cnstr_set(x_71, 0, lean::box(0)); x_112 = x_71; } else { + lean::inc(x_109); lean::dec(x_71); x_112 = lean::box(0); } @@ -3820,12 +3820,12 @@ else obj* x_137; uint8 x_139; obj* x_140; obj* x_142; obj* x_143; lean::dec(x_70); x_137 = lean::cnstr_get(x_117, 0); -lean::inc(x_137); x_139 = lean::cnstr_get_scalar(x_117, sizeof(void*)*1); if (lean::is_exclusive(x_117)) { - lean::cnstr_release(x_117, 0); + lean::cnstr_set(x_117, 0, lean::box(0)); x_140 = x_117; } else { + lean::inc(x_137); lean::dec(x_117); x_140 = lean::box(0); } @@ -3849,12 +3849,12 @@ else { obj* x_144; uint8 x_146; obj* x_147; obj* x_148; obj* x_149; obj* x_150; obj* x_151; x_144 = lean::cnstr_get(x_63, 0); -lean::inc(x_144); x_146 = lean::cnstr_get_scalar(x_63, sizeof(void*)*1); if (lean::is_exclusive(x_63)) { - lean::cnstr_release(x_63, 0); + lean::cnstr_set(x_63, 0, lean::box(0)); x_147 = x_63; } else { + lean::inc(x_144); lean::dec(x_63); x_147 = lean::box(0); } @@ -3872,17 +3872,17 @@ if (lean::obj_tag(x_151) == 0) { obj* x_152; obj* x_154; obj* x_156; obj* x_158; obj* x_159; obj* x_160; obj* x_161; obj* x_162; obj* x_163; x_152 = lean::cnstr_get(x_151, 0); -lean::inc(x_152); x_154 = lean::cnstr_get(x_151, 1); -lean::inc(x_154); x_156 = lean::cnstr_get(x_151, 2); -lean::inc(x_156); if (lean::is_exclusive(x_151)) { - lean::cnstr_release(x_151, 0); - lean::cnstr_release(x_151, 1); - lean::cnstr_release(x_151, 2); + lean::cnstr_set(x_151, 0, lean::box(0)); + lean::cnstr_set(x_151, 1, lean::box(0)); + lean::cnstr_set(x_151, 2, lean::box(0)); x_158 = x_151; } else { + lean::inc(x_152); + lean::inc(x_154); + lean::inc(x_156); lean::dec(x_151); x_158 = lean::box(0); } @@ -3923,12 +3923,12 @@ else { obj* x_170; uint8 x_172; obj* x_173; obj* x_175; obj* x_176; x_170 = lean::cnstr_get(x_151, 0); -lean::inc(x_170); x_172 = lean::cnstr_get_scalar(x_151, sizeof(void*)*1); if (lean::is_exclusive(x_151)) { - lean::cnstr_release(x_151, 0); + lean::cnstr_set(x_151, 0, lean::box(0)); x_173 = x_151; } else { + lean::inc(x_170); lean::dec(x_151); x_173 = lean::box(0); } @@ -3969,15 +3969,15 @@ if (lean::obj_tag(x_189) == 0) { obj* x_190; obj* x_192; obj* x_194; obj* x_195; x_190 = lean::cnstr_get(x_189, 1); -lean::inc(x_190); x_192 = lean::cnstr_get(x_189, 2); -lean::inc(x_192); if (lean::is_exclusive(x_189)) { lean::cnstr_release(x_189, 0); - lean::cnstr_release(x_189, 1); - lean::cnstr_release(x_189, 2); + lean::cnstr_set(x_189, 1, lean::box(0)); + lean::cnstr_set(x_189, 2, lean::box(0)); x_194 = x_189; } else { + lean::inc(x_190); + lean::inc(x_192); lean::dec(x_189); x_194 = lean::box(0); } @@ -4046,12 +4046,12 @@ obj* x_227; uint8 x_229; obj* x_230; obj* x_231; obj* x_232; obj* x_233; obj* x_ lean::dec(x_196); lean::dec(x_194); x_227 = lean::cnstr_get(x_203, 0); -lean::inc(x_227); x_229 = lean::cnstr_get_scalar(x_203, sizeof(void*)*1); if (lean::is_exclusive(x_203)) { - lean::cnstr_release(x_203, 0); + lean::cnstr_set(x_203, 0, lean::box(0)); x_230 = x_203; } else { + lean::inc(x_227); lean::dec(x_203); x_230 = lean::box(0); } @@ -4098,12 +4098,12 @@ else obj* x_247; uint8 x_249; obj* x_250; obj* x_251; obj* x_252; obj* x_253; lean::dec(x_194); x_247 = lean::cnstr_get(x_195, 0); -lean::inc(x_247); x_249 = lean::cnstr_get_scalar(x_195, sizeof(void*)*1); if (lean::is_exclusive(x_195)) { - lean::cnstr_release(x_195, 0); + lean::cnstr_set(x_195, 0, lean::box(0)); x_250 = x_195; } else { + lean::inc(x_247); lean::dec(x_195); x_250 = lean::box(0); } @@ -4203,17 +4203,17 @@ if (lean::obj_tag(x_288) == 0) { obj* x_289; obj* x_291; obj* x_293; obj* x_295; obj* x_296; obj* x_297; obj* x_298; obj* x_299; obj* x_300; obj* x_301; obj* x_302; x_289 = lean::cnstr_get(x_288, 0); -lean::inc(x_289); x_291 = lean::cnstr_get(x_288, 1); -lean::inc(x_291); x_293 = lean::cnstr_get(x_288, 2); -lean::inc(x_293); if (lean::is_exclusive(x_288)) { - lean::cnstr_release(x_288, 0); - lean::cnstr_release(x_288, 1); - lean::cnstr_release(x_288, 2); + lean::cnstr_set(x_288, 0, lean::box(0)); + lean::cnstr_set(x_288, 1, lean::box(0)); + lean::cnstr_set(x_288, 2, lean::box(0)); x_295 = x_288; } else { + lean::inc(x_289); + lean::inc(x_291); + lean::inc(x_293); lean::dec(x_288); x_295 = lean::box(0); } @@ -4238,12 +4238,12 @@ else { obj* x_303; uint8 x_305; obj* x_306; obj* x_307; obj* x_308; obj* x_309; obj* x_310; obj* x_311; obj* x_312; x_303 = lean::cnstr_get(x_288, 0); -lean::inc(x_303); x_305 = lean::cnstr_get_scalar(x_288, sizeof(void*)*1); if (lean::is_exclusive(x_288)) { - lean::cnstr_release(x_288, 0); + lean::cnstr_set(x_288, 0, lean::box(0)); x_306 = x_288; } else { + lean::inc(x_303); lean::dec(x_288); x_306 = lean::box(0); } @@ -4284,17 +4284,17 @@ if (lean::obj_tag(x_318) == 0) { obj* x_319; obj* x_321; obj* x_323; obj* x_325; obj* x_326; obj* x_327; obj* x_328; obj* x_329; obj* x_330; obj* x_331; obj* x_332; obj* x_333; x_319 = lean::cnstr_get(x_318, 0); -lean::inc(x_319); x_321 = lean::cnstr_get(x_318, 1); -lean::inc(x_321); x_323 = lean::cnstr_get(x_318, 2); -lean::inc(x_323); if (lean::is_exclusive(x_318)) { - lean::cnstr_release(x_318, 0); - lean::cnstr_release(x_318, 1); - lean::cnstr_release(x_318, 2); + lean::cnstr_set(x_318, 0, lean::box(0)); + lean::cnstr_set(x_318, 1, lean::box(0)); + lean::cnstr_set(x_318, 2, lean::box(0)); x_325 = x_318; } else { + lean::inc(x_319); + lean::inc(x_321); + lean::inc(x_323); lean::dec(x_318); x_325 = lean::box(0); } @@ -4320,12 +4320,12 @@ else { obj* x_334; uint8 x_336; obj* x_337; obj* x_338; obj* x_339; obj* x_340; obj* x_341; obj* x_342; obj* x_343; x_334 = lean::cnstr_get(x_318, 0); -lean::inc(x_334); x_336 = lean::cnstr_get_scalar(x_318, sizeof(void*)*1); if (lean::is_exclusive(x_318)) { - lean::cnstr_release(x_318, 0); + lean::cnstr_set(x_318, 0, lean::box(0)); x_337 = x_318; } else { + lean::inc(x_334); lean::dec(x_318); x_337 = lean::box(0); } @@ -4419,17 +4419,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_6, 2); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -4473,12 +4473,12 @@ else obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; lean::dec(x_0); x_32 = lean::cnstr_get(x_23, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_23, sizeof(void*)*1); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_32); lean::dec(x_23); x_35 = lean::box(0); } @@ -4503,12 +4503,12 @@ obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; obj* x_50; lean::dec(x_13); lean::dec(x_7); x_44 = lean::cnstr_get(x_14, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_47 = x_14; } else { + lean::inc(x_44); lean::dec(x_14); x_47 = lean::box(0); } @@ -4541,12 +4541,12 @@ else obj* x_59; uint8 x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; obj* x_69; lean::dec(x_0); x_59 = lean::cnstr_get(x_50, 0); -lean::inc(x_59); x_61 = lean::cnstr_get_scalar(x_50, sizeof(void*)*1); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_62 = x_50; } else { + lean::inc(x_59); lean::dec(x_50); x_62 = lean::box(0); } @@ -4572,12 +4572,12 @@ else obj* x_71; uint8 x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; lean::dec(x_0); x_71 = lean::cnstr_get(x_6, 0); -lean::inc(x_71); x_73 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_74 = x_6; } else { + lean::inc(x_71); lean::dec(x_6); x_74 = lean::box(0); } @@ -4630,15 +4630,15 @@ if (lean::obj_tag(x_97) == 0) { obj* x_98; obj* x_100; obj* x_102; uint16 x_103; obj* x_105; obj* x_106; obj* x_107; obj* x_108; obj* x_109; obj* x_110; obj* x_111; obj* x_112; obj* x_113; x_98 = lean::cnstr_get(x_97, 1); -lean::inc(x_98); x_100 = lean::cnstr_get(x_97, 2); -lean::inc(x_100); if (lean::is_exclusive(x_97)) { lean::cnstr_release(x_97, 0); - lean::cnstr_release(x_97, 1); - lean::cnstr_release(x_97, 2); + lean::cnstr_set(x_97, 1, lean::box(0)); + lean::cnstr_set(x_97, 2, lean::box(0)); x_102 = x_97; } else { + lean::inc(x_98); + lean::inc(x_100); lean::dec(x_97); x_102 = lean::box(0); } @@ -4667,12 +4667,12 @@ else obj* x_115; uint8 x_117; obj* x_118; obj* x_119; obj* x_120; obj* x_121; obj* x_122; obj* x_123; obj* x_124; obj* x_125; obj* x_126; lean::dec(x_1); x_115 = lean::cnstr_get(x_97, 0); -lean::inc(x_115); x_117 = lean::cnstr_get_scalar(x_97, sizeof(void*)*1); if (lean::is_exclusive(x_97)) { - lean::cnstr_release(x_97, 0); + lean::cnstr_set(x_97, 0, lean::box(0)); x_118 = x_97; } else { + lean::inc(x_115); lean::dec(x_97); x_118 = lean::box(0); } @@ -4724,17 +4724,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_6, 2); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -4778,12 +4778,12 @@ else obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; lean::dec(x_0); x_32 = lean::cnstr_get(x_23, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_23, sizeof(void*)*1); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_35 = x_23; } else { + lean::inc(x_32); lean::dec(x_23); x_35 = lean::box(0); } @@ -4808,12 +4808,12 @@ obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; obj* x_50; lean::dec(x_13); lean::dec(x_7); x_44 = lean::cnstr_get(x_14, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_47 = x_14; } else { + lean::inc(x_44); lean::dec(x_14); x_47 = lean::box(0); } @@ -4846,12 +4846,12 @@ else obj* x_59; uint8 x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; obj* x_69; lean::dec(x_0); x_59 = lean::cnstr_get(x_50, 0); -lean::inc(x_59); x_61 = lean::cnstr_get_scalar(x_50, sizeof(void*)*1); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_62 = x_50; } else { + lean::inc(x_59); lean::dec(x_50); x_62 = lean::box(0); } @@ -4877,12 +4877,12 @@ else obj* x_71; uint8 x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; lean::dec(x_0); x_71 = lean::cnstr_get(x_6, 0); -lean::inc(x_71); x_73 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_74 = x_6; } else { + lean::inc(x_71); lean::dec(x_6); x_74 = lean::box(0); } @@ -4935,15 +4935,15 @@ if (lean::obj_tag(x_97) == 0) { obj* x_98; obj* x_100; obj* x_102; usize x_103; obj* x_105; obj* x_106; obj* x_107; obj* x_108; obj* x_109; obj* x_110; obj* x_111; obj* x_112; obj* x_113; x_98 = lean::cnstr_get(x_97, 1); -lean::inc(x_98); x_100 = lean::cnstr_get(x_97, 2); -lean::inc(x_100); if (lean::is_exclusive(x_97)) { lean::cnstr_release(x_97, 0); - lean::cnstr_release(x_97, 1); - lean::cnstr_release(x_97, 2); + lean::cnstr_set(x_97, 1, lean::box(0)); + lean::cnstr_set(x_97, 2, lean::box(0)); x_102 = x_97; } else { + lean::inc(x_98); + lean::inc(x_100); lean::dec(x_97); x_102 = lean::box(0); } @@ -4972,12 +4972,12 @@ else obj* x_115; uint8 x_117; obj* x_118; obj* x_119; obj* x_120; obj* x_121; obj* x_122; obj* x_123; obj* x_124; obj* x_125; obj* x_126; lean::dec(x_1); x_115 = lean::cnstr_get(x_97, 0); -lean::inc(x_115); x_117 = lean::cnstr_get_scalar(x_97, sizeof(void*)*1); if (lean::is_exclusive(x_97)) { - lean::cnstr_release(x_97, 0); + lean::cnstr_set(x_97, 0, lean::box(0)); x_118 = x_97; } else { + lean::inc(x_115); lean::dec(x_97); x_118 = lean::box(0); } @@ -5242,12 +5242,12 @@ else { obj* x_18; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; x_18 = lean::cnstr_get(x_7, 0); -lean::inc(x_18); x_20 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_21 = x_7; } else { + lean::inc(x_18); lean::dec(x_7); x_21 = lean::box(0); } @@ -5299,12 +5299,12 @@ else { obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; x_46 = lean::cnstr_get(x_35, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_35, sizeof(void*)*1); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_49 = x_35; } else { + lean::inc(x_46); lean::dec(x_35); x_49 = lean::box(0); } @@ -5559,12 +5559,12 @@ else { obj* x_18; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; x_18 = lean::cnstr_get(x_7, 0); -lean::inc(x_18); x_20 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_21 = x_7; } else { + lean::inc(x_18); lean::dec(x_7); x_21 = lean::box(0); } @@ -5626,12 +5626,12 @@ else { obj* x_51; uint8 x_53; obj* x_54; obj* x_55; obj* x_56; x_51 = lean::cnstr_get(x_40, 0); -lean::inc(x_51); x_53 = lean::cnstr_get_scalar(x_40, sizeof(void*)*1); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_54 = x_40; } else { + lean::inc(x_51); lean::dec(x_40); x_54 = lean::box(0); } @@ -5659,15 +5659,15 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 2); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -5712,12 +5712,12 @@ obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_7); lean::dec(x_10); x_30 = lean::cnstr_get(x_18, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_33 = x_18; } else { + lean::inc(x_30); lean::dec(x_18); x_33 = lean::box(0); } @@ -5738,12 +5738,12 @@ else obj* x_38; uint8 x_40; obj* x_41; obj* x_42; obj* x_43; lean::dec(x_7); x_38 = lean::cnstr_get(x_9, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_41 = x_9; } else { + lean::inc(x_38); lean::dec(x_9); x_41 = lean::box(0); } @@ -5762,12 +5762,12 @@ else { obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; x_44 = lean::cnstr_get(x_2, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_47 = x_2; } else { + lean::inc(x_44); lean::dec(x_2); x_47 = lean::box(0); } @@ -5792,17 +5792,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; uint32 x_9; uint8 x_10; obj* x_11; obj* x_12; obj* x_13; obj* x_14; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -5849,12 +5849,12 @@ else { obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; x_27 = lean::cnstr_get(x_14, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_30 = x_14; } else { + lean::inc(x_27); lean::dec(x_14); x_30 = lean::box(0); } @@ -5873,12 +5873,12 @@ else { obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; x_33 = lean::cnstr_get(x_1, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_36 = x_1; } else { + lean::inc(x_33); lean::dec(x_1); x_36 = lean::box(0); } @@ -5910,15 +5910,15 @@ if (lean::obj_tag(x_7) == 0) { obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_8 = lean::cnstr_get(x_7, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 2); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -5992,12 +5992,12 @@ else obj* x_48; uint8 x_50; obj* x_51; lean::dec(x_1); x_48 = lean::cnstr_get(x_14, 0); -lean::inc(x_48); x_50 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_51 = x_14; } else { + lean::inc(x_48); lean::dec(x_14); x_51 = lean::box(0); } @@ -6047,12 +6047,12 @@ else obj* x_66; uint8 x_68; obj* x_69; lean::dec(x_1); x_66 = lean::cnstr_get(x_7, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_69 = x_7; } else { + lean::inc(x_66); lean::dec(x_7); x_69 = lean::box(0); } @@ -6154,11 +6154,11 @@ else { obj* x_14; obj* x_16; obj* x_17; obj* x_19; obj* x_21; obj* x_24; obj* x_25; uint8 x_26; obj* x_27; obj* x_28; x_14 = lean::cnstr_get(x_1, 0); -lean::inc(x_14); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_16 = x_1; } else { + lean::inc(x_14); lean::dec(x_1); x_16 = lean::box(0); } @@ -6206,17 +6206,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; uint8 x_11; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -6279,12 +6279,12 @@ obj* x_38; uint8 x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; ob lean::dec(x_9); lean::dec(x_3); x_38 = lean::cnstr_get(x_22, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_41 = x_22; } else { + lean::inc(x_38); lean::dec(x_22); x_41 = lean::box(0); } @@ -6311,12 +6311,12 @@ else obj* x_51; uint8 x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_0); x_51 = lean::cnstr_get(x_2, 0); -lean::inc(x_51); x_53 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_54 = x_2; } else { + lean::inc(x_51); lean::dec(x_2); x_54 = lean::box(0); } @@ -6392,17 +6392,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -6436,12 +6436,12 @@ obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; ob lean::dec(x_8); lean::dec(x_2); x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -6463,12 +6463,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; x_32 = lean::cnstr_get(x_1, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_35 = x_1; } else { + lean::inc(x_32); lean::dec(x_1); x_35 = lean::box(0); } @@ -6505,17 +6505,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -6549,12 +6549,12 @@ obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; ob lean::dec(x_8); lean::dec(x_2); x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -6576,12 +6576,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; x_32 = lean::cnstr_get(x_1, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_35 = x_1; } else { + lean::inc(x_32); lean::dec(x_1); x_35 = lean::box(0); } @@ -6618,17 +6618,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -6662,12 +6662,12 @@ obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; ob lean::dec(x_8); lean::dec(x_2); x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -6689,12 +6689,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; x_32 = lean::cnstr_get(x_1, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_35 = x_1; } else { + lean::inc(x_32); lean::dec(x_1); x_35 = lean::box(0); } @@ -6813,15 +6813,15 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; x_4 = lean::cnstr_get(x_3, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 2); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -6832,17 +6832,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_11, 2); -lean::inc(x_16); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_18 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_11); x_18 = lean::box(0); } @@ -6852,15 +6852,15 @@ if (lean::obj_tag(x_20) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_28; obj* x_29; obj* x_30; obj* x_32; obj* x_34; x_21 = lean::cnstr_get(x_20, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_20, 2); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -6871,15 +6871,15 @@ if (lean::obj_tag(x_34) == 0) { obj* x_35; obj* x_37; obj* x_39; obj* x_40; x_35 = lean::cnstr_get(x_34, 1); -lean::inc(x_35); x_37 = lean::cnstr_get(x_34, 2); -lean::inc(x_37); if (lean::is_exclusive(x_34)) { lean::cnstr_release(x_34, 0); - lean::cnstr_release(x_34, 1); - lean::cnstr_release(x_34, 2); + lean::cnstr_set(x_34, 1, lean::box(0)); + lean::cnstr_set(x_34, 2, lean::box(0)); x_39 = x_34; } else { + lean::inc(x_35); + lean::inc(x_37); lean::dec(x_34); x_39 = lean::box(0); } @@ -6930,12 +6930,12 @@ else { obj* x_62; uint8 x_64; obj* x_65; obj* x_66; obj* x_67; x_62 = lean::cnstr_get(x_54, 0); -lean::inc(x_62); x_64 = lean::cnstr_get_scalar(x_54, sizeof(void*)*1); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_65 = x_54; } else { + lean::inc(x_62); lean::dec(x_54); x_65 = lean::box(0); } @@ -6956,12 +6956,12 @@ else obj* x_69; uint8 x_71; obj* x_72; obj* x_73; obj* x_74; obj* x_75; lean::dec(x_39); x_69 = lean::cnstr_get(x_40, 0); -lean::inc(x_69); x_71 = lean::cnstr_get_scalar(x_40, sizeof(void*)*1); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_72 = x_40; } else { + lean::inc(x_69); lean::dec(x_40); x_72 = lean::box(0); } @@ -6993,12 +6993,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_75, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_75, sizeof(void*)*1); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); + lean::cnstr_set(x_75, 0, lean::box(0)); x_86 = x_75; } else { + lean::inc(x_83); lean::dec(x_75); x_86 = lean::box(0); } @@ -7019,12 +7019,12 @@ else { obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; x_89 = lean::cnstr_get(x_34, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_34, sizeof(void*)*1); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_92 = x_34; } else { + lean::inc(x_89); lean::dec(x_34); x_92 = lean::box(0); } @@ -7071,17 +7071,17 @@ if (lean::obj_tag(x_113) == 0) { obj* x_114; obj* x_116; obj* x_118; obj* x_120; obj* x_122; uint8 x_123; obj* x_124; obj* x_125; obj* x_126; obj* x_127; x_114 = lean::cnstr_get(x_113, 0); -lean::inc(x_114); x_116 = lean::cnstr_get(x_113, 1); -lean::inc(x_116); x_118 = lean::cnstr_get(x_113, 2); -lean::inc(x_118); if (lean::is_exclusive(x_113)) { - lean::cnstr_release(x_113, 0); - lean::cnstr_release(x_113, 1); - lean::cnstr_release(x_113, 2); + lean::cnstr_set(x_113, 0, lean::box(0)); + lean::cnstr_set(x_113, 1, lean::box(0)); + lean::cnstr_set(x_113, 2, lean::box(0)); x_120 = x_113; } else { + lean::inc(x_114); + lean::inc(x_116); + lean::inc(x_118); lean::dec(x_113); x_120 = lean::box(0); } @@ -7132,12 +7132,12 @@ else { obj* x_140; uint8 x_142; obj* x_143; obj* x_145; obj* x_146; x_140 = lean::cnstr_get(x_113, 0); -lean::inc(x_140); x_142 = lean::cnstr_get_scalar(x_113, sizeof(void*)*1); if (lean::is_exclusive(x_113)) { - lean::cnstr_release(x_113, 0); + lean::cnstr_set(x_113, 0, lean::box(0)); x_143 = x_113; } else { + lean::inc(x_140); lean::dec(x_113); x_143 = lean::box(0); } @@ -7186,17 +7186,17 @@ if (lean::obj_tag(x_165) == 0) { obj* x_166; obj* x_168; obj* x_170; obj* x_172; obj* x_175; obj* x_176; obj* x_177; obj* x_178; x_166 = lean::cnstr_get(x_165, 0); -lean::inc(x_166); x_168 = lean::cnstr_get(x_165, 1); -lean::inc(x_168); x_170 = lean::cnstr_get(x_165, 2); -lean::inc(x_170); if (lean::is_exclusive(x_165)) { - lean::cnstr_release(x_165, 0); - lean::cnstr_release(x_165, 1); - lean::cnstr_release(x_165, 2); + lean::cnstr_set(x_165, 0, lean::box(0)); + lean::cnstr_set(x_165, 1, lean::box(0)); + lean::cnstr_set(x_165, 2, lean::box(0)); x_172 = x_165; } else { + lean::inc(x_166); + lean::inc(x_168); + lean::inc(x_170); lean::dec(x_165); x_172 = lean::box(0); } @@ -7220,17 +7220,17 @@ if (lean::obj_tag(x_178) == 0) { obj* x_179; obj* x_181; obj* x_183; obj* x_185; obj* x_186; x_179 = lean::cnstr_get(x_178, 0); -lean::inc(x_179); x_181 = lean::cnstr_get(x_178, 1); -lean::inc(x_181); x_183 = lean::cnstr_get(x_178, 2); -lean::inc(x_183); if (lean::is_exclusive(x_178)) { - lean::cnstr_release(x_178, 0); - lean::cnstr_release(x_178, 1); - lean::cnstr_release(x_178, 2); + lean::cnstr_set(x_178, 0, lean::box(0)); + lean::cnstr_set(x_178, 1, lean::box(0)); + lean::cnstr_set(x_178, 2, lean::box(0)); x_185 = x_178; } else { + lean::inc(x_179); + lean::inc(x_181); + lean::inc(x_183); lean::dec(x_178); x_185 = lean::box(0); } @@ -7290,12 +7290,12 @@ obj* x_214; uint8 x_216; obj* x_217; obj* x_218; obj* x_219; obj* x_220; lean::dec(x_179); lean::dec(x_185); x_214 = lean::cnstr_get(x_186, 0); -lean::inc(x_214); x_216 = lean::cnstr_get_scalar(x_186, sizeof(void*)*1); if (lean::is_exclusive(x_186)) { - lean::cnstr_release(x_186, 0); + lean::cnstr_set(x_186, 0, lean::box(0)); x_217 = x_186; } else { + lean::inc(x_214); lean::dec(x_186); x_217 = lean::box(0); } @@ -7341,12 +7341,12 @@ else { obj* x_235; uint8 x_237; obj* x_238; obj* x_240; obj* x_241; x_235 = lean::cnstr_get(x_178, 0); -lean::inc(x_235); x_237 = lean::cnstr_get_scalar(x_178, sizeof(void*)*1); if (lean::is_exclusive(x_178)) { - lean::cnstr_release(x_178, 0); + lean::cnstr_set(x_178, 0, lean::box(0)); x_238 = x_178; } else { + lean::inc(x_235); lean::dec(x_178); x_238 = lean::box(0); } @@ -7369,12 +7369,12 @@ else { obj* x_242; uint8 x_244; obj* x_245; obj* x_247; obj* x_248; x_242 = lean::cnstr_get(x_165, 0); -lean::inc(x_242); x_244 = lean::cnstr_get_scalar(x_165, sizeof(void*)*1); if (lean::is_exclusive(x_165)) { - lean::cnstr_release(x_165, 0); + lean::cnstr_set(x_165, 0, lean::box(0)); x_245 = x_165; } else { + lean::inc(x_242); lean::dec(x_165); x_245 = lean::box(0); } @@ -7424,17 +7424,17 @@ if (lean::obj_tag(x_272) == 0) { obj* x_273; obj* x_275; obj* x_277; obj* x_279; obj* x_282; obj* x_283; obj* x_284; obj* x_285; x_273 = lean::cnstr_get(x_272, 0); -lean::inc(x_273); x_275 = lean::cnstr_get(x_272, 1); -lean::inc(x_275); x_277 = lean::cnstr_get(x_272, 2); -lean::inc(x_277); if (lean::is_exclusive(x_272)) { - lean::cnstr_release(x_272, 0); - lean::cnstr_release(x_272, 1); - lean::cnstr_release(x_272, 2); + lean::cnstr_set(x_272, 0, lean::box(0)); + lean::cnstr_set(x_272, 1, lean::box(0)); + lean::cnstr_set(x_272, 2, lean::box(0)); x_279 = x_272; } else { + lean::inc(x_273); + lean::inc(x_275); + lean::inc(x_277); lean::dec(x_272); x_279 = lean::box(0); } @@ -7506,12 +7506,12 @@ else obj* x_313; uint8 x_315; obj* x_316; obj* x_318; obj* x_319; lean::dec(x_18); x_313 = lean::cnstr_get(x_304, 0); -lean::inc(x_313); x_315 = lean::cnstr_get_scalar(x_304, sizeof(void*)*1); if (lean::is_exclusive(x_304)) { - lean::cnstr_release(x_304, 0); + lean::cnstr_set(x_304, 0, lean::box(0)); x_316 = x_304; } else { + lean::inc(x_313); lean::dec(x_304); x_316 = lean::box(0); } @@ -7536,12 +7536,12 @@ obj* x_322; uint8 x_324; obj* x_325; obj* x_326; obj* x_327; obj* x_328; lean::dec(x_279); lean::dec(x_286); x_322 = lean::cnstr_get(x_293, 0); -lean::inc(x_322); x_324 = lean::cnstr_get_scalar(x_293, sizeof(void*)*1); if (lean::is_exclusive(x_293)) { - lean::cnstr_release(x_293, 0); + lean::cnstr_set(x_293, 0, lean::box(0)); x_325 = x_293; } else { + lean::inc(x_322); lean::dec(x_293); x_325 = lean::box(0); } @@ -7574,12 +7574,12 @@ else obj* x_337; uint8 x_339; obj* x_340; obj* x_342; obj* x_343; lean::dec(x_18); x_337 = lean::cnstr_get(x_328, 0); -lean::inc(x_337); x_339 = lean::cnstr_get_scalar(x_328, sizeof(void*)*1); if (lean::is_exclusive(x_328)) { - lean::cnstr_release(x_328, 0); + lean::cnstr_set(x_328, 0, lean::box(0)); x_340 = x_328; } else { + lean::inc(x_337); lean::dec(x_328); x_340 = lean::box(0); } @@ -7605,12 +7605,12 @@ obj* x_346; uint8 x_348; obj* x_349; obj* x_351; obj* x_352; lean::dec(x_18); lean::dec(x_279); x_346 = lean::cnstr_get(x_285, 0); -lean::inc(x_346); x_348 = lean::cnstr_get_scalar(x_285, sizeof(void*)*1); if (lean::is_exclusive(x_285)) { - lean::cnstr_release(x_285, 0); + lean::cnstr_set(x_285, 0, lean::box(0)); x_349 = x_285; } else { + lean::inc(x_346); lean::dec(x_285); x_349 = lean::box(0); } @@ -7635,12 +7635,12 @@ obj* x_355; uint8 x_357; obj* x_358; obj* x_360; obj* x_361; lean::dec(x_18); lean::dec(x_25); x_355 = lean::cnstr_get(x_272, 0); -lean::inc(x_355); x_357 = lean::cnstr_get_scalar(x_272, sizeof(void*)*1); if (lean::is_exclusive(x_272)) { - lean::cnstr_release(x_272, 0); + lean::cnstr_set(x_272, 0, lean::box(0)); x_358 = x_272; } else { + lean::inc(x_355); lean::dec(x_272); x_358 = lean::box(0); } @@ -7725,12 +7725,12 @@ lean::dec(x_8); lean::dec(x_12); lean::dec(x_0); x_399 = lean::cnstr_get(x_375, 0); -lean::inc(x_399); x_401 = lean::cnstr_get_scalar(x_375, sizeof(void*)*1); if (lean::is_exclusive(x_375)) { - lean::cnstr_release(x_375, 0); + lean::cnstr_set(x_375, 0, lean::box(0)); x_402 = x_375; } else { + lean::inc(x_399); lean::dec(x_375); x_402 = lean::box(0); } @@ -7828,12 +7828,12 @@ obj* x_451; uint8 x_453; obj* x_454; obj* x_455; obj* x_456; obj* x_457; lean::dec(x_264); lean::dec(x_18); x_451 = lean::cnstr_get(x_423, 0); -lean::inc(x_451); x_453 = lean::cnstr_get_scalar(x_423, sizeof(void*)*1); if (lean::is_exclusive(x_423)) { - lean::cnstr_release(x_423, 0); + lean::cnstr_set(x_423, 0, lean::box(0)); x_454 = x_423; } else { + lean::inc(x_451); lean::dec(x_423); x_454 = lean::box(0); } @@ -7886,17 +7886,17 @@ if (lean::obj_tag(x_471) == 0) { obj* x_472; obj* x_474; obj* x_476; obj* x_478; obj* x_479; obj* x_480; obj* x_481; obj* x_482; obj* x_483; x_472 = lean::cnstr_get(x_471, 0); -lean::inc(x_472); x_474 = lean::cnstr_get(x_471, 1); -lean::inc(x_474); x_476 = lean::cnstr_get(x_471, 2); -lean::inc(x_476); if (lean::is_exclusive(x_471)) { - lean::cnstr_release(x_471, 0); - lean::cnstr_release(x_471, 1); - lean::cnstr_release(x_471, 2); + lean::cnstr_set(x_471, 0, lean::box(0)); + lean::cnstr_set(x_471, 1, lean::box(0)); + lean::cnstr_set(x_471, 2, lean::box(0)); x_478 = x_471; } else { + lean::inc(x_472); + lean::inc(x_474); + lean::inc(x_476); lean::dec(x_471); x_478 = lean::box(0); } @@ -7920,12 +7920,12 @@ else obj* x_485; uint8 x_487; obj* x_488; obj* x_489; obj* x_490; obj* x_491; lean::dec(x_28); x_485 = lean::cnstr_get(x_471, 0); -lean::inc(x_485); x_487 = lean::cnstr_get_scalar(x_471, sizeof(void*)*1); if (lean::is_exclusive(x_471)) { - lean::cnstr_release(x_471, 0); + lean::cnstr_set(x_471, 0, lean::box(0)); x_488 = x_471; } else { + lean::inc(x_485); lean::dec(x_471); x_488 = lean::box(0); } @@ -7951,12 +7951,12 @@ lean::dec(x_12); lean::dec(x_0); lean::dec(x_18); x_496 = lean::cnstr_get(x_20, 0); -lean::inc(x_496); x_498 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_499 = x_20; } else { + lean::inc(x_496); lean::dec(x_20); x_499 = lean::box(0); } @@ -7979,12 +7979,12 @@ obj* x_506; uint8 x_508; obj* x_509; obj* x_510; obj* x_511; obj* x_512; lean::dec(x_8); lean::dec(x_0); x_506 = lean::cnstr_get(x_11, 0); -lean::inc(x_506); x_508 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_509 = x_11; } else { + lean::inc(x_506); lean::dec(x_11); x_509 = lean::box(0); } @@ -8005,12 +8005,12 @@ else obj* x_514; uint8 x_516; obj* x_517; obj* x_518; obj* x_519; lean::dec(x_0); x_514 = lean::cnstr_get(x_3, 0); -lean::inc(x_514); x_516 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_517 = x_3; } else { + lean::inc(x_514); lean::dec(x_3); x_517 = lean::box(0); } @@ -8070,17 +8070,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -8176,12 +8176,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -8203,12 +8203,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -8232,17 +8232,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -8266,12 +8266,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -8359,17 +8359,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -8465,12 +8465,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -8492,12 +8492,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -8521,17 +8521,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -8555,12 +8555,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -8602,17 +8602,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -8708,12 +8708,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -8735,12 +8735,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -8764,17 +8764,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -8798,12 +8798,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -9016,15 +9016,15 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_15; obj* x_17; x_4 = lean::cnstr_get(x_3, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 2); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -9035,15 +9035,15 @@ if (lean::obj_tag(x_17) == 0) { obj* x_18; obj* x_20; obj* x_22; obj* x_23; x_18 = lean::cnstr_get(x_17, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_17, 2); -lean::inc(x_20); if (lean::is_exclusive(x_17)) { lean::cnstr_release(x_17, 0); - lean::cnstr_release(x_17, 1); - lean::cnstr_release(x_17, 2); + lean::cnstr_set(x_17, 1, lean::box(0)); + lean::cnstr_set(x_17, 2, lean::box(0)); x_22 = x_17; } else { + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_17); x_22 = lean::box(0); } @@ -9092,12 +9092,12 @@ else { obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; x_44 = lean::cnstr_get(x_36, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_36, sizeof(void*)*1); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_47 = x_36; } else { + lean::inc(x_44); lean::dec(x_36); x_47 = lean::box(0); } @@ -9118,12 +9118,12 @@ else obj* x_51; uint8 x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; lean::dec(x_22); x_51 = lean::cnstr_get(x_23, 0); -lean::inc(x_51); x_53 = lean::cnstr_get_scalar(x_23, sizeof(void*)*1); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_54 = x_23; } else { + lean::inc(x_51); lean::dec(x_23); x_54 = lean::box(0); } @@ -9155,12 +9155,12 @@ else { obj* x_65; uint8 x_67; obj* x_68; obj* x_69; obj* x_70; x_65 = lean::cnstr_get(x_57, 0); -lean::inc(x_65); x_67 = lean::cnstr_get_scalar(x_57, sizeof(void*)*1); if (lean::is_exclusive(x_57)) { - lean::cnstr_release(x_57, 0); + lean::cnstr_set(x_57, 0, lean::box(0)); x_68 = x_57; } else { + lean::inc(x_65); lean::dec(x_57); x_68 = lean::box(0); } @@ -9181,12 +9181,12 @@ else { obj* x_71; uint8 x_73; obj* x_74; obj* x_75; obj* x_76; x_71 = lean::cnstr_get(x_17, 0); -lean::inc(x_71); x_73 = lean::cnstr_get_scalar(x_17, sizeof(void*)*1); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_74 = x_17; } else { + lean::inc(x_71); lean::dec(x_17); x_74 = lean::box(0); } @@ -9229,15 +9229,15 @@ if (lean::obj_tag(x_91) == 0) { obj* x_92; obj* x_94; obj* x_96; obj* x_97; x_92 = lean::cnstr_get(x_91, 1); -lean::inc(x_92); x_94 = lean::cnstr_get(x_91, 2); -lean::inc(x_94); if (lean::is_exclusive(x_91)) { lean::cnstr_release(x_91, 0); - lean::cnstr_release(x_91, 1); - lean::cnstr_release(x_91, 2); + lean::cnstr_set(x_91, 1, lean::box(0)); + lean::cnstr_set(x_91, 2, lean::box(0)); x_96 = x_91; } else { + lean::inc(x_92); + lean::inc(x_94); lean::dec(x_91); x_96 = lean::box(0); } @@ -9294,12 +9294,12 @@ else obj* x_120; uint8 x_122; obj* x_123; obj* x_124; obj* x_125; obj* x_126; lean::dec(x_96); x_120 = lean::cnstr_get(x_97, 0); -lean::inc(x_120); x_122 = lean::cnstr_get_scalar(x_97, sizeof(void*)*1); if (lean::is_exclusive(x_97)) { - lean::cnstr_release(x_97, 0); + lean::cnstr_set(x_97, 0, lean::box(0)); x_123 = x_97; } else { + lean::inc(x_120); lean::dec(x_97); x_123 = lean::box(0); } @@ -9339,12 +9339,12 @@ else { obj* x_135; uint8 x_137; obj* x_138; obj* x_140; obj* x_141; x_135 = lean::cnstr_get(x_91, 0); -lean::inc(x_135); x_137 = lean::cnstr_get_scalar(x_91, sizeof(void*)*1); if (lean::is_exclusive(x_91)) { - lean::cnstr_release(x_91, 0); + lean::cnstr_set(x_91, 0, lean::box(0)); x_138 = x_91; } else { + lean::inc(x_135); lean::dec(x_91); x_138 = lean::box(0); } @@ -9387,15 +9387,15 @@ if (lean::obj_tag(x_158) == 0) { obj* x_159; obj* x_161; obj* x_163; obj* x_164; x_159 = lean::cnstr_get(x_158, 1); -lean::inc(x_159); x_161 = lean::cnstr_get(x_158, 2); -lean::inc(x_161); if (lean::is_exclusive(x_158)) { lean::cnstr_release(x_158, 0); - lean::cnstr_release(x_158, 1); - lean::cnstr_release(x_158, 2); + lean::cnstr_set(x_158, 1, lean::box(0)); + lean::cnstr_set(x_158, 2, lean::box(0)); x_163 = x_158; } else { + lean::inc(x_159); + lean::inc(x_161); lean::dec(x_158); x_163 = lean::box(0); } @@ -9444,12 +9444,12 @@ else { obj* x_185; uint8 x_187; obj* x_188; obj* x_190; obj* x_191; x_185 = lean::cnstr_get(x_177, 0); -lean::inc(x_185); x_187 = lean::cnstr_get_scalar(x_177, sizeof(void*)*1); if (lean::is_exclusive(x_177)) { - lean::cnstr_release(x_177, 0); + lean::cnstr_set(x_177, 0, lean::box(0)); x_188 = x_177; } else { + lean::inc(x_185); lean::dec(x_177); x_188 = lean::box(0); } @@ -9473,12 +9473,12 @@ else obj* x_193; uint8 x_195; obj* x_196; obj* x_197; obj* x_198; obj* x_199; lean::dec(x_163); x_193 = lean::cnstr_get(x_164, 0); -lean::inc(x_193); x_195 = lean::cnstr_get_scalar(x_164, sizeof(void*)*1); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); + lean::cnstr_set(x_164, 0, lean::box(0)); x_196 = x_164; } else { + lean::inc(x_193); lean::dec(x_164); x_196 = lean::box(0); } @@ -9510,12 +9510,12 @@ else { obj* x_207; uint8 x_209; obj* x_210; obj* x_212; obj* x_213; x_207 = lean::cnstr_get(x_199, 0); -lean::inc(x_207); x_209 = lean::cnstr_get_scalar(x_199, sizeof(void*)*1); if (lean::is_exclusive(x_199)) { - lean::cnstr_release(x_199, 0); + lean::cnstr_set(x_199, 0, lean::box(0)); x_210 = x_199; } else { + lean::inc(x_207); lean::dec(x_199); x_210 = lean::box(0); } @@ -9539,12 +9539,12 @@ else { obj* x_214; uint8 x_216; obj* x_217; obj* x_219; obj* x_220; x_214 = lean::cnstr_get(x_158, 0); -lean::inc(x_214); x_216 = lean::cnstr_get_scalar(x_158, sizeof(void*)*1); if (lean::is_exclusive(x_158)) { - lean::cnstr_release(x_158, 0); + lean::cnstr_set(x_158, 0, lean::box(0)); x_217 = x_158; } else { + lean::inc(x_214); lean::dec(x_158); x_217 = lean::box(0); } @@ -9588,15 +9588,15 @@ if (lean::obj_tag(x_238) == 0) { obj* x_239; obj* x_241; obj* x_243; obj* x_244; x_239 = lean::cnstr_get(x_238, 1); -lean::inc(x_239); x_241 = lean::cnstr_get(x_238, 2); -lean::inc(x_241); if (lean::is_exclusive(x_238)) { lean::cnstr_release(x_238, 0); - lean::cnstr_release(x_238, 1); - lean::cnstr_release(x_238, 2); + lean::cnstr_set(x_238, 1, lean::box(0)); + lean::cnstr_set(x_238, 2, lean::box(0)); x_243 = x_238; } else { + lean::inc(x_239); + lean::inc(x_241); lean::dec(x_238); x_243 = lean::box(0); } @@ -9645,12 +9645,12 @@ else { obj* x_265; uint8 x_267; obj* x_268; obj* x_270; obj* x_271; x_265 = lean::cnstr_get(x_257, 0); -lean::inc(x_265); x_267 = lean::cnstr_get_scalar(x_257, sizeof(void*)*1); if (lean::is_exclusive(x_257)) { - lean::cnstr_release(x_257, 0); + lean::cnstr_set(x_257, 0, lean::box(0)); x_268 = x_257; } else { + lean::inc(x_265); lean::dec(x_257); x_268 = lean::box(0); } @@ -9674,12 +9674,12 @@ else obj* x_273; uint8 x_275; obj* x_276; obj* x_277; obj* x_278; obj* x_279; lean::dec(x_243); x_273 = lean::cnstr_get(x_244, 0); -lean::inc(x_273); x_275 = lean::cnstr_get_scalar(x_244, sizeof(void*)*1); if (lean::is_exclusive(x_244)) { - lean::cnstr_release(x_244, 0); + lean::cnstr_set(x_244, 0, lean::box(0)); x_276 = x_244; } else { + lean::inc(x_273); lean::dec(x_244); x_276 = lean::box(0); } @@ -9711,12 +9711,12 @@ else { obj* x_287; uint8 x_289; obj* x_290; obj* x_292; obj* x_293; x_287 = lean::cnstr_get(x_279, 0); -lean::inc(x_287); x_289 = lean::cnstr_get_scalar(x_279, sizeof(void*)*1); if (lean::is_exclusive(x_279)) { - lean::cnstr_release(x_279, 0); + lean::cnstr_set(x_279, 0, lean::box(0)); x_290 = x_279; } else { + lean::inc(x_287); lean::dec(x_279); x_290 = lean::box(0); } @@ -9740,12 +9740,12 @@ else { obj* x_294; uint8 x_296; obj* x_297; obj* x_299; obj* x_300; x_294 = lean::cnstr_get(x_238, 0); -lean::inc(x_294); x_296 = lean::cnstr_get_scalar(x_238, sizeof(void*)*1); if (lean::is_exclusive(x_238)) { - lean::cnstr_release(x_238, 0); + lean::cnstr_set(x_238, 0, lean::box(0)); x_297 = x_238; } else { + lean::inc(x_294); lean::dec(x_238); x_297 = lean::box(0); } @@ -9790,15 +9790,15 @@ if (lean::obj_tag(x_323) == 0) { obj* x_324; obj* x_326; obj* x_328; obj* x_329; x_324 = lean::cnstr_get(x_323, 1); -lean::inc(x_324); x_326 = lean::cnstr_get(x_323, 2); -lean::inc(x_326); if (lean::is_exclusive(x_323)) { lean::cnstr_release(x_323, 0); - lean::cnstr_release(x_323, 1); - lean::cnstr_release(x_323, 2); + lean::cnstr_set(x_323, 1, lean::box(0)); + lean::cnstr_set(x_323, 2, lean::box(0)); x_328 = x_323; } else { + lean::inc(x_324); + lean::inc(x_326); lean::dec(x_323); x_328 = lean::box(0); } @@ -9847,12 +9847,12 @@ else { obj* x_350; uint8 x_352; obj* x_353; obj* x_355; obj* x_356; x_350 = lean::cnstr_get(x_342, 0); -lean::inc(x_350); x_352 = lean::cnstr_get_scalar(x_342, sizeof(void*)*1); if (lean::is_exclusive(x_342)) { - lean::cnstr_release(x_342, 0); + lean::cnstr_set(x_342, 0, lean::box(0)); x_353 = x_342; } else { + lean::inc(x_350); lean::dec(x_342); x_353 = lean::box(0); } @@ -9876,12 +9876,12 @@ else obj* x_358; uint8 x_360; obj* x_361; obj* x_362; obj* x_363; obj* x_364; lean::dec(x_328); x_358 = lean::cnstr_get(x_329, 0); -lean::inc(x_358); x_360 = lean::cnstr_get_scalar(x_329, sizeof(void*)*1); if (lean::is_exclusive(x_329)) { - lean::cnstr_release(x_329, 0); + lean::cnstr_set(x_329, 0, lean::box(0)); x_361 = x_329; } else { + lean::inc(x_358); lean::dec(x_329); x_361 = lean::box(0); } @@ -9913,12 +9913,12 @@ else { obj* x_372; uint8 x_374; obj* x_375; obj* x_377; obj* x_378; x_372 = lean::cnstr_get(x_364, 0); -lean::inc(x_372); x_374 = lean::cnstr_get_scalar(x_364, sizeof(void*)*1); if (lean::is_exclusive(x_364)) { - lean::cnstr_release(x_364, 0); + lean::cnstr_set(x_364, 0, lean::box(0)); x_375 = x_364; } else { + lean::inc(x_372); lean::dec(x_364); x_375 = lean::box(0); } @@ -9942,12 +9942,12 @@ else { obj* x_379; uint8 x_381; obj* x_382; obj* x_384; obj* x_385; x_379 = lean::cnstr_get(x_323, 0); -lean::inc(x_379); x_381 = lean::cnstr_get_scalar(x_323, sizeof(void*)*1); if (lean::is_exclusive(x_323)) { - lean::cnstr_release(x_323, 0); + lean::cnstr_set(x_323, 0, lean::box(0)); x_382 = x_323; } else { + lean::inc(x_379); lean::dec(x_323); x_382 = lean::box(0); } @@ -9993,15 +9993,15 @@ if (lean::obj_tag(x_405) == 0) { obj* x_406; obj* x_408; obj* x_410; obj* x_411; x_406 = lean::cnstr_get(x_405, 1); -lean::inc(x_406); x_408 = lean::cnstr_get(x_405, 2); -lean::inc(x_408); if (lean::is_exclusive(x_405)) { lean::cnstr_release(x_405, 0); - lean::cnstr_release(x_405, 1); - lean::cnstr_release(x_405, 2); + lean::cnstr_set(x_405, 1, lean::box(0)); + lean::cnstr_set(x_405, 2, lean::box(0)); x_410 = x_405; } else { + lean::inc(x_406); + lean::inc(x_408); lean::dec(x_405); x_410 = lean::box(0); } @@ -10050,12 +10050,12 @@ else { obj* x_432; uint8 x_434; obj* x_435; obj* x_437; obj* x_438; x_432 = lean::cnstr_get(x_424, 0); -lean::inc(x_432); x_434 = lean::cnstr_get_scalar(x_424, sizeof(void*)*1); if (lean::is_exclusive(x_424)) { - lean::cnstr_release(x_424, 0); + lean::cnstr_set(x_424, 0, lean::box(0)); x_435 = x_424; } else { + lean::inc(x_432); lean::dec(x_424); x_435 = lean::box(0); } @@ -10079,12 +10079,12 @@ else obj* x_440; uint8 x_442; obj* x_443; obj* x_444; obj* x_445; obj* x_446; lean::dec(x_410); x_440 = lean::cnstr_get(x_411, 0); -lean::inc(x_440); x_442 = lean::cnstr_get_scalar(x_411, sizeof(void*)*1); if (lean::is_exclusive(x_411)) { - lean::cnstr_release(x_411, 0); + lean::cnstr_set(x_411, 0, lean::box(0)); x_443 = x_411; } else { + lean::inc(x_440); lean::dec(x_411); x_443 = lean::box(0); } @@ -10116,12 +10116,12 @@ else { obj* x_454; uint8 x_456; obj* x_457; obj* x_459; obj* x_460; x_454 = lean::cnstr_get(x_446, 0); -lean::inc(x_454); x_456 = lean::cnstr_get_scalar(x_446, sizeof(void*)*1); if (lean::is_exclusive(x_446)) { - lean::cnstr_release(x_446, 0); + lean::cnstr_set(x_446, 0, lean::box(0)); x_457 = x_446; } else { + lean::inc(x_454); lean::dec(x_446); x_457 = lean::box(0); } @@ -10145,12 +10145,12 @@ else { obj* x_461; uint8 x_463; obj* x_464; obj* x_466; obj* x_467; x_461 = lean::cnstr_get(x_405, 0); -lean::inc(x_461); x_463 = lean::cnstr_get_scalar(x_405, sizeof(void*)*1); if (lean::is_exclusive(x_405)) { - lean::cnstr_release(x_405, 0); + lean::cnstr_set(x_405, 0, lean::box(0)); x_464 = x_405; } else { + lean::inc(x_461); lean::dec(x_405); x_464 = lean::box(0); } @@ -10196,15 +10196,15 @@ if (lean::obj_tag(x_487) == 0) { obj* x_488; obj* x_490; obj* x_492; obj* x_493; obj* x_494; obj* x_495; x_488 = lean::cnstr_get(x_487, 1); -lean::inc(x_488); x_490 = lean::cnstr_get(x_487, 2); -lean::inc(x_490); if (lean::is_exclusive(x_487)) { lean::cnstr_release(x_487, 0); - lean::cnstr_release(x_487, 1); - lean::cnstr_release(x_487, 2); + lean::cnstr_set(x_487, 1, lean::box(0)); + lean::cnstr_set(x_487, 2, lean::box(0)); x_492 = x_487; } else { + lean::inc(x_488); + lean::inc(x_490); lean::dec(x_487); x_492 = lean::box(0); } @@ -10255,12 +10255,12 @@ else obj* x_516; uint8 x_518; obj* x_519; obj* x_520; obj* x_521; obj* x_522; obj* x_523; obj* x_524; obj* x_525; obj* x_526; obj* x_527; obj* x_528; lean::dec(x_8); x_516 = lean::cnstr_get(x_507, 0); -lean::inc(x_516); x_518 = lean::cnstr_get_scalar(x_507, sizeof(void*)*1); if (lean::is_exclusive(x_507)) { - lean::cnstr_release(x_507, 0); + lean::cnstr_set(x_507, 0, lean::box(0)); x_519 = x_507; } else { + lean::inc(x_516); lean::dec(x_507); x_519 = lean::box(0); } @@ -10288,12 +10288,12 @@ obj* x_531; uint8 x_533; obj* x_534; obj* x_535; obj* x_536; obj* x_537; lean::dec(x_0); lean::dec(x_492); x_531 = lean::cnstr_get(x_495, 0); -lean::inc(x_531); x_533 = lean::cnstr_get_scalar(x_495, sizeof(void*)*1); if (lean::is_exclusive(x_495)) { - lean::cnstr_release(x_495, 0); + lean::cnstr_set(x_495, 0, lean::box(0)); x_534 = x_495; } else { + lean::inc(x_531); lean::dec(x_495); x_534 = lean::box(0); } @@ -10326,12 +10326,12 @@ else obj* x_546; uint8 x_548; obj* x_549; obj* x_550; obj* x_551; obj* x_552; obj* x_553; obj* x_554; obj* x_555; obj* x_556; obj* x_557; obj* x_558; lean::dec(x_8); x_546 = lean::cnstr_get(x_537, 0); -lean::inc(x_546); x_548 = lean::cnstr_get_scalar(x_537, sizeof(void*)*1); if (lean::is_exclusive(x_537)) { - lean::cnstr_release(x_537, 0); + lean::cnstr_set(x_537, 0, lean::box(0)); x_549 = x_537; } else { + lean::inc(x_546); lean::dec(x_537); x_549 = lean::box(0); } @@ -10360,12 +10360,12 @@ obj* x_561; uint8 x_563; obj* x_564; obj* x_565; obj* x_566; obj* x_567; obj* x_ lean::dec(x_8); lean::dec(x_0); x_561 = lean::cnstr_get(x_487, 0); -lean::inc(x_561); x_563 = lean::cnstr_get_scalar(x_487, sizeof(void*)*1); if (lean::is_exclusive(x_487)) { - lean::cnstr_release(x_487, 0); + lean::cnstr_set(x_487, 0, lean::box(0)); x_564 = x_487; } else { + lean::inc(x_561); lean::dec(x_487); x_564 = lean::box(0); } @@ -10443,12 +10443,12 @@ obj* x_606; uint8 x_608; obj* x_609; obj* x_610; obj* x_611; obj* x_612; obj* x_ lean::dec(x_477); lean::dec(x_8); x_606 = lean::cnstr_get(x_584, 0); -lean::inc(x_606); x_608 = lean::cnstr_get_scalar(x_584, sizeof(void*)*1); if (lean::is_exclusive(x_584)) { - lean::cnstr_release(x_584, 0); + lean::cnstr_set(x_584, 0, lean::box(0)); x_609 = x_584; } else { + lean::inc(x_606); lean::dec(x_584); x_609 = lean::box(0); } @@ -10479,17 +10479,17 @@ if (lean::obj_tag(x_620) == 0) { obj* x_621; obj* x_623; obj* x_625; obj* x_627; obj* x_628; obj* x_629; obj* x_630; obj* x_631; obj* x_632; x_621 = lean::cnstr_get(x_620, 0); -lean::inc(x_621); x_623 = lean::cnstr_get(x_620, 1); -lean::inc(x_623); x_625 = lean::cnstr_get(x_620, 2); -lean::inc(x_625); if (lean::is_exclusive(x_620)) { - lean::cnstr_release(x_620, 0); - lean::cnstr_release(x_620, 1); - lean::cnstr_release(x_620, 2); + lean::cnstr_set(x_620, 0, lean::box(0)); + lean::cnstr_set(x_620, 1, lean::box(0)); + lean::cnstr_set(x_620, 2, lean::box(0)); x_627 = x_620; } else { + lean::inc(x_621); + lean::inc(x_623); + lean::inc(x_625); lean::dec(x_620); x_627 = lean::box(0); } @@ -10525,12 +10525,12 @@ else obj* x_641; uint8 x_643; obj* x_644; obj* x_645; obj* x_646; obj* x_647; obj* x_648; obj* x_649; obj* x_650; obj* x_651; obj* x_652; obj* x_653; lean::dec(x_8); x_641 = lean::cnstr_get(x_632, 0); -lean::inc(x_641); x_643 = lean::cnstr_get_scalar(x_632, sizeof(void*)*1); if (lean::is_exclusive(x_632)) { - lean::cnstr_release(x_632, 0); + lean::cnstr_set(x_632, 0, lean::box(0)); x_644 = x_632; } else { + lean::inc(x_641); lean::dec(x_632); x_644 = lean::box(0); } @@ -10557,12 +10557,12 @@ else obj* x_655; uint8 x_657; obj* x_658; obj* x_659; obj* x_660; obj* x_661; lean::dec(x_481); x_655 = lean::cnstr_get(x_620, 0); -lean::inc(x_655); x_657 = lean::cnstr_get_scalar(x_620, sizeof(void*)*1); if (lean::is_exclusive(x_620)) { - lean::cnstr_release(x_620, 0); + lean::cnstr_set(x_620, 0, lean::box(0)); x_658 = x_620; } else { + lean::inc(x_655); lean::dec(x_620); x_658 = lean::box(0); } @@ -10595,12 +10595,12 @@ else obj* x_670; uint8 x_672; obj* x_673; obj* x_674; obj* x_675; obj* x_676; obj* x_677; obj* x_678; obj* x_679; obj* x_680; obj* x_681; obj* x_682; lean::dec(x_8); x_670 = lean::cnstr_get(x_661, 0); -lean::inc(x_670); x_672 = lean::cnstr_get_scalar(x_661, sizeof(void*)*1); if (lean::is_exclusive(x_661)) { - lean::cnstr_release(x_661, 0); + lean::cnstr_set(x_661, 0, lean::box(0)); x_673 = x_661; } else { + lean::inc(x_670); lean::dec(x_661); x_673 = lean::box(0); } @@ -10632,17 +10632,17 @@ if (lean::obj_tag(x_683) == 0) { obj* x_684; obj* x_686; obj* x_688; obj* x_690; obj* x_691; obj* x_692; obj* x_693; obj* x_694; obj* x_695; x_684 = lean::cnstr_get(x_683, 0); -lean::inc(x_684); x_686 = lean::cnstr_get(x_683, 1); -lean::inc(x_686); x_688 = lean::cnstr_get(x_683, 2); -lean::inc(x_688); if (lean::is_exclusive(x_683)) { - lean::cnstr_release(x_683, 0); - lean::cnstr_release(x_683, 1); - lean::cnstr_release(x_683, 2); + lean::cnstr_set(x_683, 0, lean::box(0)); + lean::cnstr_set(x_683, 1, lean::box(0)); + lean::cnstr_set(x_683, 2, lean::box(0)); x_690 = x_683; } else { + lean::inc(x_684); + lean::inc(x_686); + lean::inc(x_688); lean::dec(x_683); x_690 = lean::box(0); } @@ -10689,12 +10689,12 @@ else obj* x_709; uint8 x_711; obj* x_712; obj* x_713; obj* x_714; obj* x_715; lean::dec(x_398); x_709 = lean::cnstr_get(x_683, 0); -lean::inc(x_709); x_711 = lean::cnstr_get_scalar(x_683, sizeof(void*)*1); if (lean::is_exclusive(x_683)) { - lean::cnstr_release(x_683, 0); + lean::cnstr_set(x_683, 0, lean::box(0)); x_712 = x_683; } else { + lean::inc(x_709); lean::dec(x_683); x_712 = lean::box(0); } @@ -10743,17 +10743,17 @@ if (lean::obj_tag(x_728) == 0) { obj* x_729; obj* x_731; obj* x_733; obj* x_735; obj* x_736; obj* x_737; obj* x_738; obj* x_739; obj* x_740; x_729 = lean::cnstr_get(x_728, 0); -lean::inc(x_729); x_731 = lean::cnstr_get(x_728, 1); -lean::inc(x_731); x_733 = lean::cnstr_get(x_728, 2); -lean::inc(x_733); if (lean::is_exclusive(x_728)) { - lean::cnstr_release(x_728, 0); - lean::cnstr_release(x_728, 1); - lean::cnstr_release(x_728, 2); + lean::cnstr_set(x_728, 0, lean::box(0)); + lean::cnstr_set(x_728, 1, lean::box(0)); + lean::cnstr_set(x_728, 2, lean::box(0)); x_735 = x_728; } else { + lean::inc(x_729); + lean::inc(x_731); + lean::inc(x_733); lean::dec(x_728); x_735 = lean::box(0); } @@ -10799,12 +10799,12 @@ else obj* x_753; uint8 x_755; obj* x_756; obj* x_757; obj* x_758; obj* x_759; lean::dec(x_312); x_753 = lean::cnstr_get(x_728, 0); -lean::inc(x_753); x_755 = lean::cnstr_get_scalar(x_728, sizeof(void*)*1); if (lean::is_exclusive(x_728)) { - lean::cnstr_release(x_728, 0); + lean::cnstr_set(x_728, 0, lean::box(0)); x_756 = x_728; } else { + lean::inc(x_753); lean::dec(x_728); x_756 = lean::box(0); } @@ -10851,17 +10851,17 @@ if (lean::obj_tag(x_771) == 0) { obj* x_772; obj* x_774; obj* x_776; obj* x_778; obj* x_779; obj* x_780; obj* x_781; obj* x_782; obj* x_783; x_772 = lean::cnstr_get(x_771, 0); -lean::inc(x_772); x_774 = lean::cnstr_get(x_771, 1); -lean::inc(x_774); x_776 = lean::cnstr_get(x_771, 2); -lean::inc(x_776); if (lean::is_exclusive(x_771)) { - lean::cnstr_release(x_771, 0); - lean::cnstr_release(x_771, 1); - lean::cnstr_release(x_771, 2); + lean::cnstr_set(x_771, 0, lean::box(0)); + lean::cnstr_set(x_771, 1, lean::box(0)); + lean::cnstr_set(x_771, 2, lean::box(0)); x_778 = x_771; } else { + lean::inc(x_772); + lean::inc(x_774); + lean::inc(x_776); lean::dec(x_771); x_778 = lean::box(0); } @@ -10896,12 +10896,12 @@ else { obj* x_791; uint8 x_793; obj* x_794; obj* x_796; obj* x_797; x_791 = lean::cnstr_get(x_783, 0); -lean::inc(x_791); x_793 = lean::cnstr_get_scalar(x_783, sizeof(void*)*1); if (lean::is_exclusive(x_783)) { - lean::cnstr_release(x_783, 0); + lean::cnstr_set(x_783, 0, lean::box(0)); x_794 = x_783; } else { + lean::inc(x_791); lean::dec(x_783); x_794 = lean::box(0); } @@ -10925,12 +10925,12 @@ else obj* x_799; uint8 x_801; obj* x_802; obj* x_803; obj* x_804; obj* x_805; lean::dec(x_316); x_799 = lean::cnstr_get(x_771, 0); -lean::inc(x_799); x_801 = lean::cnstr_get_scalar(x_771, sizeof(void*)*1); if (lean::is_exclusive(x_771)) { - lean::cnstr_release(x_771, 0); + lean::cnstr_set(x_771, 0, lean::box(0)); x_802 = x_771; } else { + lean::inc(x_799); lean::dec(x_771); x_802 = lean::box(0); } @@ -10962,12 +10962,12 @@ else { obj* x_813; uint8 x_815; obj* x_816; obj* x_818; obj* x_819; x_813 = lean::cnstr_get(x_805, 0); -lean::inc(x_813); x_815 = lean::cnstr_get_scalar(x_805, sizeof(void*)*1); if (lean::is_exclusive(x_805)) { - lean::cnstr_release(x_805, 0); + lean::cnstr_set(x_805, 0, lean::box(0)); x_816 = x_805; } else { + lean::inc(x_813); lean::dec(x_805); x_816 = lean::box(0); } @@ -10996,17 +10996,17 @@ if (lean::obj_tag(x_820) == 0) { obj* x_821; obj* x_823; obj* x_825; obj* x_827; obj* x_828; obj* x_829; obj* x_830; obj* x_831; obj* x_832; x_821 = lean::cnstr_get(x_820, 0); -lean::inc(x_821); x_823 = lean::cnstr_get(x_820, 1); -lean::inc(x_823); x_825 = lean::cnstr_get(x_820, 2); -lean::inc(x_825); if (lean::is_exclusive(x_820)) { - lean::cnstr_release(x_820, 0); - lean::cnstr_release(x_820, 1); - lean::cnstr_release(x_820, 2); + lean::cnstr_set(x_820, 0, lean::box(0)); + lean::cnstr_set(x_820, 1, lean::box(0)); + lean::cnstr_set(x_820, 2, lean::box(0)); x_827 = x_820; } else { + lean::inc(x_821); + lean::inc(x_823); + lean::inc(x_825); lean::dec(x_820); x_827 = lean::box(0); } @@ -11051,12 +11051,12 @@ else obj* x_844; uint8 x_846; obj* x_847; obj* x_848; obj* x_849; obj* x_850; lean::dec(x_231); x_844 = lean::cnstr_get(x_820, 0); -lean::inc(x_844); x_846 = lean::cnstr_get_scalar(x_820, sizeof(void*)*1); if (lean::is_exclusive(x_820)) { - lean::cnstr_release(x_820, 0); + lean::cnstr_set(x_820, 0, lean::box(0)); x_847 = x_820; } else { + lean::inc(x_844); lean::dec(x_820); x_847 = lean::box(0); } @@ -11103,17 +11103,17 @@ if (lean::obj_tag(x_861) == 0) { obj* x_862; obj* x_864; obj* x_866; obj* x_868; obj* x_869; obj* x_870; obj* x_871; obj* x_872; obj* x_873; x_862 = lean::cnstr_get(x_861, 0); -lean::inc(x_862); x_864 = lean::cnstr_get(x_861, 1); -lean::inc(x_864); x_866 = lean::cnstr_get(x_861, 2); -lean::inc(x_866); if (lean::is_exclusive(x_861)) { - lean::cnstr_release(x_861, 0); - lean::cnstr_release(x_861, 1); - lean::cnstr_release(x_861, 2); + lean::cnstr_set(x_861, 0, lean::box(0)); + lean::cnstr_set(x_861, 1, lean::box(0)); + lean::cnstr_set(x_861, 2, lean::box(0)); x_868 = x_861; } else { + lean::inc(x_862); + lean::inc(x_864); + lean::inc(x_866); lean::dec(x_861); x_868 = lean::box(0); } @@ -11157,12 +11157,12 @@ else obj* x_884; uint8 x_886; obj* x_887; obj* x_888; obj* x_889; obj* x_890; lean::dec(x_151); x_884 = lean::cnstr_get(x_861, 0); -lean::inc(x_884); x_886 = lean::cnstr_get_scalar(x_861, sizeof(void*)*1); if (lean::is_exclusive(x_861)) { - lean::cnstr_release(x_861, 0); + lean::cnstr_set(x_861, 0, lean::box(0)); x_887 = x_861; } else { + lean::inc(x_884); lean::dec(x_861); x_887 = lean::box(0); } @@ -11210,17 +11210,17 @@ if (lean::obj_tag(x_900) == 0) { obj* x_901; obj* x_903; obj* x_905; obj* x_907; obj* x_908; obj* x_909; obj* x_910; obj* x_911; obj* x_912; x_901 = lean::cnstr_get(x_900, 0); -lean::inc(x_901); x_903 = lean::cnstr_get(x_900, 1); -lean::inc(x_903); x_905 = lean::cnstr_get(x_900, 2); -lean::inc(x_905); if (lean::is_exclusive(x_900)) { - lean::cnstr_release(x_900, 0); - lean::cnstr_release(x_900, 1); - lean::cnstr_release(x_900, 2); + lean::cnstr_set(x_900, 0, lean::box(0)); + lean::cnstr_set(x_900, 1, lean::box(0)); + lean::cnstr_set(x_900, 2, lean::box(0)); x_907 = x_900; } else { + lean::inc(x_901); + lean::inc(x_903); + lean::inc(x_905); lean::dec(x_900); x_907 = lean::box(0); } @@ -11244,12 +11244,12 @@ else obj* x_914; uint8 x_916; obj* x_917; obj* x_918; obj* x_919; obj* x_920; lean::dec(x_11); x_914 = lean::cnstr_get(x_900, 0); -lean::inc(x_914); x_916 = lean::cnstr_get_scalar(x_900, sizeof(void*)*1); if (lean::is_exclusive(x_900)) { - lean::cnstr_release(x_900, 0); + lean::cnstr_set(x_900, 0, lean::box(0)); x_917 = x_900; } else { + lean::inc(x_914); lean::dec(x_900); x_917 = lean::box(0); } @@ -11272,12 +11272,12 @@ else obj* x_922; uint8 x_924; obj* x_925; obj* x_926; obj* x_927; lean::dec(x_0); x_922 = lean::cnstr_get(x_3, 0); -lean::inc(x_922); x_924 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_925 = x_3; } else { + lean::inc(x_922); lean::dec(x_3); x_925 = lean::box(0); } @@ -11378,12 +11378,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; x_26 = lean::cnstr_get(x_1, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_29 = x_1; } else { + lean::inc(x_26); lean::dec(x_1); x_29 = lean::box(0); } @@ -11480,15 +11480,15 @@ if (lean::obj_tag(x_13) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_19; x_14 = lean::cnstr_get(x_13, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 2); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -11535,12 +11535,12 @@ else { obj* x_39; uint8 x_41; obj* x_42; obj* x_43; obj* x_44; x_39 = lean::cnstr_get(x_31, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_31, sizeof(void*)*1); if (lean::is_exclusive(x_31)) { - lean::cnstr_release(x_31, 0); + lean::cnstr_set(x_31, 0, lean::box(0)); x_42 = x_31; } else { + lean::inc(x_39); lean::dec(x_31); x_42 = lean::box(0); } @@ -11561,12 +11561,12 @@ else obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; lean::dec(x_18); x_46 = lean::cnstr_get(x_19, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_49 = x_19; } else { + lean::inc(x_46); lean::dec(x_19); x_49 = lean::box(0); } @@ -11598,12 +11598,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; x_60 = lean::cnstr_get(x_52, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_52, sizeof(void*)*1); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_63 = x_52; } else { + lean::inc(x_60); lean::dec(x_52); x_63 = lean::box(0); } @@ -11624,12 +11624,12 @@ else { obj* x_66; uint8 x_68; obj* x_69; obj* x_70; obj* x_71; x_66 = lean::cnstr_get(x_13, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_69 = x_13; } else { + lean::inc(x_66); lean::dec(x_13); x_69 = lean::box(0); } @@ -11668,15 +11668,15 @@ if (lean::obj_tag(x_91) == 0) { obj* x_92; obj* x_94; obj* x_96; obj* x_97; x_92 = lean::cnstr_get(x_91, 1); -lean::inc(x_92); x_94 = lean::cnstr_get(x_91, 2); -lean::inc(x_94); if (lean::is_exclusive(x_91)) { lean::cnstr_release(x_91, 0); - lean::cnstr_release(x_91, 1); - lean::cnstr_release(x_91, 2); + lean::cnstr_set(x_91, 1, lean::box(0)); + lean::cnstr_set(x_91, 2, lean::box(0)); x_96 = x_91; } else { + lean::inc(x_92); + lean::inc(x_94); lean::dec(x_91); x_96 = lean::box(0); } @@ -11723,12 +11723,12 @@ else { obj* x_117; uint8 x_119; obj* x_120; obj* x_122; obj* x_123; x_117 = lean::cnstr_get(x_109, 0); -lean::inc(x_117); x_119 = lean::cnstr_get_scalar(x_109, sizeof(void*)*1); if (lean::is_exclusive(x_109)) { - lean::cnstr_release(x_109, 0); + lean::cnstr_set(x_109, 0, lean::box(0)); x_120 = x_109; } else { + lean::inc(x_117); lean::dec(x_109); x_120 = lean::box(0); } @@ -11752,12 +11752,12 @@ else obj* x_125; uint8 x_127; obj* x_128; obj* x_129; obj* x_130; obj* x_131; lean::dec(x_96); x_125 = lean::cnstr_get(x_97, 0); -lean::inc(x_125); x_127 = lean::cnstr_get_scalar(x_97, sizeof(void*)*1); if (lean::is_exclusive(x_97)) { - lean::cnstr_release(x_97, 0); + lean::cnstr_set(x_97, 0, lean::box(0)); x_128 = x_97; } else { + lean::inc(x_125); lean::dec(x_97); x_128 = lean::box(0); } @@ -11789,12 +11789,12 @@ else { obj* x_139; uint8 x_141; obj* x_142; obj* x_144; obj* x_145; x_139 = lean::cnstr_get(x_131, 0); -lean::inc(x_139); x_141 = lean::cnstr_get_scalar(x_131, sizeof(void*)*1); if (lean::is_exclusive(x_131)) { - lean::cnstr_release(x_131, 0); + lean::cnstr_set(x_131, 0, lean::box(0)); x_142 = x_131; } else { + lean::inc(x_139); lean::dec(x_131); x_142 = lean::box(0); } @@ -11818,12 +11818,12 @@ else { obj* x_146; uint8 x_148; obj* x_149; obj* x_151; obj* x_152; x_146 = lean::cnstr_get(x_91, 0); -lean::inc(x_146); x_148 = lean::cnstr_get_scalar(x_91, sizeof(void*)*1); if (lean::is_exclusive(x_91)) { - lean::cnstr_release(x_91, 0); + lean::cnstr_set(x_91, 0, lean::box(0)); x_149 = x_91; } else { + lean::inc(x_146); lean::dec(x_91); x_149 = lean::box(0); } @@ -11862,15 +11862,15 @@ if (lean::obj_tag(x_170) == 0) { obj* x_171; obj* x_173; obj* x_175; obj* x_176; x_171 = lean::cnstr_get(x_170, 1); -lean::inc(x_171); x_173 = lean::cnstr_get(x_170, 2); -lean::inc(x_173); if (lean::is_exclusive(x_170)) { lean::cnstr_release(x_170, 0); - lean::cnstr_release(x_170, 1); - lean::cnstr_release(x_170, 2); + lean::cnstr_set(x_170, 1, lean::box(0)); + lean::cnstr_set(x_170, 2, lean::box(0)); x_175 = x_170; } else { + lean::inc(x_171); + lean::inc(x_173); lean::dec(x_170); x_175 = lean::box(0); } @@ -11917,12 +11917,12 @@ else { obj* x_196; uint8 x_198; obj* x_199; obj* x_201; obj* x_202; x_196 = lean::cnstr_get(x_188, 0); -lean::inc(x_196); x_198 = lean::cnstr_get_scalar(x_188, sizeof(void*)*1); if (lean::is_exclusive(x_188)) { - lean::cnstr_release(x_188, 0); + lean::cnstr_set(x_188, 0, lean::box(0)); x_199 = x_188; } else { + lean::inc(x_196); lean::dec(x_188); x_199 = lean::box(0); } @@ -11946,12 +11946,12 @@ else obj* x_204; uint8 x_206; obj* x_207; obj* x_208; obj* x_209; obj* x_210; lean::dec(x_175); x_204 = lean::cnstr_get(x_176, 0); -lean::inc(x_204); x_206 = lean::cnstr_get_scalar(x_176, sizeof(void*)*1); if (lean::is_exclusive(x_176)) { - lean::cnstr_release(x_176, 0); + lean::cnstr_set(x_176, 0, lean::box(0)); x_207 = x_176; } else { + lean::inc(x_204); lean::dec(x_176); x_207 = lean::box(0); } @@ -11983,12 +11983,12 @@ else { obj* x_218; uint8 x_220; obj* x_221; obj* x_223; obj* x_224; x_218 = lean::cnstr_get(x_210, 0); -lean::inc(x_218); x_220 = lean::cnstr_get_scalar(x_210, sizeof(void*)*1); if (lean::is_exclusive(x_210)) { - lean::cnstr_release(x_210, 0); + lean::cnstr_set(x_210, 0, lean::box(0)); x_221 = x_210; } else { + lean::inc(x_218); lean::dec(x_210); x_221 = lean::box(0); } @@ -12012,12 +12012,12 @@ else { obj* x_225; uint8 x_227; obj* x_228; obj* x_230; obj* x_231; x_225 = lean::cnstr_get(x_170, 0); -lean::inc(x_225); x_227 = lean::cnstr_get_scalar(x_170, sizeof(void*)*1); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); + lean::cnstr_set(x_170, 0, lean::box(0)); x_228 = x_170; } else { + lean::inc(x_225); lean::dec(x_170); x_228 = lean::box(0); } @@ -12059,17 +12059,17 @@ if (lean::obj_tag(x_243) == 0) { obj* x_244; obj* x_246; obj* x_248; obj* x_250; obj* x_251; obj* x_252; obj* x_253; obj* x_254; x_244 = lean::cnstr_get(x_243, 0); -lean::inc(x_244); x_246 = lean::cnstr_get(x_243, 1); -lean::inc(x_246); x_248 = lean::cnstr_get(x_243, 2); -lean::inc(x_248); if (lean::is_exclusive(x_243)) { - lean::cnstr_release(x_243, 0); - lean::cnstr_release(x_243, 1); - lean::cnstr_release(x_243, 2); + lean::cnstr_set(x_243, 0, lean::box(0)); + lean::cnstr_set(x_243, 1, lean::box(0)); + lean::cnstr_set(x_243, 2, lean::box(0)); x_250 = x_243; } else { + lean::inc(x_244); + lean::inc(x_246); + lean::inc(x_248); lean::dec(x_243); x_250 = lean::box(0); } @@ -12104,12 +12104,12 @@ else { obj* x_262; uint8 x_264; obj* x_265; x_262 = lean::cnstr_get(x_254, 0); -lean::inc(x_262); x_264 = lean::cnstr_get_scalar(x_254, sizeof(void*)*1); if (lean::is_exclusive(x_254)) { - lean::cnstr_release(x_254, 0); + lean::cnstr_set(x_254, 0, lean::box(0)); x_265 = x_254; } else { + lean::inc(x_262); lean::dec(x_254); x_265 = lean::box(0); } @@ -12147,12 +12147,12 @@ else { obj* x_278; uint8 x_280; obj* x_281; x_278 = lean::cnstr_get(x_243, 0); -lean::inc(x_278); x_280 = lean::cnstr_get_scalar(x_243, sizeof(void*)*1); if (lean::is_exclusive(x_243)) { - lean::cnstr_release(x_243, 0); + lean::cnstr_set(x_243, 0, lean::box(0)); x_281 = x_243; } else { + lean::inc(x_278); lean::dec(x_243); x_281 = lean::box(0); } @@ -12203,17 +12203,17 @@ if (lean::obj_tag(x_298) == 0) { obj* x_299; obj* x_301; obj* x_303; obj* x_305; obj* x_306; obj* x_307; obj* x_308; obj* x_309; obj* x_310; x_299 = lean::cnstr_get(x_298, 0); -lean::inc(x_299); x_301 = lean::cnstr_get(x_298, 1); -lean::inc(x_301); x_303 = lean::cnstr_get(x_298, 2); -lean::inc(x_303); if (lean::is_exclusive(x_298)) { - lean::cnstr_release(x_298, 0); - lean::cnstr_release(x_298, 1); - lean::cnstr_release(x_298, 2); + lean::cnstr_set(x_298, 0, lean::box(0)); + lean::cnstr_set(x_298, 1, lean::box(0)); + lean::cnstr_set(x_298, 2, lean::box(0)); x_305 = x_298; } else { + lean::inc(x_299); + lean::inc(x_301); + lean::inc(x_303); lean::dec(x_298); x_305 = lean::box(0); } @@ -12272,12 +12272,12 @@ else obj* x_330; uint8 x_332; obj* x_333; obj* x_334; obj* x_335; obj* x_336; lean::dec(x_235); x_330 = lean::cnstr_get(x_298, 0); -lean::inc(x_330); x_332 = lean::cnstr_get_scalar(x_298, sizeof(void*)*1); if (lean::is_exclusive(x_298)) { - lean::cnstr_release(x_298, 0); + lean::cnstr_set(x_298, 0, lean::box(0)); x_333 = x_298; } else { + lean::inc(x_330); lean::dec(x_298); x_333 = lean::box(0); } @@ -12338,17 +12338,17 @@ if (lean::obj_tag(x_355) == 0) { obj* x_356; obj* x_358; obj* x_360; obj* x_362; obj* x_363; obj* x_364; obj* x_365; obj* x_366; obj* x_367; x_356 = lean::cnstr_get(x_355, 0); -lean::inc(x_356); x_358 = lean::cnstr_get(x_355, 1); -lean::inc(x_358); x_360 = lean::cnstr_get(x_355, 2); -lean::inc(x_360); if (lean::is_exclusive(x_355)) { - lean::cnstr_release(x_355, 0); - lean::cnstr_release(x_355, 1); - lean::cnstr_release(x_355, 2); + lean::cnstr_set(x_355, 0, lean::box(0)); + lean::cnstr_set(x_355, 1, lean::box(0)); + lean::cnstr_set(x_355, 2, lean::box(0)); x_362 = x_355; } else { + lean::inc(x_356); + lean::inc(x_358); + lean::inc(x_360); lean::dec(x_355); x_362 = lean::box(0); } @@ -12389,12 +12389,12 @@ else obj* x_375; uint8 x_377; obj* x_378; obj* x_379; obj* x_380; obj* x_381; lean::dec(x_159); x_375 = lean::cnstr_get(x_355, 0); -lean::inc(x_375); x_377 = lean::cnstr_get_scalar(x_355, sizeof(void*)*1); if (lean::is_exclusive(x_355)) { - lean::cnstr_release(x_355, 0); + lean::cnstr_set(x_355, 0, lean::box(0)); x_378 = x_355; } else { + lean::inc(x_375); lean::dec(x_355); x_378 = lean::box(0); } @@ -12436,17 +12436,17 @@ if (lean::obj_tag(x_388) == 0) { obj* x_389; obj* x_391; obj* x_393; obj* x_395; obj* x_396; obj* x_397; obj* x_398; obj* x_399; obj* x_400; x_389 = lean::cnstr_get(x_388, 0); -lean::inc(x_389); x_391 = lean::cnstr_get(x_388, 1); -lean::inc(x_391); x_393 = lean::cnstr_get(x_388, 2); -lean::inc(x_393); if (lean::is_exclusive(x_388)) { - lean::cnstr_release(x_388, 0); - lean::cnstr_release(x_388, 1); - lean::cnstr_release(x_388, 2); + lean::cnstr_set(x_388, 0, lean::box(0)); + lean::cnstr_set(x_388, 1, lean::box(0)); + lean::cnstr_set(x_388, 2, lean::box(0)); x_395 = x_388; } else { + lean::inc(x_389); + lean::inc(x_391); + lean::inc(x_393); lean::dec(x_388); x_395 = lean::box(0); } @@ -12481,12 +12481,12 @@ else { obj* x_408; uint8 x_410; obj* x_411; obj* x_413; obj* x_414; x_408 = lean::cnstr_get(x_400, 0); -lean::inc(x_408); x_410 = lean::cnstr_get_scalar(x_400, sizeof(void*)*1); if (lean::is_exclusive(x_400)) { - lean::cnstr_release(x_400, 0); + lean::cnstr_set(x_400, 0, lean::box(0)); x_411 = x_400; } else { + lean::inc(x_408); lean::dec(x_400); x_411 = lean::box(0); } @@ -12510,12 +12510,12 @@ else obj* x_416; uint8 x_418; obj* x_419; obj* x_420; obj* x_421; obj* x_422; lean::dec(x_163); x_416 = lean::cnstr_get(x_388, 0); -lean::inc(x_416); x_418 = lean::cnstr_get_scalar(x_388, sizeof(void*)*1); if (lean::is_exclusive(x_388)) { - lean::cnstr_release(x_388, 0); + lean::cnstr_set(x_388, 0, lean::box(0)); x_419 = x_388; } else { + lean::inc(x_416); lean::dec(x_388); x_419 = lean::box(0); } @@ -12547,12 +12547,12 @@ else { obj* x_430; uint8 x_432; obj* x_433; obj* x_435; obj* x_436; x_430 = lean::cnstr_get(x_422, 0); -lean::inc(x_430); x_432 = lean::cnstr_get_scalar(x_422, sizeof(void*)*1); if (lean::is_exclusive(x_422)) { - lean::cnstr_release(x_422, 0); + lean::cnstr_set(x_422, 0, lean::box(0)); x_433 = x_422; } else { + lean::inc(x_430); lean::dec(x_422); x_433 = lean::box(0); } @@ -12581,17 +12581,17 @@ if (lean::obj_tag(x_437) == 0) { obj* x_438; obj* x_440; obj* x_442; obj* x_444; obj* x_445; obj* x_446; obj* x_447; obj* x_448; obj* x_449; x_438 = lean::cnstr_get(x_437, 0); -lean::inc(x_438); x_440 = lean::cnstr_get(x_437, 1); -lean::inc(x_440); x_442 = lean::cnstr_get(x_437, 2); -lean::inc(x_442); if (lean::is_exclusive(x_437)) { - lean::cnstr_release(x_437, 0); - lean::cnstr_release(x_437, 1); - lean::cnstr_release(x_437, 2); + lean::cnstr_set(x_437, 0, lean::box(0)); + lean::cnstr_set(x_437, 1, lean::box(0)); + lean::cnstr_set(x_437, 2, lean::box(0)); x_444 = x_437; } else { + lean::inc(x_438); + lean::inc(x_440); + lean::inc(x_442); lean::dec(x_437); x_444 = lean::box(0); } @@ -12631,12 +12631,12 @@ else obj* x_456; uint8 x_458; obj* x_459; obj* x_460; obj* x_461; obj* x_462; lean::dec(x_80); x_456 = lean::cnstr_get(x_437, 0); -lean::inc(x_456); x_458 = lean::cnstr_get_scalar(x_437, sizeof(void*)*1); if (lean::is_exclusive(x_437)) { - lean::cnstr_release(x_437, 0); + lean::cnstr_set(x_437, 0, lean::box(0)); x_459 = x_437; } else { + lean::inc(x_456); lean::dec(x_437); x_459 = lean::box(0); } @@ -12677,17 +12677,17 @@ if (lean::obj_tag(x_468) == 0) { obj* x_469; obj* x_471; obj* x_473; obj* x_475; obj* x_476; obj* x_477; obj* x_478; obj* x_479; obj* x_480; x_469 = lean::cnstr_get(x_468, 0); -lean::inc(x_469); x_471 = lean::cnstr_get(x_468, 1); -lean::inc(x_471); x_473 = lean::cnstr_get(x_468, 2); -lean::inc(x_473); if (lean::is_exclusive(x_468)) { - lean::cnstr_release(x_468, 0); - lean::cnstr_release(x_468, 1); - lean::cnstr_release(x_468, 2); + lean::cnstr_set(x_468, 0, lean::box(0)); + lean::cnstr_set(x_468, 1, lean::box(0)); + lean::cnstr_set(x_468, 2, lean::box(0)); x_475 = x_468; } else { + lean::inc(x_469); + lean::inc(x_471); + lean::inc(x_473); lean::dec(x_468); x_475 = lean::box(0); } @@ -12722,12 +12722,12 @@ else { obj* x_488; uint8 x_490; obj* x_491; obj* x_493; obj* x_494; x_488 = lean::cnstr_get(x_480, 0); -lean::inc(x_488); x_490 = lean::cnstr_get_scalar(x_480, sizeof(void*)*1); if (lean::is_exclusive(x_480)) { - lean::cnstr_release(x_480, 0); + lean::cnstr_set(x_480, 0, lean::box(0)); x_491 = x_480; } else { + lean::inc(x_488); lean::dec(x_480); x_491 = lean::box(0); } @@ -12751,12 +12751,12 @@ else obj* x_496; uint8 x_498; obj* x_499; obj* x_500; obj* x_501; obj* x_502; lean::dec(x_84); x_496 = lean::cnstr_get(x_468, 0); -lean::inc(x_496); x_498 = lean::cnstr_get_scalar(x_468, sizeof(void*)*1); if (lean::is_exclusive(x_468)) { - lean::cnstr_release(x_468, 0); + lean::cnstr_set(x_468, 0, lean::box(0)); x_499 = x_468; } else { + lean::inc(x_496); lean::dec(x_468); x_499 = lean::box(0); } @@ -12788,12 +12788,12 @@ else { obj* x_510; uint8 x_512; obj* x_513; obj* x_515; obj* x_516; x_510 = lean::cnstr_get(x_502, 0); -lean::inc(x_510); x_512 = lean::cnstr_get_scalar(x_502, sizeof(void*)*1); if (lean::is_exclusive(x_502)) { - lean::cnstr_release(x_502, 0); + lean::cnstr_set(x_502, 0, lean::box(0)); x_513 = x_502; } else { + lean::inc(x_510); lean::dec(x_502); x_513 = lean::box(0); } @@ -12823,17 +12823,17 @@ if (lean::obj_tag(x_517) == 0) { obj* x_518; obj* x_520; obj* x_522; obj* x_524; obj* x_525; obj* x_526; obj* x_527; obj* x_528; obj* x_529; x_518 = lean::cnstr_get(x_517, 0); -lean::inc(x_518); x_520 = lean::cnstr_get(x_517, 1); -lean::inc(x_520); x_522 = lean::cnstr_get(x_517, 2); -lean::inc(x_522); if (lean::is_exclusive(x_517)) { - lean::cnstr_release(x_517, 0); - lean::cnstr_release(x_517, 1); - lean::cnstr_release(x_517, 2); + lean::cnstr_set(x_517, 0, lean::box(0)); + lean::cnstr_set(x_517, 1, lean::box(0)); + lean::cnstr_set(x_517, 2, lean::box(0)); x_524 = x_517; } else { + lean::inc(x_518); + lean::inc(x_520); + lean::inc(x_522); lean::dec(x_517); x_524 = lean::box(0); } @@ -12857,12 +12857,12 @@ else obj* x_531; uint8 x_533; obj* x_534; obj* x_535; obj* x_536; obj* x_537; lean::dec(x_3); x_531 = lean::cnstr_get(x_517, 0); -lean::inc(x_531); x_533 = lean::cnstr_get_scalar(x_517, sizeof(void*)*1); if (lean::is_exclusive(x_517)) { - lean::cnstr_release(x_517, 0); + lean::cnstr_set(x_517, 0, lean::box(0)); x_534 = x_517; } else { + lean::inc(x_531); lean::dec(x_517); x_534 = lean::box(0); } @@ -12887,17 +12887,17 @@ if (lean::obj_tag(x_538) == 0) { obj* x_539; obj* x_541; obj* x_543; obj* x_545; obj* x_546; obj* x_547; obj* x_548; obj* x_549; obj* x_550; x_539 = lean::cnstr_get(x_538, 0); -lean::inc(x_539); x_541 = lean::cnstr_get(x_538, 1); -lean::inc(x_541); x_543 = lean::cnstr_get(x_538, 2); -lean::inc(x_543); if (lean::is_exclusive(x_538)) { - lean::cnstr_release(x_538, 0); - lean::cnstr_release(x_538, 1); - lean::cnstr_release(x_538, 2); + lean::cnstr_set(x_538, 0, lean::box(0)); + lean::cnstr_set(x_538, 1, lean::box(0)); + lean::cnstr_set(x_538, 2, lean::box(0)); x_545 = x_538; } else { + lean::inc(x_539); + lean::inc(x_541); + lean::inc(x_543); lean::dec(x_538); x_545 = lean::box(0); } @@ -12932,12 +12932,12 @@ else { obj* x_558; uint8 x_560; obj* x_561; obj* x_562; obj* x_563; x_558 = lean::cnstr_get(x_550, 0); -lean::inc(x_558); x_560 = lean::cnstr_get_scalar(x_550, sizeof(void*)*1); if (lean::is_exclusive(x_550)) { - lean::cnstr_release(x_550, 0); + lean::cnstr_set(x_550, 0, lean::box(0)); x_561 = x_550; } else { + lean::inc(x_558); lean::dec(x_550); x_561 = lean::box(0); } @@ -12958,12 +12958,12 @@ else obj* x_565; uint8 x_567; obj* x_568; obj* x_569; obj* x_570; obj* x_571; lean::dec(x_7); x_565 = lean::cnstr_get(x_538, 0); -lean::inc(x_565); x_567 = lean::cnstr_get_scalar(x_538, sizeof(void*)*1); if (lean::is_exclusive(x_538)) { - lean::cnstr_release(x_538, 0); + lean::cnstr_set(x_538, 0, lean::box(0)); x_568 = x_538; } else { + lean::inc(x_565); lean::dec(x_538); x_568 = lean::box(0); } @@ -12995,12 +12995,12 @@ else { obj* x_579; uint8 x_581; obj* x_582; obj* x_583; obj* x_584; x_579 = lean::cnstr_get(x_571, 0); -lean::inc(x_579); x_581 = lean::cnstr_get_scalar(x_571, sizeof(void*)*1); if (lean::is_exclusive(x_571)) { - lean::cnstr_release(x_571, 0); + lean::cnstr_set(x_571, 0, lean::box(0)); x_582 = x_571; } else { + lean::inc(x_579); lean::dec(x_571); x_582 = lean::box(0); } @@ -13060,17 +13060,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -13166,12 +13166,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -13193,12 +13193,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -13222,17 +13222,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -13256,12 +13256,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -13306,17 +13306,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_5, 2); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -13400,12 +13400,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; x_60 = lean::cnstr_get(x_52, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_52, sizeof(void*)*1); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_63 = x_52; } else { + lean::inc(x_60); lean::dec(x_52); x_63 = lean::box(0); } @@ -13427,12 +13427,12 @@ lean::dec(x_12); lean::dec(x_6); lean::dec(x_23); x_69 = lean::cnstr_get(x_38, 0); -lean::inc(x_69); x_71 = lean::cnstr_get_scalar(x_38, sizeof(void*)*1); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_72 = x_38; } else { + lean::inc(x_69); lean::dec(x_38); x_72 = lean::box(0); } @@ -13468,12 +13468,12 @@ else { obj* x_87; uint8 x_89; obj* x_90; obj* x_91; obj* x_92; x_87 = lean::cnstr_get(x_79, 0); -lean::inc(x_87); x_89 = lean::cnstr_get_scalar(x_79, sizeof(void*)*1); if (lean::is_exclusive(x_79)) { - lean::cnstr_release(x_79, 0); + lean::cnstr_set(x_79, 0, lean::box(0)); x_90 = x_79; } else { + lean::inc(x_87); lean::dec(x_79); x_90 = lean::box(0); } @@ -13496,12 +13496,12 @@ lean::dec(x_12); lean::dec(x_6); lean::dec(x_23); x_96 = lean::cnstr_get(x_31, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_31, sizeof(void*)*1); if (lean::is_exclusive(x_31)) { - lean::cnstr_release(x_31, 0); + lean::cnstr_set(x_31, 0, lean::box(0)); x_99 = x_31; } else { + lean::inc(x_96); lean::dec(x_31); x_99 = lean::box(0); } @@ -13536,12 +13536,12 @@ else { obj* x_113; uint8 x_115; obj* x_116; obj* x_117; obj* x_118; x_113 = lean::cnstr_get(x_105, 0); -lean::inc(x_113); x_115 = lean::cnstr_get_scalar(x_105, sizeof(void*)*1); if (lean::is_exclusive(x_105)) { - lean::cnstr_release(x_105, 0); + lean::cnstr_set(x_105, 0, lean::box(0)); x_116 = x_105; } else { + lean::inc(x_113); lean::dec(x_105); x_116 = lean::box(0); } @@ -13563,12 +13563,12 @@ obj* x_121; uint8 x_123; obj* x_124; obj* x_125; obj* x_126; obj* x_127; obj* x_ lean::dec(x_12); lean::dec(x_6); x_121 = lean::cnstr_get(x_22, 0); -lean::inc(x_121); x_123 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_124 = x_22; } else { + lean::inc(x_121); lean::dec(x_22); x_124 = lean::box(0); } @@ -13602,12 +13602,12 @@ else { obj* x_137; uint8 x_139; obj* x_140; obj* x_141; obj* x_142; x_137 = lean::cnstr_get(x_129, 0); -lean::inc(x_137); x_139 = lean::cnstr_get_scalar(x_129, sizeof(void*)*1); if (lean::is_exclusive(x_129)) { - lean::cnstr_release(x_129, 0); + lean::cnstr_set(x_129, 0, lean::box(0)); x_140 = x_129; } else { + lean::inc(x_137); lean::dec(x_129); x_140 = lean::box(0); } @@ -13629,12 +13629,12 @@ obj* x_145; uint8 x_147; obj* x_148; obj* x_149; obj* x_150; obj* x_151; obj* x_ lean::dec(x_12); lean::dec(x_6); x_145 = lean::cnstr_get(x_14, 0); -lean::inc(x_145); x_147 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_148 = x_14; } else { + lean::inc(x_145); lean::dec(x_14); x_148 = lean::box(0); } @@ -13667,12 +13667,12 @@ else { obj* x_160; uint8 x_162; obj* x_163; obj* x_164; obj* x_165; x_160 = lean::cnstr_get(x_152, 0); -lean::inc(x_160); x_162 = lean::cnstr_get_scalar(x_152, sizeof(void*)*1); if (lean::is_exclusive(x_152)) { - lean::cnstr_release(x_152, 0); + lean::cnstr_set(x_152, 0, lean::box(0)); x_163 = x_152; } else { + lean::inc(x_160); lean::dec(x_152); x_163 = lean::box(0); } @@ -13692,11 +13692,11 @@ else { obj* x_166; obj* x_168; uint8 x_169; obj* x_170; obj* x_171; x_166 = lean::cnstr_get(x_5, 0); -lean::inc(x_166); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_168 = x_5; } else { + lean::inc(x_166); lean::dec(x_5); x_168 = lean::box(0); } @@ -13724,17 +13724,17 @@ if (lean::obj_tag(x_177) == 0) { obj* x_178; obj* x_180; obj* x_182; obj* x_184; obj* x_185; uint8 x_186; obj* x_187; obj* x_188; obj* x_189; obj* x_190; obj* x_191; x_178 = lean::cnstr_get(x_177, 0); -lean::inc(x_178); x_180 = lean::cnstr_get(x_177, 1); -lean::inc(x_180); x_182 = lean::cnstr_get(x_177, 2); -lean::inc(x_182); if (lean::is_exclusive(x_177)) { - lean::cnstr_release(x_177, 0); - lean::cnstr_release(x_177, 1); - lean::cnstr_release(x_177, 2); + lean::cnstr_set(x_177, 0, lean::box(0)); + lean::cnstr_set(x_177, 1, lean::box(0)); + lean::cnstr_set(x_177, 2, lean::box(0)); x_184 = x_177; } else { + lean::inc(x_178); + lean::inc(x_180); + lean::inc(x_182); lean::dec(x_177); x_184 = lean::box(0); } @@ -13763,12 +13763,12 @@ obj* x_194; uint8 x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; lean::dec(x_174); lean::dec(x_172); x_194 = lean::cnstr_get(x_177, 0); -lean::inc(x_194); x_196 = lean::cnstr_get_scalar(x_177, sizeof(void*)*1); if (lean::is_exclusive(x_177)) { - lean::cnstr_release(x_177, 0); + lean::cnstr_set(x_177, 0, lean::box(0)); x_197 = x_177; } else { + lean::inc(x_194); lean::dec(x_177); x_197 = lean::box(0); } @@ -13838,12 +13838,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_5); x_28 = lean::cnstr_get(x_19, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_31 = x_19; } else { + lean::inc(x_28); lean::dec(x_19); x_31 = lean::box(0); } @@ -13863,12 +13863,12 @@ else obj* x_35; uint8 x_37; obj* x_38; obj* x_39; obj* x_40; lean::dec(x_5); x_35 = lean::cnstr_get(x_12, 0); -lean::inc(x_35); x_37 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_38 = x_12; } else { + lean::inc(x_35); lean::dec(x_12); x_38 = lean::box(0); } @@ -13945,17 +13945,17 @@ if (lean::obj_tag(x_42) == 0) { obj* x_66; obj* x_68; obj* x_70; obj* x_72; obj* x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_77; x_66 = lean::cnstr_get(x_42, 0); -lean::inc(x_66); x_68 = lean::cnstr_get(x_42, 1); -lean::inc(x_68); x_70 = lean::cnstr_get(x_42, 2); -lean::inc(x_70); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); - lean::cnstr_release(x_42, 1); - lean::cnstr_release(x_42, 2); + lean::cnstr_set(x_42, 0, lean::box(0)); + lean::cnstr_set(x_42, 1, lean::box(0)); + lean::cnstr_set(x_42, 2, lean::box(0)); x_72 = x_42; } else { + lean::inc(x_66); + lean::inc(x_68); + lean::inc(x_70); lean::dec(x_42); x_72 = lean::box(0); } @@ -13980,12 +13980,12 @@ else obj* x_79; uint8 x_81; obj* x_82; obj* x_83; obj* x_84; obj* x_85; lean::dec(x_7); x_79 = lean::cnstr_get(x_42, 0); -lean::inc(x_79); x_81 = lean::cnstr_get_scalar(x_42, sizeof(void*)*1); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_82 = x_42; } else { + lean::inc(x_79); lean::dec(x_42); x_82 = lean::box(0); } @@ -14013,15 +14013,15 @@ if (lean::obj_tag(x_88) == 0) { obj* x_89; obj* x_91; obj* x_93; obj* x_94; obj* x_95; x_89 = lean::cnstr_get(x_88, 1); -lean::inc(x_89); x_91 = lean::cnstr_get(x_88, 2); -lean::inc(x_91); if (lean::is_exclusive(x_88)) { lean::cnstr_release(x_88, 0); - lean::cnstr_release(x_88, 1); - lean::cnstr_release(x_88, 2); + lean::cnstr_set(x_88, 1, lean::box(0)); + lean::cnstr_set(x_88, 2, lean::box(0)); x_93 = x_88; } else { + lean::inc(x_89); + lean::inc(x_91); lean::dec(x_88); x_93 = lean::box(0); } @@ -14058,12 +14058,12 @@ else obj* x_109; uint8 x_111; obj* x_112; obj* x_113; obj* x_114; lean::dec(x_93); x_109 = lean::cnstr_get(x_95, 0); -lean::inc(x_109); x_111 = lean::cnstr_get_scalar(x_95, sizeof(void*)*1); if (lean::is_exclusive(x_95)) { - lean::cnstr_release(x_95, 0); + lean::cnstr_set(x_95, 0, lean::box(0)); x_112 = x_95; } else { + lean::inc(x_109); lean::dec(x_95); x_112 = lean::box(0); } @@ -14082,12 +14082,12 @@ else { obj* x_115; uint8 x_117; obj* x_118; obj* x_119; obj* x_120; x_115 = lean::cnstr_get(x_88, 0); -lean::inc(x_115); x_117 = lean::cnstr_get_scalar(x_88, sizeof(void*)*1); if (lean::is_exclusive(x_88)) { - lean::cnstr_release(x_88, 0); + lean::cnstr_set(x_88, 0, lean::box(0)); x_118 = x_88; } else { + lean::inc(x_115); lean::dec(x_88); x_118 = lean::box(0); } @@ -14170,17 +14170,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -14200,17 +14200,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_12, 2); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -14244,12 +14244,12 @@ obj* x_34; uint8 x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; lean::dec(x_13); lean::dec(x_19); x_34 = lean::cnstr_get(x_20, 0); -lean::inc(x_34); x_36 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_37 = x_20; } else { + lean::inc(x_34); lean::dec(x_20); x_37 = lean::box(0); } @@ -14269,12 +14269,12 @@ else { obj* x_41; uint8 x_43; obj* x_44; obj* x_45; obj* x_46; x_41 = lean::cnstr_get(x_12, 0); -lean::inc(x_41); x_43 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_44 = x_12; } else { + lean::inc(x_41); lean::dec(x_12); x_44 = lean::box(0); } @@ -14293,12 +14293,12 @@ else { obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; x_47 = lean::cnstr_get(x_1, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_50 = x_1; } else { + lean::inc(x_47); lean::dec(x_1); x_50 = lean::box(0); } @@ -14359,15 +14359,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_11; x_6 = lean::cnstr_get(x_5, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 2); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -14403,12 +14403,12 @@ else obj* x_25; uint8 x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; lean::dec(x_10); x_25 = lean::cnstr_get(x_11, 0); -lean::inc(x_25); x_27 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_28 = x_11; } else { + lean::inc(x_25); lean::dec(x_11); x_28 = lean::box(0); } @@ -14429,12 +14429,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; x_32 = lean::cnstr_get(x_5, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_35 = x_5; } else { + lean::inc(x_32); lean::dec(x_5); x_35 = lean::box(0); } @@ -14473,15 +14473,15 @@ if (lean::obj_tag(x_49) == 0) { obj* x_50; obj* x_52; obj* x_54; obj* x_55; x_50 = lean::cnstr_get(x_49, 1); -lean::inc(x_50); x_52 = lean::cnstr_get(x_49, 2); -lean::inc(x_52); if (lean::is_exclusive(x_49)) { lean::cnstr_release(x_49, 0); - lean::cnstr_release(x_49, 1); - lean::cnstr_release(x_49, 2); + lean::cnstr_set(x_49, 1, lean::box(0)); + lean::cnstr_set(x_49, 2, lean::box(0)); x_54 = x_49; } else { + lean::inc(x_50); + lean::inc(x_52); lean::dec(x_49); x_54 = lean::box(0); } @@ -14533,12 +14533,12 @@ else obj* x_74; uint8 x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; lean::dec(x_54); x_74 = lean::cnstr_get(x_55, 0); -lean::inc(x_74); x_76 = lean::cnstr_get_scalar(x_55, sizeof(void*)*1); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_77 = x_55; } else { + lean::inc(x_74); lean::dec(x_55); x_77 = lean::box(0); } @@ -14575,12 +14575,12 @@ else { obj* x_86; uint8 x_88; obj* x_89; obj* x_91; obj* x_92; x_86 = lean::cnstr_get(x_49, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_49, sizeof(void*)*1); if (lean::is_exclusive(x_49)) { - lean::cnstr_release(x_49, 0); + lean::cnstr_set(x_49, 0, lean::box(0)); x_89 = x_49; } else { + lean::inc(x_86); lean::dec(x_49); x_89 = lean::box(0); } @@ -14618,15 +14618,15 @@ if (lean::obj_tag(x_101) == 0) { obj* x_102; obj* x_104; obj* x_106; obj* x_107; x_102 = lean::cnstr_get(x_101, 1); -lean::inc(x_102); x_104 = lean::cnstr_get(x_101, 2); -lean::inc(x_104); if (lean::is_exclusive(x_101)) { lean::cnstr_release(x_101, 0); - lean::cnstr_release(x_101, 1); - lean::cnstr_release(x_101, 2); + lean::cnstr_set(x_101, 1, lean::box(0)); + lean::cnstr_set(x_101, 2, lean::box(0)); x_106 = x_101; } else { + lean::inc(x_102); + lean::inc(x_104); lean::dec(x_101); x_106 = lean::box(0); } @@ -14673,12 +14673,12 @@ else { obj* x_127; uint8 x_129; obj* x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; x_127 = lean::cnstr_get(x_119, 0); -lean::inc(x_127); x_129 = lean::cnstr_get_scalar(x_119, sizeof(void*)*1); if (lean::is_exclusive(x_119)) { - lean::cnstr_release(x_119, 0); + lean::cnstr_set(x_119, 0, lean::box(0)); x_130 = x_119; } else { + lean::inc(x_127); lean::dec(x_119); x_130 = lean::box(0); } @@ -14700,12 +14700,12 @@ else obj* x_136; uint8 x_138; obj* x_139; obj* x_140; obj* x_141; obj* x_142; lean::dec(x_106); x_136 = lean::cnstr_get(x_107, 0); -lean::inc(x_136); x_138 = lean::cnstr_get_scalar(x_107, sizeof(void*)*1); if (lean::is_exclusive(x_107)) { - lean::cnstr_release(x_107, 0); + lean::cnstr_set(x_107, 0, lean::box(0)); x_139 = x_107; } else { + lean::inc(x_136); lean::dec(x_107); x_139 = lean::box(0); } @@ -14737,12 +14737,12 @@ else { obj* x_150; uint8 x_152; obj* x_153; obj* x_154; obj* x_155; obj* x_156; obj* x_157; x_150 = lean::cnstr_get(x_142, 0); -lean::inc(x_150); x_152 = lean::cnstr_get_scalar(x_142, sizeof(void*)*1); if (lean::is_exclusive(x_142)) { - lean::cnstr_release(x_142, 0); + lean::cnstr_set(x_142, 0, lean::box(0)); x_153 = x_142; } else { + lean::inc(x_150); lean::dec(x_142); x_153 = lean::box(0); } @@ -14764,12 +14764,12 @@ else { obj* x_158; uint8 x_160; obj* x_161; obj* x_162; obj* x_163; obj* x_164; obj* x_165; x_158 = lean::cnstr_get(x_101, 0); -lean::inc(x_158); x_160 = lean::cnstr_get_scalar(x_101, sizeof(void*)*1); if (lean::is_exclusive(x_101)) { - lean::cnstr_release(x_101, 0); + lean::cnstr_set(x_101, 0, lean::box(0)); x_161 = x_101; } else { + lean::inc(x_158); lean::dec(x_101); x_161 = lean::box(0); } @@ -14829,12 +14829,12 @@ else obj* x_190; uint8 x_192; obj* x_193; obj* x_194; obj* x_195; obj* x_196; obj* x_197; obj* x_198; lean::dec(x_95); x_190 = lean::cnstr_get(x_181, 0); -lean::inc(x_190); x_192 = lean::cnstr_get_scalar(x_181, sizeof(void*)*1); if (lean::is_exclusive(x_181)) { - lean::cnstr_release(x_181, 0); + lean::cnstr_set(x_181, 0, lean::box(0)); x_193 = x_181; } else { + lean::inc(x_190); lean::dec(x_181); x_193 = lean::box(0); } @@ -14857,12 +14857,12 @@ else obj* x_200; uint8 x_202; obj* x_203; obj* x_204; obj* x_205; obj* x_206; obj* x_207; obj* x_208; lean::dec(x_95); x_200 = lean::cnstr_get(x_174, 0); -lean::inc(x_200); x_202 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_203 = x_174; } else { + lean::inc(x_200); lean::dec(x_174); x_203 = lean::box(0); } @@ -14888,15 +14888,15 @@ if (lean::obj_tag(x_210) == 0) { obj* x_211; obj* x_213; obj* x_215; obj* x_216; obj* x_217; obj* x_218; obj* x_219; x_211 = lean::cnstr_get(x_210, 1); -lean::inc(x_211); x_213 = lean::cnstr_get(x_210, 2); -lean::inc(x_213); if (lean::is_exclusive(x_210)) { lean::cnstr_release(x_210, 0); - lean::cnstr_release(x_210, 1); - lean::cnstr_release(x_210, 2); + lean::cnstr_set(x_210, 1, lean::box(0)); + lean::cnstr_set(x_210, 2, lean::box(0)); x_215 = x_210; } else { + lean::inc(x_211); + lean::inc(x_213); lean::dec(x_210); x_215 = lean::box(0); } @@ -14915,17 +14915,17 @@ if (lean::obj_tag(x_219) == 0) { obj* x_220; obj* x_222; obj* x_224; obj* x_226; obj* x_227; obj* x_228; obj* x_229; obj* x_230; obj* x_231; obj* x_232; x_220 = lean::cnstr_get(x_219, 0); -lean::inc(x_220); x_222 = lean::cnstr_get(x_219, 1); -lean::inc(x_222); x_224 = lean::cnstr_get(x_219, 2); -lean::inc(x_224); if (lean::is_exclusive(x_219)) { - lean::cnstr_release(x_219, 0); - lean::cnstr_release(x_219, 1); - lean::cnstr_release(x_219, 2); + lean::cnstr_set(x_219, 0, lean::box(0)); + lean::cnstr_set(x_219, 1, lean::box(0)); + lean::cnstr_set(x_219, 2, lean::box(0)); x_226 = x_219; } else { + lean::inc(x_220); + lean::inc(x_222); + lean::inc(x_224); lean::dec(x_219); x_226 = lean::box(0); } @@ -14949,12 +14949,12 @@ else obj* x_234; uint8 x_236; obj* x_237; obj* x_238; obj* x_239; obj* x_240; obj* x_241; obj* x_242; lean::dec(x_95); x_234 = lean::cnstr_get(x_219, 0); -lean::inc(x_234); x_236 = lean::cnstr_get_scalar(x_219, sizeof(void*)*1); if (lean::is_exclusive(x_219)) { - lean::cnstr_release(x_219, 0); + lean::cnstr_set(x_219, 0, lean::box(0)); x_237 = x_219; } else { + lean::inc(x_234); lean::dec(x_219); x_237 = lean::box(0); } @@ -14977,12 +14977,12 @@ else obj* x_244; uint8 x_246; obj* x_247; obj* x_248; obj* x_249; obj* x_250; lean::dec(x_169); x_244 = lean::cnstr_get(x_210, 0); -lean::inc(x_244); x_246 = lean::cnstr_get_scalar(x_210, sizeof(void*)*1); if (lean::is_exclusive(x_210)) { - lean::cnstr_release(x_210, 0); + lean::cnstr_set(x_210, 0, lean::box(0)); x_247 = x_210; } else { + lean::inc(x_244); lean::dec(x_210); x_247 = lean::box(0); } @@ -14999,17 +14999,17 @@ if (lean::obj_tag(x_250) == 0) { obj* x_251; obj* x_253; obj* x_255; obj* x_257; obj* x_258; obj* x_259; obj* x_260; obj* x_261; obj* x_262; obj* x_263; obj* x_264; x_251 = lean::cnstr_get(x_250, 0); -lean::inc(x_251); x_253 = lean::cnstr_get(x_250, 1); -lean::inc(x_253); x_255 = lean::cnstr_get(x_250, 2); -lean::inc(x_255); if (lean::is_exclusive(x_250)) { - lean::cnstr_release(x_250, 0); - lean::cnstr_release(x_250, 1); - lean::cnstr_release(x_250, 2); + lean::cnstr_set(x_250, 0, lean::box(0)); + lean::cnstr_set(x_250, 1, lean::box(0)); + lean::cnstr_set(x_250, 2, lean::box(0)); x_257 = x_250; } else { + lean::inc(x_251); + lean::inc(x_253); + lean::inc(x_255); lean::dec(x_250); x_257 = lean::box(0); } @@ -15034,12 +15034,12 @@ else obj* x_266; uint8 x_268; obj* x_269; obj* x_270; obj* x_271; obj* x_272; obj* x_273; obj* x_274; lean::dec(x_95); x_266 = lean::cnstr_get(x_250, 0); -lean::inc(x_266); x_268 = lean::cnstr_get_scalar(x_250, sizeof(void*)*1); if (lean::is_exclusive(x_250)) { - lean::cnstr_release(x_250, 0); + lean::cnstr_set(x_250, 0, lean::box(0)); x_269 = x_250; } else { + lean::inc(x_266); lean::dec(x_250); x_269 = lean::box(0); } @@ -15089,17 +15089,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_11, 2); -lean::inc(x_16); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_18 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_11); x_18 = lean::box(0); } @@ -15144,12 +15144,12 @@ else obj* x_38; uint8 x_40; obj* x_41; obj* x_42; obj* x_43; lean::dec(x_5); x_38 = lean::cnstr_get(x_29, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_29, sizeof(void*)*1); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_41 = x_29; } else { + lean::inc(x_38); lean::dec(x_29); x_41 = lean::box(0); } @@ -15170,12 +15170,12 @@ obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; lean::dec(x_12); lean::dec(x_18); x_46 = lean::cnstr_get(x_20, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_49 = x_20; } else { + lean::inc(x_46); lean::dec(x_20); x_49 = lean::box(0); } @@ -15208,12 +15208,12 @@ else obj* x_61; uint8 x_63; obj* x_64; obj* x_65; obj* x_66; lean::dec(x_5); x_61 = lean::cnstr_get(x_52, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_52, sizeof(void*)*1); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_64 = x_52; } else { + lean::inc(x_61); lean::dec(x_52); x_64 = lean::box(0); } @@ -15234,12 +15234,12 @@ else obj* x_68; uint8 x_70; obj* x_71; obj* x_72; obj* x_73; lean::dec(x_5); x_68 = lean::cnstr_get(x_11, 0); -lean::inc(x_68); x_70 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_71 = x_11; } else { + lean::inc(x_68); lean::dec(x_11); x_71 = lean::box(0); } @@ -15316,17 +15316,17 @@ if (lean::obj_tag(x_75) == 0) { obj* x_99; obj* x_101; obj* x_103; obj* x_105; obj* x_106; obj* x_107; obj* x_108; obj* x_109; obj* x_110; x_99 = lean::cnstr_get(x_75, 0); -lean::inc(x_99); x_101 = lean::cnstr_get(x_75, 1); -lean::inc(x_101); x_103 = lean::cnstr_get(x_75, 2); -lean::inc(x_103); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); - lean::cnstr_release(x_75, 2); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); + lean::cnstr_set(x_75, 2, lean::box(0)); x_105 = x_75; } else { + lean::inc(x_99); + lean::inc(x_101); + lean::inc(x_103); lean::dec(x_75); x_105 = lean::box(0); } @@ -15351,12 +15351,12 @@ else obj* x_112; uint8 x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; lean::dec(x_7); x_112 = lean::cnstr_get(x_75, 0); -lean::inc(x_112); x_114 = lean::cnstr_get_scalar(x_75, sizeof(void*)*1); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); + lean::cnstr_set(x_75, 0, lean::box(0)); x_115 = x_75; } else { + lean::inc(x_112); lean::dec(x_75); x_115 = lean::box(0); } @@ -15383,17 +15383,17 @@ if (lean::obj_tag(x_120) == 0) { obj* x_121; obj* x_123; obj* x_125; obj* x_127; obj* x_128; obj* x_129; x_121 = lean::cnstr_get(x_120, 0); -lean::inc(x_121); x_123 = lean::cnstr_get(x_120, 1); -lean::inc(x_123); x_125 = lean::cnstr_get(x_120, 2); -lean::inc(x_125); if (lean::is_exclusive(x_120)) { - lean::cnstr_release(x_120, 0); - lean::cnstr_release(x_120, 1); - lean::cnstr_release(x_120, 2); + lean::cnstr_set(x_120, 0, lean::box(0)); + lean::cnstr_set(x_120, 1, lean::box(0)); + lean::cnstr_set(x_120, 2, lean::box(0)); x_127 = x_120; } else { + lean::inc(x_121); + lean::inc(x_123); + lean::inc(x_125); lean::dec(x_120); x_127 = lean::box(0); } @@ -15403,15 +15403,15 @@ if (lean::obj_tag(x_129) == 0) { obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_136; obj* x_137; obj* x_138; x_130 = lean::cnstr_get(x_129, 1); -lean::inc(x_130); x_132 = lean::cnstr_get(x_129, 2); -lean::inc(x_132); if (lean::is_exclusive(x_129)) { lean::cnstr_release(x_129, 0); - lean::cnstr_release(x_129, 1); - lean::cnstr_release(x_129, 2); + lean::cnstr_set(x_129, 1, lean::box(0)); + lean::cnstr_set(x_129, 2, lean::box(0)); x_134 = x_129; } else { + lean::inc(x_130); + lean::inc(x_132); lean::dec(x_129); x_134 = lean::box(0); } @@ -15456,12 +15456,12 @@ else obj* x_151; uint8 x_153; obj* x_154; obj* x_155; obj* x_156; lean::dec(x_134); x_151 = lean::cnstr_get(x_138, 0); -lean::inc(x_151); x_153 = lean::cnstr_get_scalar(x_138, sizeof(void*)*1); if (lean::is_exclusive(x_138)) { - lean::cnstr_release(x_138, 0); + lean::cnstr_set(x_138, 0, lean::box(0)); x_154 = x_138; } else { + lean::inc(x_151); lean::dec(x_138); x_154 = lean::box(0); } @@ -15481,12 +15481,12 @@ else obj* x_158; uint8 x_160; obj* x_161; obj* x_162; obj* x_163; obj* x_164; lean::dec(x_121); x_158 = lean::cnstr_get(x_129, 0); -lean::inc(x_158); x_160 = lean::cnstr_get_scalar(x_129, sizeof(void*)*1); if (lean::is_exclusive(x_129)) { - lean::cnstr_release(x_129, 0); + lean::cnstr_set(x_129, 0, lean::box(0)); x_161 = x_129; } else { + lean::inc(x_158); lean::dec(x_129); x_161 = lean::box(0); } @@ -15530,12 +15530,12 @@ else obj* x_178; uint8 x_180; obj* x_181; obj* x_182; obj* x_183; lean::dec(x_127); x_178 = lean::cnstr_get(x_164, 0); -lean::inc(x_178); x_180 = lean::cnstr_get_scalar(x_164, sizeof(void*)*1); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); + lean::cnstr_set(x_164, 0, lean::box(0)); x_181 = x_164; } else { + lean::inc(x_178); lean::dec(x_164); x_181 = lean::box(0); } @@ -15555,12 +15555,12 @@ else { obj* x_184; uint8 x_186; obj* x_187; obj* x_188; obj* x_189; x_184 = lean::cnstr_get(x_120, 0); -lean::inc(x_184); x_186 = lean::cnstr_get_scalar(x_120, sizeof(void*)*1); if (lean::is_exclusive(x_120)) { - lean::cnstr_release(x_120, 0); + lean::cnstr_set(x_120, 0, lean::box(0)); x_187 = x_120; } else { + lean::inc(x_184); lean::dec(x_120); x_187 = lean::box(0); } @@ -15651,17 +15651,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_11, 2); -lean::inc(x_16); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_18 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_11); x_18 = lean::box(0); } @@ -15706,12 +15706,12 @@ else obj* x_38; uint8 x_40; obj* x_41; obj* x_42; obj* x_43; lean::dec(x_5); x_38 = lean::cnstr_get(x_29, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_29, sizeof(void*)*1); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_41 = x_29; } else { + lean::inc(x_38); lean::dec(x_29); x_41 = lean::box(0); } @@ -15732,12 +15732,12 @@ obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; lean::dec(x_12); lean::dec(x_18); x_46 = lean::cnstr_get(x_20, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_49 = x_20; } else { + lean::inc(x_46); lean::dec(x_20); x_49 = lean::box(0); } @@ -15770,12 +15770,12 @@ else obj* x_61; uint8 x_63; obj* x_64; obj* x_65; obj* x_66; lean::dec(x_5); x_61 = lean::cnstr_get(x_52, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_52, sizeof(void*)*1); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_64 = x_52; } else { + lean::inc(x_61); lean::dec(x_52); x_64 = lean::box(0); } @@ -15796,12 +15796,12 @@ else obj* x_68; uint8 x_70; obj* x_71; obj* x_72; obj* x_73; lean::dec(x_5); x_68 = lean::cnstr_get(x_11, 0); -lean::inc(x_68); x_70 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_71 = x_11; } else { + lean::inc(x_68); lean::dec(x_11); x_71 = lean::box(0); } @@ -15878,17 +15878,17 @@ if (lean::obj_tag(x_75) == 0) { obj* x_99; obj* x_101; obj* x_103; obj* x_105; obj* x_106; obj* x_107; obj* x_108; obj* x_109; obj* x_110; x_99 = lean::cnstr_get(x_75, 0); -lean::inc(x_99); x_101 = lean::cnstr_get(x_75, 1); -lean::inc(x_101); x_103 = lean::cnstr_get(x_75, 2); -lean::inc(x_103); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); - lean::cnstr_release(x_75, 2); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); + lean::cnstr_set(x_75, 2, lean::box(0)); x_105 = x_75; } else { + lean::inc(x_99); + lean::inc(x_101); + lean::inc(x_103); lean::dec(x_75); x_105 = lean::box(0); } @@ -15913,12 +15913,12 @@ else obj* x_112; uint8 x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; lean::dec(x_7); x_112 = lean::cnstr_get(x_75, 0); -lean::inc(x_112); x_114 = lean::cnstr_get_scalar(x_75, sizeof(void*)*1); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); + lean::cnstr_set(x_75, 0, lean::box(0)); x_115 = x_75; } else { + lean::inc(x_112); lean::dec(x_75); x_115 = lean::box(0); } @@ -15945,17 +15945,17 @@ if (lean::obj_tag(x_120) == 0) { obj* x_121; obj* x_123; obj* x_125; obj* x_127; obj* x_128; obj* x_129; x_121 = lean::cnstr_get(x_120, 0); -lean::inc(x_121); x_123 = lean::cnstr_get(x_120, 1); -lean::inc(x_123); x_125 = lean::cnstr_get(x_120, 2); -lean::inc(x_125); if (lean::is_exclusive(x_120)) { - lean::cnstr_release(x_120, 0); - lean::cnstr_release(x_120, 1); - lean::cnstr_release(x_120, 2); + lean::cnstr_set(x_120, 0, lean::box(0)); + lean::cnstr_set(x_120, 1, lean::box(0)); + lean::cnstr_set(x_120, 2, lean::box(0)); x_127 = x_120; } else { + lean::inc(x_121); + lean::inc(x_123); + lean::inc(x_125); lean::dec(x_120); x_127 = lean::box(0); } @@ -15965,15 +15965,15 @@ if (lean::obj_tag(x_129) == 0) { obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_136; obj* x_137; obj* x_138; x_130 = lean::cnstr_get(x_129, 1); -lean::inc(x_130); x_132 = lean::cnstr_get(x_129, 2); -lean::inc(x_132); if (lean::is_exclusive(x_129)) { lean::cnstr_release(x_129, 0); - lean::cnstr_release(x_129, 1); - lean::cnstr_release(x_129, 2); + lean::cnstr_set(x_129, 1, lean::box(0)); + lean::cnstr_set(x_129, 2, lean::box(0)); x_134 = x_129; } else { + lean::inc(x_130); + lean::inc(x_132); lean::dec(x_129); x_134 = lean::box(0); } @@ -16018,12 +16018,12 @@ else obj* x_151; uint8 x_153; obj* x_154; obj* x_155; obj* x_156; lean::dec(x_134); x_151 = lean::cnstr_get(x_138, 0); -lean::inc(x_151); x_153 = lean::cnstr_get_scalar(x_138, sizeof(void*)*1); if (lean::is_exclusive(x_138)) { - lean::cnstr_release(x_138, 0); + lean::cnstr_set(x_138, 0, lean::box(0)); x_154 = x_138; } else { + lean::inc(x_151); lean::dec(x_138); x_154 = lean::box(0); } @@ -16043,12 +16043,12 @@ else obj* x_158; uint8 x_160; obj* x_161; obj* x_162; obj* x_163; obj* x_164; lean::dec(x_121); x_158 = lean::cnstr_get(x_129, 0); -lean::inc(x_158); x_160 = lean::cnstr_get_scalar(x_129, sizeof(void*)*1); if (lean::is_exclusive(x_129)) { - lean::cnstr_release(x_129, 0); + lean::cnstr_set(x_129, 0, lean::box(0)); x_161 = x_129; } else { + lean::inc(x_158); lean::dec(x_129); x_161 = lean::box(0); } @@ -16092,12 +16092,12 @@ else obj* x_178; uint8 x_180; obj* x_181; obj* x_182; obj* x_183; lean::dec(x_127); x_178 = lean::cnstr_get(x_164, 0); -lean::inc(x_178); x_180 = lean::cnstr_get_scalar(x_164, sizeof(void*)*1); if (lean::is_exclusive(x_164)) { - lean::cnstr_release(x_164, 0); + lean::cnstr_set(x_164, 0, lean::box(0)); x_181 = x_164; } else { + lean::inc(x_178); lean::dec(x_164); x_181 = lean::box(0); } @@ -16117,12 +16117,12 @@ else { obj* x_184; uint8 x_186; obj* x_187; obj* x_188; obj* x_189; x_184 = lean::cnstr_get(x_120, 0); -lean::inc(x_184); x_186 = lean::cnstr_get_scalar(x_120, sizeof(void*)*1); if (lean::is_exclusive(x_120)) { - lean::cnstr_release(x_120, 0); + lean::cnstr_set(x_120, 0, lean::box(0)); x_187 = x_120; } else { + lean::inc(x_184); lean::dec(x_120); x_187 = lean::box(0); } @@ -16205,17 +16205,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_5, 2); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -16260,12 +16260,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; x_32 = lean::cnstr_get(x_24, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_24, sizeof(void*)*1); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_35 = x_24; } else { + lean::inc(x_32); lean::dec(x_24); x_35 = lean::box(0); } @@ -16286,12 +16286,12 @@ obj* x_40; uint8 x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; obj* x_47; lean::dec(x_12); lean::dec(x_6); x_40 = lean::cnstr_get(x_14, 0); -lean::inc(x_40); x_42 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_43 = x_14; } else { + lean::inc(x_40); lean::dec(x_14); x_43 = lean::box(0); } @@ -16324,12 +16324,12 @@ else { obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; x_55 = lean::cnstr_get(x_47, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_47, sizeof(void*)*1); if (lean::is_exclusive(x_47)) { - lean::cnstr_release(x_47, 0); + lean::cnstr_set(x_47, 0, lean::box(0)); x_58 = x_47; } else { + lean::inc(x_55); lean::dec(x_47); x_58 = lean::box(0); } @@ -16349,11 +16349,11 @@ else { obj* x_61; obj* x_63; uint8 x_64; obj* x_65; obj* x_66; x_61 = lean::cnstr_get(x_5, 0); -lean::inc(x_61); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_63 = x_5; } else { + lean::inc(x_61); lean::dec(x_5); x_63 = lean::box(0); } @@ -16376,17 +16376,17 @@ if (lean::obj_tag(x_67) == 0) { obj* x_68; obj* x_70; obj* x_72; obj* x_74; obj* x_75; x_68 = lean::cnstr_get(x_67, 0); -lean::inc(x_68); x_70 = lean::cnstr_get(x_67, 1); -lean::inc(x_70); x_72 = lean::cnstr_get(x_67, 2); -lean::inc(x_72); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); - lean::cnstr_release(x_67, 1); - lean::cnstr_release(x_67, 2); + lean::cnstr_set(x_67, 0, lean::box(0)); + lean::cnstr_set(x_67, 1, lean::box(0)); + lean::cnstr_set(x_67, 2, lean::box(0)); x_74 = x_67; } else { + lean::inc(x_68); + lean::inc(x_70); + lean::inc(x_72); lean::dec(x_67); x_74 = lean::box(0); } @@ -16395,17 +16395,17 @@ if (lean::obj_tag(x_75) == 0) { obj* x_76; obj* x_78; obj* x_80; obj* x_82; obj* x_83; x_76 = lean::cnstr_get(x_75, 0); -lean::inc(x_76); x_78 = lean::cnstr_get(x_75, 1); -lean::inc(x_78); x_80 = lean::cnstr_get(x_75, 2); -lean::inc(x_80); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); - lean::cnstr_release(x_75, 2); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); + lean::cnstr_set(x_75, 2, lean::box(0)); x_82 = x_75; } else { + lean::inc(x_76); + lean::inc(x_78); + lean::inc(x_80); lean::dec(x_75); x_82 = lean::box(0); } @@ -16478,12 +16478,12 @@ lean::dec(x_76); lean::dec(x_1); lean::dec(x_68); x_119 = lean::cnstr_get(x_101, 0); -lean::inc(x_119); x_121 = lean::cnstr_get_scalar(x_101, sizeof(void*)*1); if (lean::is_exclusive(x_101)) { - lean::cnstr_release(x_101, 0); + lean::cnstr_set(x_101, 0, lean::box(0)); x_122 = x_101; } else { + lean::inc(x_119); lean::dec(x_101); x_122 = lean::box(0); } @@ -16507,12 +16507,12 @@ obj* x_130; uint8 x_132; obj* x_133; obj* x_134; obj* x_135; obj* x_136; lean::dec(x_82); lean::dec(x_84); x_130 = lean::cnstr_get(x_92, 0); -lean::inc(x_130); x_132 = lean::cnstr_get_scalar(x_92, sizeof(void*)*1); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_133 = x_92; } else { + lean::inc(x_130); lean::dec(x_92); x_133 = lean::box(0); } @@ -16563,12 +16563,12 @@ lean::dec(x_1); lean::dec(x_74); lean::dec(x_68); x_155 = lean::cnstr_get(x_136, 0); -lean::inc(x_155); x_157 = lean::cnstr_get_scalar(x_136, sizeof(void*)*1); if (lean::is_exclusive(x_136)) { - lean::cnstr_release(x_136, 0); + lean::cnstr_set(x_136, 0, lean::box(0)); x_158 = x_136; } else { + lean::inc(x_155); lean::dec(x_136); x_158 = lean::box(0); } @@ -16596,12 +16596,12 @@ lean::dec(x_1); lean::dec(x_74); lean::dec(x_68); x_169 = lean::cnstr_get(x_83, 0); -lean::inc(x_169); x_171 = lean::cnstr_get_scalar(x_83, sizeof(void*)*1); if (lean::is_exclusive(x_83)) { - lean::cnstr_release(x_83, 0); + lean::cnstr_set(x_83, 0, lean::box(0)); x_172 = x_83; } else { + lean::inc(x_169); lean::dec(x_83); x_172 = lean::box(0); } @@ -16626,12 +16626,12 @@ lean::dec(x_1); lean::dec(x_74); lean::dec(x_68); x_181 = lean::cnstr_get(x_75, 0); -lean::inc(x_181); x_183 = lean::cnstr_get_scalar(x_75, sizeof(void*)*1); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); + lean::cnstr_set(x_75, 0, lean::box(0)); x_184 = x_75; } else { + lean::inc(x_181); lean::dec(x_75); x_184 = lean::box(0); } @@ -16653,12 +16653,12 @@ else obj* x_190; uint8 x_192; obj* x_193; obj* x_194; obj* x_195; obj* x_196; lean::dec(x_1); x_190 = lean::cnstr_get(x_67, 0); -lean::inc(x_190); x_192 = lean::cnstr_get_scalar(x_67, sizeof(void*)*1); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_193 = x_67; } else { + lean::inc(x_190); lean::dec(x_67); x_193 = lean::box(0); } @@ -16686,15 +16686,15 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_8; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 2); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -16770,12 +16770,12 @@ lean::dec(x_7); lean::dec(x_26); lean::dec(x_9); x_53 = lean::cnstr_get(x_34, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_34, sizeof(void*)*1); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_56 = x_34; } else { + lean::inc(x_53); lean::dec(x_34); x_56 = lean::box(0); } @@ -16800,12 +16800,12 @@ obj* x_65; uint8 x_67; obj* x_68; obj* x_69; obj* x_70; obj* x_71; obj* x_72; ob lean::dec(x_7); lean::dec(x_9); x_65 = lean::cnstr_get(x_25, 0); -lean::inc(x_65); x_67 = lean::cnstr_get_scalar(x_25, sizeof(void*)*1); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_68 = x_25; } else { + lean::inc(x_65); lean::dec(x_25); x_68 = lean::box(0); } @@ -16829,12 +16829,12 @@ obj* x_76; uint8 x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; obj* x_83; lean::dec(x_7); lean::dec(x_9); x_76 = lean::cnstr_get(x_17, 0); -lean::inc(x_76); x_78 = lean::cnstr_get_scalar(x_17, sizeof(void*)*1); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_79 = x_17; } else { + lean::inc(x_76); lean::dec(x_17); x_79 = lean::box(0); } @@ -16856,12 +16856,12 @@ else obj* x_85; uint8 x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; lean::dec(x_7); x_85 = lean::cnstr_get(x_8, 0); -lean::inc(x_85); x_87 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_88 = x_8; } else { + lean::inc(x_85); lean::dec(x_8); x_88 = lean::box(0); } @@ -16881,12 +16881,12 @@ else { obj* x_92; uint8 x_94; obj* x_95; obj* x_96; obj* x_97; x_92 = lean::cnstr_get(x_2, 0); -lean::inc(x_92); x_94 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_95 = x_2; } else { + lean::inc(x_92); lean::dec(x_2); x_95 = lean::box(0); } @@ -16916,17 +16916,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -17022,12 +17022,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -17049,12 +17049,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -17078,17 +17078,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -17112,12 +17112,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -17200,17 +17200,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_14; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -17240,15 +17240,15 @@ if (lean::obj_tag(x_20) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_21 = lean::cnstr_get(x_20, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_20, 2); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -17312,12 +17312,12 @@ lean::dec(x_3); lean::dec(x_25); lean::dec(x_10); x_56 = lean::cnstr_get(x_39, 0); -lean::inc(x_56); x_58 = lean::cnstr_get_scalar(x_39, sizeof(void*)*1); if (lean::is_exclusive(x_39)) { - lean::cnstr_release(x_39, 0); + lean::cnstr_set(x_39, 0, lean::box(0)); x_59 = x_39; } else { + lean::inc(x_56); lean::dec(x_39); x_59 = lean::box(0); } @@ -17339,12 +17339,12 @@ else obj* x_65; uint8 x_67; obj* x_68; obj* x_69; obj* x_70; obj* x_71; lean::dec(x_25); x_65 = lean::cnstr_get(x_28, 0); -lean::inc(x_65); x_67 = lean::cnstr_get_scalar(x_28, sizeof(void*)*1); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); + lean::cnstr_set(x_28, 0, lean::box(0)); x_68 = x_28; } else { + lean::inc(x_65); lean::dec(x_28); x_68 = lean::box(0); } @@ -17394,12 +17394,12 @@ lean::dec(x_9); lean::dec(x_3); lean::dec(x_10); x_89 = lean::cnstr_get(x_71, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_71, sizeof(void*)*1); if (lean::is_exclusive(x_71)) { - lean::cnstr_release(x_71, 0); + lean::cnstr_set(x_71, 0, lean::box(0)); x_92 = x_71; } else { + lean::inc(x_89); lean::dec(x_71); x_92 = lean::box(0); } @@ -17424,12 +17424,12 @@ lean::dec(x_9); lean::dec(x_3); lean::dec(x_10); x_100 = lean::cnstr_get(x_20, 0); -lean::inc(x_100); x_102 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_103 = x_20; } else { + lean::inc(x_100); lean::dec(x_20); x_103 = lean::box(0); } @@ -17472,12 +17472,12 @@ obj* x_119; uint8 x_121; obj* x_122; obj* x_123; obj* x_124; obj* x_125; lean::dec(x_9); lean::dec(x_3); x_119 = lean::cnstr_get(x_109, 0); -lean::inc(x_119); x_121 = lean::cnstr_get_scalar(x_109, sizeof(void*)*1); if (lean::is_exclusive(x_109)) { - lean::cnstr_release(x_109, 0); + lean::cnstr_set(x_109, 0, lean::box(0)); x_122 = x_109; } else { + lean::inc(x_119); lean::dec(x_109); x_122 = lean::box(0); } @@ -17498,12 +17498,12 @@ else { obj* x_126; uint8 x_128; obj* x_129; obj* x_130; obj* x_131; x_126 = lean::cnstr_get(x_2, 0); -lean::inc(x_126); x_128 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_129 = x_2; } else { + lean::inc(x_126); lean::dec(x_2); x_129 = lean::box(0); } @@ -17542,17 +17542,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -17648,12 +17648,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -17675,12 +17675,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -17704,17 +17704,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -17738,12 +17738,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -17845,15 +17845,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; uint8 x_12; obj* x_13; x_7 = lean::cnstr_get(x_6, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 2); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -17901,12 +17901,12 @@ else { obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; x_33 = lean::cnstr_get(x_25, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_25, sizeof(void*)*1); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_36 = x_25; } else { + lean::inc(x_33); lean::dec(x_25); x_36 = lean::box(0); } @@ -17926,12 +17926,12 @@ else obj* x_40; uint8 x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; lean::dec(x_11); x_40 = lean::cnstr_get(x_13, 0); -lean::inc(x_40); x_42 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_43 = x_13; } else { + lean::inc(x_40); lean::dec(x_13); x_43 = lean::box(0); } @@ -17963,12 +17963,12 @@ else { obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; x_54 = lean::cnstr_get(x_46, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_46, sizeof(void*)*1); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_57 = x_46; } else { + lean::inc(x_54); lean::dec(x_46); x_57 = lean::box(0); } @@ -17988,12 +17988,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; x_60 = lean::cnstr_get(x_6, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_63 = x_6; } else { + lean::inc(x_60); lean::dec(x_6); x_63 = lean::box(0); } @@ -18016,15 +18016,15 @@ if (lean::obj_tag(x_67) == 0) { obj* x_68; obj* x_70; obj* x_72; obj* x_73; obj* x_74; x_68 = lean::cnstr_get(x_67, 1); -lean::inc(x_68); x_70 = lean::cnstr_get(x_67, 2); -lean::inc(x_70); if (lean::is_exclusive(x_67)) { lean::cnstr_release(x_67, 0); - lean::cnstr_release(x_67, 1); - lean::cnstr_release(x_67, 2); + lean::cnstr_set(x_67, 1, lean::box(0)); + lean::cnstr_set(x_67, 2, lean::box(0)); x_72 = x_67; } else { + lean::inc(x_68); + lean::inc(x_70); lean::dec(x_67); x_72 = lean::box(0); } @@ -18060,12 +18060,12 @@ obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; obj* x_95; lean::dec(x_1); lean::dec(x_72); x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -18086,12 +18086,12 @@ else obj* x_97; uint8 x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_1); x_97 = lean::cnstr_get(x_67, 0); -lean::inc(x_97); x_99 = lean::cnstr_get_scalar(x_67, sizeof(void*)*1); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_100 = x_67; } else { + lean::inc(x_97); lean::dec(x_67); x_100 = lean::box(0); } @@ -18123,17 +18123,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -18229,12 +18229,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_11); lean::dec(x_5); x_55 = lean::cnstr_get(x_16, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_58 = x_16; } else { + lean::inc(x_55); lean::dec(x_16); x_58 = lean::box(0); } @@ -18256,12 +18256,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; lean::dec(x_0); x_63 = lean::cnstr_get(x_4, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_66 = x_4; } else { + lean::inc(x_63); lean::dec(x_4); x_66 = lean::box(0); } @@ -18285,17 +18285,17 @@ if (lean::obj_tag(x_70) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); x_75 = lean::cnstr_get(x_70, 2); -lean::inc(x_75); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); - lean::cnstr_release(x_70, 2); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); + lean::cnstr_set(x_70, 2, lean::box(0)); x_77 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); + lean::inc(x_75); lean::dec(x_70); x_77 = lean::box(0); } @@ -18319,12 +18319,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_70, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_86 = x_70; } else { + lean::inc(x_83); lean::dec(x_70); x_86 = lean::box(0); } @@ -18416,15 +18416,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; uint8 x_12; obj* x_13; x_7 = lean::cnstr_get(x_6, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 2); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -18472,12 +18472,12 @@ else { obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; x_33 = lean::cnstr_get(x_25, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_25, sizeof(void*)*1); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_36 = x_25; } else { + lean::inc(x_33); lean::dec(x_25); x_36 = lean::box(0); } @@ -18497,12 +18497,12 @@ else obj* x_40; uint8 x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; lean::dec(x_11); x_40 = lean::cnstr_get(x_13, 0); -lean::inc(x_40); x_42 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_43 = x_13; } else { + lean::inc(x_40); lean::dec(x_13); x_43 = lean::box(0); } @@ -18534,12 +18534,12 @@ else { obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; x_54 = lean::cnstr_get(x_46, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_46, sizeof(void*)*1); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_57 = x_46; } else { + lean::inc(x_54); lean::dec(x_46); x_57 = lean::box(0); } @@ -18559,12 +18559,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; x_60 = lean::cnstr_get(x_6, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_63 = x_6; } else { + lean::inc(x_60); lean::dec(x_6); x_63 = lean::box(0); } @@ -18587,15 +18587,15 @@ if (lean::obj_tag(x_67) == 0) { obj* x_68; obj* x_70; obj* x_72; obj* x_73; obj* x_74; x_68 = lean::cnstr_get(x_67, 1); -lean::inc(x_68); x_70 = lean::cnstr_get(x_67, 2); -lean::inc(x_70); if (lean::is_exclusive(x_67)) { lean::cnstr_release(x_67, 0); - lean::cnstr_release(x_67, 1); - lean::cnstr_release(x_67, 2); + lean::cnstr_set(x_67, 1, lean::box(0)); + lean::cnstr_set(x_67, 2, lean::box(0)); x_72 = x_67; } else { + lean::inc(x_68); + lean::inc(x_70); lean::dec(x_67); x_72 = lean::box(0); } @@ -18631,12 +18631,12 @@ obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; obj* x_95; lean::dec(x_1); lean::dec(x_72); x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -18657,12 +18657,12 @@ else obj* x_97; uint8 x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_1); x_97 = lean::cnstr_get(x_67, 0); -lean::inc(x_97); x_99 = lean::cnstr_get_scalar(x_67, sizeof(void*)*1); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_100 = x_67; } else { + lean::inc(x_97); lean::dec(x_67); x_100 = lean::box(0); } @@ -18698,15 +18698,15 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; uint8 x_8; obj* x_9; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 2); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -18742,12 +18742,12 @@ else obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; lean::dec(x_7); x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -18767,12 +18767,12 @@ else { obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; x_30 = lean::cnstr_get(x_2, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_33 = x_2; } else { + lean::inc(x_30); lean::dec(x_2); x_33 = lean::box(0); } diff --git a/src/boot/init/lean/ir/reserved.cpp b/src/boot/init/lean/ir/reserved.cpp index 67a2b25c4b..9169e4cab5 100644 --- a/src/boot/init/lean/ir/reserved.cpp +++ b/src/boot/init/lean/ir/reserved.cpp @@ -396,20 +396,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; uint8 x_13; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -470,20 +470,20 @@ default: { obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_30; uint8 x_31; x_22 = lean::cnstr_get(x_0, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_0, 1); -lean::inc(x_24); x_26 = lean::cnstr_get(x_0, 2); -lean::inc(x_26); x_28 = lean::cnstr_get(x_0, 3); -lean::inc(x_28); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_30 = x_0; } else { + lean::inc(x_22); + lean::inc(x_24); + lean::inc(x_26); + lean::inc(x_28); lean::dec(x_0); x_30 = lean::box(0); } @@ -763,11 +763,11 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_10; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } diff --git a/src/boot/init/lean/ir/ssa_check.cpp b/src/boot/init/lean/ir/ssa_check.cpp index de1a7bf40c..691aaaeadf 100644 --- a/src/boot/init/lean/ir/ssa_check.cpp +++ b/src/boot/init/lean/ir/ssa_check.cpp @@ -282,20 +282,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -362,20 +362,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -623,14 +623,14 @@ x_3 = lean::cnstr_get(x_0, 0); lean::inc(x_3); x_5 = l_lean_ir_var_declare(x_3, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -638,11 +638,11 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_14; uint8 x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -725,14 +725,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_phi_declare(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -742,11 +742,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -800,14 +800,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_instr_declare__vars___main(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -817,11 +817,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -862,14 +862,14 @@ lean::inc(x_4); lean::inc(x_4); x_7 = l_list_mmap_x_27___main___at_lean_ir_block_declare__vars___spec__1(x_2, x_4, x_1); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -878,11 +878,11 @@ if (lean::obj_tag(x_8) == 0) obj* x_14; obj* x_16; obj* x_17; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; lean::dec(x_0); x_14 = lean::cnstr_get(x_8, 0); -lean::inc(x_14); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_16 = x_8; } else { + lean::inc(x_14); lean::dec(x_8); x_16 = lean::box(0); } @@ -1043,14 +1043,14 @@ lean::inc(x_6); lean::dec(x_0); x_9 = l_lean_ir_block_declare__vars(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -1059,11 +1059,11 @@ if (lean::obj_tag(x_10) == 0) obj* x_16; obj* x_18; obj* x_19; obj* x_20; lean::dec(x_6); x_16 = lean::cnstr_get(x_10, 0); -lean::inc(x_16); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_18 = x_10; } else { + lean::inc(x_16); lean::dec(x_10); x_18 = lean::box(0); } @@ -1117,14 +1117,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_arg_declare(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -1134,11 +1134,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -1234,11 +1234,11 @@ if (lean::obj_tag(x_26) == 0) obj* x_32; obj* x_34; obj* x_35; lean::dec(x_13); x_32 = lean::cnstr_get(x_26, 0); -lean::inc(x_32); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); + lean::cnstr_set(x_26, 0, lean::box(0)); x_34 = x_26; } else { + lean::inc(x_32); lean::dec(x_26); x_34 = lean::box(0); } @@ -1273,11 +1273,11 @@ if (lean::obj_tag(x_18) == 0) obj* x_44; obj* x_46; obj* x_47; obj* x_50; uint8 x_51; obj* x_52; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; lean::dec(x_15); x_44 = lean::cnstr_get(x_18, 0); -lean::inc(x_44); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_46 = x_18; } else { + lean::inc(x_44); lean::dec(x_18); x_46 = lean::box(0); } @@ -1332,14 +1332,14 @@ if (lean::is_exclusive(x_18)) { } x_66 = l_list_mmap_x_27___main___at_lean_ir_decl_declare__vars___main___spec__1(x_15, x_19); x_67 = lean::cnstr_get(x_66, 0); -lean::inc(x_67); x_69 = lean::cnstr_get(x_66, 1); -lean::inc(x_69); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); - lean::cnstr_release(x_66, 1); + lean::cnstr_set(x_66, 0, lean::box(0)); + lean::cnstr_set(x_66, 1, lean::box(0)); x_71 = x_66; } else { + lean::inc(x_67); + lean::inc(x_69); lean::dec(x_66); x_71 = lean::box(0); } @@ -1437,11 +1437,11 @@ if (lean::obj_tag(x_3) == 0) obj* x_9; obj* x_11; obj* x_12; lean::dec(x_5); x_9 = lean::cnstr_get(x_3, 0); -lean::inc(x_9); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_11 = x_3; } else { + lean::inc(x_9); lean::dec(x_3); x_11 = lean::box(0); } @@ -1520,20 +1520,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -1600,20 +1600,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -1894,11 +1894,11 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_10; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } @@ -2042,14 +2042,14 @@ lean::inc(x_1); lean::inc(x_1); x_7 = l_list_mmap_x_27___main___at_lean_ir_phi_valid__ssa___spec__1(x_1, x_3, x_1, x_2); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -2058,11 +2058,11 @@ if (lean::obj_tag(x_8) == 0) obj* x_14; obj* x_16; obj* x_17; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; lean::dec(x_1); x_14 = lean::cnstr_get(x_8, 0); -lean::inc(x_14); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_16 = x_8; } else { + lean::inc(x_14); lean::dec(x_8); x_16 = lean::box(0); } @@ -2212,14 +2212,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_var_defined(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -2229,11 +2229,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -2287,14 +2287,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_var_defined(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -2304,11 +2304,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -2362,14 +2362,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_var_defined(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -2379,11 +2379,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -2428,14 +2428,14 @@ lean::inc(x_7); lean::inc(x_1); x_10 = l_lean_ir_var_define(x_5, x_1, x_2); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -2445,11 +2445,11 @@ obj* x_18; obj* x_20; obj* x_21; obj* x_22; lean::dec(x_7); lean::dec(x_1); x_18 = lean::cnstr_get(x_11, 0); -lean::inc(x_18); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_20 = x_11; } else { + lean::inc(x_18); lean::dec(x_11); x_20 = lean::box(0); } @@ -2489,14 +2489,14 @@ lean::inc(x_28); lean::inc(x_1); x_31 = l_lean_ir_var_define(x_26, x_1, x_2); x_32 = lean::cnstr_get(x_31, 0); -lean::inc(x_32); x_34 = lean::cnstr_get(x_31, 1); -lean::inc(x_34); if (lean::is_exclusive(x_31)) { - lean::cnstr_release(x_31, 0); - lean::cnstr_release(x_31, 1); + lean::cnstr_set(x_31, 0, lean::box(0)); + lean::cnstr_set(x_31, 1, lean::box(0)); x_36 = x_31; } else { + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_31); x_36 = lean::box(0); } @@ -2506,11 +2506,11 @@ obj* x_39; obj* x_41; obj* x_42; obj* x_43; lean::dec(x_1); lean::dec(x_28); x_39 = lean::cnstr_get(x_32, 0); -lean::inc(x_39); if (lean::is_exclusive(x_32)) { - lean::cnstr_release(x_32, 0); + lean::cnstr_set(x_32, 0, lean::box(0)); x_41 = x_32; } else { + lean::inc(x_39); lean::dec(x_32); x_41 = lean::box(0); } @@ -2552,14 +2552,14 @@ lean::inc(x_51); lean::inc(x_1); x_54 = l_lean_ir_var_define(x_47, x_1, x_2); x_55 = lean::cnstr_get(x_54, 0); -lean::inc(x_55); x_57 = lean::cnstr_get(x_54, 1); -lean::inc(x_57); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); - lean::cnstr_release(x_54, 1); + lean::cnstr_set(x_54, 0, lean::box(0)); + lean::cnstr_set(x_54, 1, lean::box(0)); x_59 = x_54; } else { + lean::inc(x_55); + lean::inc(x_57); lean::dec(x_54); x_59 = lean::box(0); } @@ -2570,11 +2570,11 @@ lean::dec(x_1); lean::dec(x_51); lean::dec(x_49); x_63 = lean::cnstr_get(x_55, 0); -lean::inc(x_63); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_65 = x_55; } else { + lean::inc(x_63); lean::dec(x_55); x_65 = lean::box(0); } @@ -2667,14 +2667,14 @@ lean::inc(x_92); lean::inc(x_1); x_95 = l_lean_ir_var_define(x_90, x_1, x_2); x_96 = lean::cnstr_get(x_95, 0); -lean::inc(x_96); x_98 = lean::cnstr_get(x_95, 1); -lean::inc(x_98); if (lean::is_exclusive(x_95)) { - lean::cnstr_release(x_95, 0); - lean::cnstr_release(x_95, 1); + lean::cnstr_set(x_95, 0, lean::box(0)); + lean::cnstr_set(x_95, 1, lean::box(0)); x_100 = x_95; } else { + lean::inc(x_96); + lean::inc(x_98); lean::dec(x_95); x_100 = lean::box(0); } @@ -2684,11 +2684,11 @@ obj* x_103; obj* x_105; obj* x_106; obj* x_107; lean::dec(x_1); lean::dec(x_92); x_103 = lean::cnstr_get(x_96, 0); -lean::inc(x_103); if (lean::is_exclusive(x_96)) { - lean::cnstr_release(x_96, 0); + lean::cnstr_set(x_96, 0, lean::box(0)); x_105 = x_96; } else { + lean::inc(x_103); lean::dec(x_96); x_105 = lean::box(0); } @@ -2728,14 +2728,14 @@ lean::inc(x_113); lean::inc(x_1); x_116 = l_lean_ir_var_defined(x_111, x_1, x_2); x_117 = lean::cnstr_get(x_116, 0); -lean::inc(x_117); x_119 = lean::cnstr_get(x_116, 1); -lean::inc(x_119); if (lean::is_exclusive(x_116)) { - lean::cnstr_release(x_116, 0); - lean::cnstr_release(x_116, 1); + lean::cnstr_set(x_116, 0, lean::box(0)); + lean::cnstr_set(x_116, 1, lean::box(0)); x_121 = x_116; } else { + lean::inc(x_117); + lean::inc(x_119); lean::dec(x_116); x_121 = lean::box(0); } @@ -2745,11 +2745,11 @@ obj* x_124; obj* x_126; obj* x_127; obj* x_128; lean::dec(x_113); lean::dec(x_1); x_124 = lean::cnstr_get(x_117, 0); -lean::inc(x_124); if (lean::is_exclusive(x_117)) { - lean::cnstr_release(x_117, 0); + lean::cnstr_set(x_117, 0, lean::box(0)); x_126 = x_117; } else { + lean::inc(x_124); lean::dec(x_117); x_126 = lean::box(0); } @@ -2789,14 +2789,14 @@ lean::inc(x_134); lean::inc(x_1); x_137 = l_lean_ir_var_define(x_132, x_1, x_2); x_138 = lean::cnstr_get(x_137, 0); -lean::inc(x_138); x_140 = lean::cnstr_get(x_137, 1); -lean::inc(x_140); if (lean::is_exclusive(x_137)) { - lean::cnstr_release(x_137, 0); - lean::cnstr_release(x_137, 1); + lean::cnstr_set(x_137, 0, lean::box(0)); + lean::cnstr_set(x_137, 1, lean::box(0)); x_142 = x_137; } else { + lean::inc(x_138); + lean::inc(x_140); lean::dec(x_137); x_142 = lean::box(0); } @@ -2806,11 +2806,11 @@ obj* x_145; obj* x_147; obj* x_148; obj* x_149; lean::dec(x_134); lean::dec(x_1); x_145 = lean::cnstr_get(x_138, 0); -lean::inc(x_145); if (lean::is_exclusive(x_138)) { - lean::cnstr_release(x_138, 0); + lean::cnstr_set(x_138, 0, lean::box(0)); x_147 = x_138; } else { + lean::inc(x_145); lean::dec(x_138); x_147 = lean::box(0); } @@ -2850,14 +2850,14 @@ lean::inc(x_155); lean::inc(x_1); x_158 = l_lean_ir_var_defined(x_153, x_1, x_2); x_159 = lean::cnstr_get(x_158, 0); -lean::inc(x_159); x_161 = lean::cnstr_get(x_158, 1); -lean::inc(x_161); if (lean::is_exclusive(x_158)) { - lean::cnstr_release(x_158, 0); - lean::cnstr_release(x_158, 1); + lean::cnstr_set(x_158, 0, lean::box(0)); + lean::cnstr_set(x_158, 1, lean::box(0)); x_163 = x_158; } else { + lean::inc(x_159); + lean::inc(x_161); lean::dec(x_158); x_163 = lean::box(0); } @@ -2867,11 +2867,11 @@ obj* x_166; obj* x_168; obj* x_169; obj* x_170; lean::dec(x_155); lean::dec(x_1); x_166 = lean::cnstr_get(x_159, 0); -lean::inc(x_166); if (lean::is_exclusive(x_159)) { - lean::cnstr_release(x_159, 0); + lean::cnstr_set(x_159, 0, lean::box(0)); x_168 = x_159; } else { + lean::inc(x_166); lean::dec(x_159); x_168 = lean::box(0); } @@ -2911,14 +2911,14 @@ lean::inc(x_176); lean::inc(x_1); x_179 = l_lean_ir_var_define(x_174, x_1, x_2); x_180 = lean::cnstr_get(x_179, 0); -lean::inc(x_180); x_182 = lean::cnstr_get(x_179, 1); -lean::inc(x_182); if (lean::is_exclusive(x_179)) { - lean::cnstr_release(x_179, 0); - lean::cnstr_release(x_179, 1); + lean::cnstr_set(x_179, 0, lean::box(0)); + lean::cnstr_set(x_179, 1, lean::box(0)); x_184 = x_179; } else { + lean::inc(x_180); + lean::inc(x_182); lean::dec(x_179); x_184 = lean::box(0); } @@ -2928,11 +2928,11 @@ obj* x_187; obj* x_189; obj* x_190; obj* x_191; lean::dec(x_1); lean::dec(x_176); x_187 = lean::cnstr_get(x_180, 0); -lean::inc(x_187); if (lean::is_exclusive(x_180)) { - lean::cnstr_release(x_180, 0); + lean::cnstr_set(x_180, 0, lean::box(0)); x_189 = x_180; } else { + lean::inc(x_187); lean::dec(x_180); x_189 = lean::box(0); } @@ -2972,14 +2972,14 @@ lean::inc(x_197); lean::inc(x_1); x_200 = l_lean_ir_var_define(x_195, x_1, x_2); x_201 = lean::cnstr_get(x_200, 0); -lean::inc(x_201); x_203 = lean::cnstr_get(x_200, 1); -lean::inc(x_203); if (lean::is_exclusive(x_200)) { - lean::cnstr_release(x_200, 0); - lean::cnstr_release(x_200, 1); + lean::cnstr_set(x_200, 0, lean::box(0)); + lean::cnstr_set(x_200, 1, lean::box(0)); x_205 = x_200; } else { + lean::inc(x_201); + lean::inc(x_203); lean::dec(x_200); x_205 = lean::box(0); } @@ -2989,11 +2989,11 @@ obj* x_208; obj* x_210; obj* x_211; obj* x_212; lean::dec(x_1); lean::dec(x_197); x_208 = lean::cnstr_get(x_201, 0); -lean::inc(x_208); if (lean::is_exclusive(x_201)) { - lean::cnstr_release(x_201, 0); + lean::cnstr_set(x_201, 0, lean::box(0)); x_210 = x_201; } else { + lean::inc(x_208); lean::dec(x_201); x_210 = lean::box(0); } @@ -3033,14 +3033,14 @@ lean::inc(x_218); lean::inc(x_1); x_221 = l_lean_ir_var_define(x_216, x_1, x_2); x_222 = lean::cnstr_get(x_221, 0); -lean::inc(x_222); x_224 = lean::cnstr_get(x_221, 1); -lean::inc(x_224); if (lean::is_exclusive(x_221)) { - lean::cnstr_release(x_221, 0); - lean::cnstr_release(x_221, 1); + lean::cnstr_set(x_221, 0, lean::box(0)); + lean::cnstr_set(x_221, 1, lean::box(0)); x_226 = x_221; } else { + lean::inc(x_222); + lean::inc(x_224); lean::dec(x_221); x_226 = lean::box(0); } @@ -3050,11 +3050,11 @@ obj* x_229; obj* x_231; obj* x_232; obj* x_233; lean::dec(x_1); lean::dec(x_218); x_229 = lean::cnstr_get(x_222, 0); -lean::inc(x_229); if (lean::is_exclusive(x_222)) { - lean::cnstr_release(x_222, 0); + lean::cnstr_set(x_222, 0, lean::box(0)); x_231 = x_222; } else { + lean::inc(x_229); lean::dec(x_222); x_231 = lean::box(0); } @@ -3096,14 +3096,14 @@ lean::inc(x_241); lean::inc(x_1); x_244 = l_lean_ir_var_define(x_237, x_1, x_2); x_245 = lean::cnstr_get(x_244, 0); -lean::inc(x_245); x_247 = lean::cnstr_get(x_244, 1); -lean::inc(x_247); if (lean::is_exclusive(x_244)) { - lean::cnstr_release(x_244, 0); - lean::cnstr_release(x_244, 1); + lean::cnstr_set(x_244, 0, lean::box(0)); + lean::cnstr_set(x_244, 1, lean::box(0)); x_249 = x_244; } else { + lean::inc(x_245); + lean::inc(x_247); lean::dec(x_244); x_249 = lean::box(0); } @@ -3114,11 +3114,11 @@ lean::dec(x_1); lean::dec(x_241); lean::dec(x_239); x_253 = lean::cnstr_get(x_245, 0); -lean::inc(x_253); if (lean::is_exclusive(x_245)) { - lean::cnstr_release(x_245, 0); + lean::cnstr_set(x_245, 0, lean::box(0)); x_255 = x_245; } else { + lean::inc(x_253); lean::dec(x_245); x_255 = lean::box(0); } @@ -3204,14 +3204,14 @@ lean::inc(x_281); lean::inc(x_1); x_284 = l_lean_ir_var_define(x_277, x_1, x_2); x_285 = lean::cnstr_get(x_284, 0); -lean::inc(x_285); x_287 = lean::cnstr_get(x_284, 1); -lean::inc(x_287); if (lean::is_exclusive(x_284)) { - lean::cnstr_release(x_284, 0); - lean::cnstr_release(x_284, 1); + lean::cnstr_set(x_284, 0, lean::box(0)); + lean::cnstr_set(x_284, 1, lean::box(0)); x_289 = x_284; } else { + lean::inc(x_285); + lean::inc(x_287); lean::dec(x_284); x_289 = lean::box(0); } @@ -3222,11 +3222,11 @@ lean::dec(x_1); lean::dec(x_279); lean::dec(x_281); x_293 = lean::cnstr_get(x_285, 0); -lean::inc(x_293); if (lean::is_exclusive(x_285)) { - lean::cnstr_release(x_285, 0); + lean::cnstr_set(x_285, 0, lean::box(0)); x_295 = x_285; } else { + lean::inc(x_293); lean::dec(x_285); x_295 = lean::box(0); } @@ -3312,14 +3312,14 @@ lean::inc(x_321); lean::inc(x_1); x_324 = l_lean_ir_var_defined(x_317, x_1, x_2); x_325 = lean::cnstr_get(x_324, 0); -lean::inc(x_325); x_327 = lean::cnstr_get(x_324, 1); -lean::inc(x_327); if (lean::is_exclusive(x_324)) { - lean::cnstr_release(x_324, 0); - lean::cnstr_release(x_324, 1); + lean::cnstr_set(x_324, 0, lean::box(0)); + lean::cnstr_set(x_324, 1, lean::box(0)); x_329 = x_324; } else { + lean::inc(x_325); + lean::inc(x_327); lean::dec(x_324); x_329 = lean::box(0); } @@ -3330,11 +3330,11 @@ lean::dec(x_319); lean::dec(x_321); lean::dec(x_1); x_333 = lean::cnstr_get(x_325, 0); -lean::inc(x_333); if (lean::is_exclusive(x_325)) { - lean::cnstr_release(x_325, 0); + lean::cnstr_set(x_325, 0, lean::box(0)); x_335 = x_325; } else { + lean::inc(x_333); lean::dec(x_325); x_335 = lean::box(0); } @@ -3422,14 +3422,14 @@ lbl_4: { obj* x_360; obj* x_362; obj* x_364; x_360 = lean::cnstr_get(x_3, 0); -lean::inc(x_360); x_362 = lean::cnstr_get(x_3, 1); -lean::inc(x_362); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_364 = x_3; } else { + lean::inc(x_360); + lean::inc(x_362); lean::dec(x_3); x_364 = lean::box(0); } @@ -3437,11 +3437,11 @@ if (lean::obj_tag(x_360) == 0) { obj* x_365; obj* x_367; obj* x_368; uint8 x_369; obj* x_370; obj* x_371; obj* x_372; obj* x_373; obj* x_374; obj* x_375; obj* x_376; obj* x_377; obj* x_378; obj* x_379; obj* x_380; obj* x_381; obj* x_382; x_365 = lean::cnstr_get(x_360, 0); -lean::inc(x_365); if (lean::is_exclusive(x_360)) { - lean::cnstr_release(x_360, 0); + lean::cnstr_set(x_360, 0, lean::box(0)); x_367 = x_360; } else { + lean::inc(x_365); lean::dec(x_360); x_367 = lean::box(0); } @@ -3537,11 +3537,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_16; obj* x_18; obj* x_19; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_16 = lean::cnstr_get(x_3, 0); -lean::inc(x_16); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_18 = x_3; } else { + lean::inc(x_16); lean::dec(x_3); x_18 = lean::box(0); } @@ -3736,11 +3736,11 @@ else { obj* x_4; obj* x_6; obj* x_7; obj* x_10; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } @@ -3775,20 +3775,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -3855,20 +3855,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -4317,11 +4317,11 @@ if (lean::obj_tag(x_18) == 0) obj* x_24; obj* x_26; obj* x_27; lean::dec(x_0); x_24 = lean::cnstr_get(x_18, 0); -lean::inc(x_24); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_26 = x_18; } else { + lean::inc(x_24); lean::dec(x_18); x_26 = lean::box(0); } @@ -4339,11 +4339,11 @@ else { obj* x_28; obj* x_30; x_28 = lean::cnstr_get(x_18, 0); -lean::inc(x_28); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_30 = x_18; } else { + lean::inc(x_28); lean::dec(x_18); x_30 = lean::box(0); } @@ -4436,11 +4436,11 @@ obj* x_59; obj* x_61; obj* x_62; uint8 x_63; obj* x_64; obj* x_65; obj* x_66; ob lean::dec(x_9); lean::dec(x_2); x_59 = lean::cnstr_get(x_12, 0); -lean::inc(x_59); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_61 = x_12; } else { + lean::inc(x_59); lean::dec(x_12); x_61 = lean::box(0); } @@ -4489,11 +4489,11 @@ obj* x_80; obj* x_82; obj* x_83; obj* x_84; lean::dec(x_9); lean::dec(x_2); x_80 = lean::cnstr_get(x_12, 0); -lean::inc(x_80); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_82 = x_12; } else { + lean::inc(x_80); lean::dec(x_12); x_82 = lean::box(0); } @@ -4531,14 +4531,14 @@ obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_3 = lean::box(0); x_4 = l_list_mfoldl___main___at_lean_ir_phis_check__predecessors___spec__4(x_3, x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -4546,11 +4546,11 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_10 = lean::cnstr_get(x_5, 0); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -4609,14 +4609,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_phi_valid__ssa(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -4626,11 +4626,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -4684,14 +4684,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_instr_valid__ssa(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -4701,11 +4701,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -4755,11 +4755,11 @@ obj* x_18; obj* x_20; obj* x_21; lean::dec(x_6); lean::dec(x_1); x_18 = lean::cnstr_get(x_11, 0); -lean::inc(x_18); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_20 = x_11; } else { + lean::inc(x_18); lean::dec(x_11); x_20 = lean::box(0); } @@ -4864,11 +4864,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_60; obj* x_62; obj* x_63; obj* x_66; uint8 x_67; obj* x_68; obj* x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; x_60 = lean::cnstr_get(x_3, 0); -lean::inc(x_60); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_62 = x_3; } else { + lean::inc(x_60); lean::dec(x_3); x_62 = lean::box(0); } @@ -4947,14 +4947,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_arg_define(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -4964,11 +4964,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -5007,11 +5007,11 @@ obj* x_6; obj* x_8; obj* x_9; obj* x_10; lean::dec(x_0); lean::dec(x_2); x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -5096,14 +5096,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_block_valid__ssa__core(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -5113,11 +5113,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -5175,11 +5175,11 @@ else { obj* x_8; obj* x_10; x_8 = lean::cnstr_get(x_4, 0); -lean::inc(x_8); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_10 = x_4; } else { + lean::inc(x_8); lean::dec(x_4); x_10 = lean::box(0); } @@ -5496,14 +5496,14 @@ lean::inc(x_6); lean::dec(x_0); x_9 = l_lean_ir_blockid_defined(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -5512,11 +5512,11 @@ if (lean::obj_tag(x_10) == 0) obj* x_16; obj* x_18; obj* x_19; obj* x_20; lean::dec(x_6); x_16 = lean::cnstr_get(x_10, 0); -lean::inc(x_16); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_18 = x_10; } else { + lean::inc(x_16); lean::dec(x_10); x_18 = lean::box(0); } @@ -5596,11 +5596,11 @@ if (lean::obj_tag(x_2) == 0) { obj* x_22; obj* x_24; obj* x_25; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; x_22 = lean::cnstr_get(x_2, 0); -lean::inc(x_22); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_24 = x_2; } else { + lean::inc(x_22); lean::dec(x_2); x_24 = lean::box(0); } @@ -5685,14 +5685,14 @@ lean::inc(x_6); lean::dec(x_0); x_9 = l_lean_ir_block_declare(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -5701,11 +5701,11 @@ if (lean::obj_tag(x_10) == 0) obj* x_16; obj* x_18; obj* x_19; obj* x_20; lean::dec(x_6); x_16 = lean::cnstr_get(x_10, 0); -lean::inc(x_16); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_18 = x_10; } else { + lean::inc(x_16); lean::dec(x_10); x_18 = lean::box(0); } @@ -5757,14 +5757,14 @@ lean::inc(x_6); lean::dec(x_0); x_9 = l_lean_ir_block_check__blockids(x_4, x_1); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -5773,11 +5773,11 @@ if (lean::obj_tag(x_10) == 0) obj* x_16; obj* x_18; obj* x_19; obj* x_20; lean::dec(x_6); x_16 = lean::cnstr_get(x_10, 0); -lean::inc(x_16); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_18 = x_10; } else { + lean::inc(x_16); lean::dec(x_10); x_18 = lean::box(0); } @@ -5831,14 +5831,14 @@ lean::dec(x_0); lean::inc(x_7); x_11 = l_list_mmap_x_27___main___at_lean_ir_decl_check__blockids___main___spec__1(x_7, x_1); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -5847,11 +5847,11 @@ if (lean::obj_tag(x_12) == 0) obj* x_18; obj* x_20; obj* x_21; obj* x_24; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; lean::dec(x_7); x_18 = lean::cnstr_get(x_12, 0); -lean::inc(x_18); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_20 = x_12; } else { + lean::inc(x_18); lean::dec(x_12); x_20 = lean::box(0); } @@ -5998,11 +5998,11 @@ if (lean::obj_tag(x_1) == 0) obj* x_4; obj* x_6; obj* x_7; obj* x_8; lean::dec(x_0); x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } diff --git a/src/boot/init/lean/ir/type_check.cpp b/src/boot/init/lean/ir/type_check.cpp index 090ca7f6ea..a860296d75 100644 --- a/src/boot/init/lean/ir/type_check.cpp +++ b/src/boot/init/lean/ir/type_check.cpp @@ -1924,20 +1924,20 @@ case 1: { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_16; uint8 x_17; x_5 = lean::cnstr_get(x_0, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_0, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 2); -lean::inc(x_9); x_11 = lean::cnstr_get(x_0, 3); -lean::inc(x_11); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_13 = x_0; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_0); x_13 = lean::box(0); } @@ -2005,20 +2005,20 @@ default: { obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_38; obj* x_41; uint8 x_42; x_30 = lean::cnstr_get(x_0, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 1); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 2); -lean::inc(x_34); x_36 = lean::cnstr_get(x_0, 3); -lean::inc(x_36); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_38 = x_0; } else { + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); + lean::inc(x_36); lean::dec(x_0); x_38 = lean::box(0); } @@ -2502,11 +2502,11 @@ if (lean::obj_tag(x_30) == 0) { obj* x_31; obj* x_33; obj* x_34; obj* x_35; x_31 = lean::cnstr_get(x_30, 0); -lean::inc(x_31); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_33 = x_30; } else { + lean::inc(x_31); lean::dec(x_30); x_33 = lean::box(0); } @@ -2662,12 +2662,12 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); lean::cnstr_release(x_1, 1); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -2805,14 +2805,14 @@ lean::inc(x_26); lean::inc(x_1); x_29 = l_lean_ir_get__decl(x_26, x_1, x_2); x_30 = lean::cnstr_get(x_29, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_29, 1); -lean::inc(x_32); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); - lean::cnstr_release(x_29, 1); + lean::cnstr_set(x_29, 0, lean::box(0)); + lean::cnstr_set(x_29, 1, lean::box(0)); x_34 = x_29; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_29); x_34 = lean::box(0); } @@ -2822,11 +2822,11 @@ obj* x_37; obj* x_39; obj* x_40; obj* x_41; lean::dec(x_1); lean::dec(x_24); x_37 = lean::cnstr_get(x_30, 0); -lean::inc(x_37); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_39 = x_30; } else { + lean::inc(x_37); lean::dec(x_30); x_39 = lean::box(0); } @@ -2921,14 +2921,14 @@ lbl_4: { obj* x_69; obj* x_71; obj* x_73; x_69 = lean::cnstr_get(x_3, 0); -lean::inc(x_69); x_71 = lean::cnstr_get(x_3, 1); -lean::inc(x_71); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_73 = x_3; } else { + lean::inc(x_69); + lean::inc(x_71); lean::dec(x_3); x_73 = lean::box(0); } @@ -2936,11 +2936,11 @@ if (lean::obj_tag(x_69) == 0) { obj* x_74; obj* x_76; obj* x_77; uint8 x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; obj* x_83; obj* x_84; obj* x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; x_74 = lean::cnstr_get(x_69, 0); -lean::inc(x_74); if (lean::is_exclusive(x_69)) { - lean::cnstr_release(x_69, 0); + lean::cnstr_set(x_69, 0, lean::box(0)); x_76 = x_69; } else { + lean::inc(x_74); lean::dec(x_69); x_76 = lean::box(0); } @@ -3009,14 +3009,14 @@ lean::inc(x_3); x_5 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); x_6 = l_lean_ir_set__type(x_3, x_5, x_1, x_2); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -3024,11 +3024,11 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_14 = x_7; } else { + lean::inc(x_12); lean::dec(x_7); x_14 = lean::box(0); } @@ -3123,14 +3123,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_phi_infer__types(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -3140,11 +3140,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -3198,14 +3198,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_instr_infer__types(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -3215,11 +3215,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -3258,14 +3258,14 @@ lean::inc(x_3); lean::inc(x_1); x_6 = l_list_mmap_x_27___main___at_lean_ir_block_infer__types___spec__1(x_3, x_1, x_2); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -3274,11 +3274,11 @@ if (lean::obj_tag(x_7) == 0) obj* x_13; obj* x_15; obj* x_16; obj* x_19; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_1); x_13 = lean::cnstr_get(x_7, 0); -lean::inc(x_13); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_15 = x_7; } else { + lean::inc(x_13); lean::dec(x_7); x_15 = lean::box(0); } @@ -3434,14 +3434,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_arg_infer__types(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -3451,11 +3451,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -3509,14 +3509,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_block_infer__types(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -3526,11 +3526,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -3589,14 +3589,14 @@ lean::inc(x_13); lean::inc(x_1); x_16 = l_list_mmap_x_27___main___at_lean_ir_decl_infer__types___main___spec__1(x_13, x_1, x_2); x_17 = lean::cnstr_get(x_16, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_16, 1); -lean::inc(x_19); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); x_21 = x_16; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_16); x_21 = lean::box(0); } @@ -3606,11 +3606,11 @@ obj* x_24; obj* x_26; obj* x_27; obj* x_30; uint8 x_31; obj* x_32; obj* x_33; ob lean::dec(x_10); lean::dec(x_1); x_24 = lean::cnstr_get(x_17, 0); -lean::inc(x_24); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_26 = x_17; } else { + lean::inc(x_24); lean::dec(x_17); x_26 = lean::box(0); } @@ -3842,14 +3842,14 @@ lean::dec(x_20); lean::inc(x_2); x_28 = l_lean_ir_check__type(x_10, x_25, x_2, x_3); x_29 = lean::cnstr_get(x_28, 0); -lean::inc(x_29); x_31 = lean::cnstr_get(x_28, 1); -lean::inc(x_31); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); - lean::cnstr_release(x_28, 1); + lean::cnstr_set(x_28, 0, lean::box(0)); + lean::cnstr_set(x_28, 1, lean::box(0)); x_33 = x_28; } else { + lean::inc(x_29); + lean::inc(x_31); lean::dec(x_28); x_33 = lean::box(0); } @@ -3860,11 +3860,11 @@ lean::dec(x_2); lean::dec(x_22); lean::dec(x_12); x_37 = lean::cnstr_get(x_29, 0); -lean::inc(x_37); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_39 = x_29; } else { + lean::inc(x_37); lean::dec(x_29); x_39 = lean::box(0); } @@ -3929,14 +3929,14 @@ x_11 = 11; lean::inc(x_1); x_13 = l_lean_ir_check__type(x_6, x_11, x_1, x_2); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -3946,11 +3946,11 @@ obj* x_21; obj* x_23; obj* x_24; obj* x_25; lean::dec(x_8); lean::dec(x_1); x_21 = lean::cnstr_get(x_14, 0); -lean::inc(x_21); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_23 = x_14; } else { + lean::inc(x_21); lean::dec(x_14); x_23 = lean::box(0); } @@ -4063,14 +4063,14 @@ x_11 = 11; lean::inc(x_1); x_13 = l_lean_ir_check__type(x_6, x_11, x_1, x_2); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -4080,11 +4080,11 @@ obj* x_21; obj* x_23; obj* x_24; obj* x_25; lean::dec(x_8); lean::dec(x_1); x_21 = lean::cnstr_get(x_14, 0); -lean::inc(x_21); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_23 = x_14; } else { + lean::inc(x_21); lean::dec(x_14); x_23 = lean::box(0); } @@ -4187,14 +4187,14 @@ x_6 = lean::cnstr_get(x_0, 1); lean::inc(x_6); x_8 = l_lean_ir_get__type(x_6, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -4202,11 +4202,11 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_17; obj* x_18; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_16 = x_9; } else { + lean::inc(x_14); lean::dec(x_9); x_16 = lean::box(0); } @@ -4287,14 +4287,14 @@ x_38 = lean::cnstr_get(x_0, 1); lean::inc(x_38); x_40 = l_lean_ir_get__type(x_38, x_1, x_2); x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get(x_40, 1); -lean::inc(x_43); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_45 = x_40; } else { + lean::inc(x_41); + lean::inc(x_43); lean::dec(x_40); x_45 = lean::box(0); } @@ -4302,11 +4302,11 @@ if (lean::obj_tag(x_41) == 0) { obj* x_46; obj* x_48; obj* x_49; obj* x_50; x_46 = lean::cnstr_get(x_41, 0); -lean::inc(x_46); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_48 = x_41; } else { + lean::inc(x_46); lean::dec(x_41); x_48 = lean::box(0); } @@ -4376,14 +4376,14 @@ lean::inc(x_64); lean::inc(x_1); x_67 = l_lean_ir_get__type(x_62, x_1, x_2); x_68 = lean::cnstr_get(x_67, 0); -lean::inc(x_68); x_70 = lean::cnstr_get(x_67, 1); -lean::inc(x_70); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); - lean::cnstr_release(x_67, 1); + lean::cnstr_set(x_67, 0, lean::box(0)); + lean::cnstr_set(x_67, 1, lean::box(0)); x_72 = x_67; } else { + lean::inc(x_68); + lean::inc(x_70); lean::dec(x_67); x_72 = lean::box(0); } @@ -4393,11 +4393,11 @@ obj* x_75; obj* x_77; obj* x_78; obj* x_79; lean::dec(x_1); lean::dec(x_64); x_75 = lean::cnstr_get(x_68, 0); -lean::inc(x_75); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_77 = x_68; } else { + lean::inc(x_75); lean::dec(x_68); x_77 = lean::box(0); } @@ -4421,11 +4421,11 @@ else { obj* x_80; obj* x_82; obj* x_83; obj* x_84; obj* x_86; x_80 = lean::cnstr_get(x_68, 0); -lean::inc(x_80); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_82 = x_68; } else { + lean::inc(x_80); lean::dec(x_68); x_82 = lean::box(0); } @@ -4520,14 +4520,14 @@ lean::inc(x_112); lean::inc(x_1); x_115 = l_lean_ir_get__decl(x_110, x_1, x_2); x_116 = lean::cnstr_get(x_115, 0); -lean::inc(x_116); x_118 = lean::cnstr_get(x_115, 1); -lean::inc(x_118); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); - lean::cnstr_release(x_115, 1); + lean::cnstr_set(x_115, 0, lean::box(0)); + lean::cnstr_set(x_115, 1, lean::box(0)); x_120 = x_115; } else { + lean::inc(x_116); + lean::inc(x_118); lean::dec(x_115); x_120 = lean::box(0); } @@ -4537,11 +4537,11 @@ obj* x_123; obj* x_125; obj* x_126; obj* x_127; lean::dec(x_112); lean::dec(x_1); x_123 = lean::cnstr_get(x_116, 0); -lean::inc(x_123); if (lean::is_exclusive(x_116)) { - lean::cnstr_release(x_116, 0); + lean::cnstr_set(x_116, 0, lean::box(0)); x_125 = x_116; } else { + lean::inc(x_123); lean::dec(x_116); x_125 = lean::box(0); } @@ -4599,14 +4599,14 @@ x_144 = 11; lean::inc(x_1); x_146 = l_lean_ir_check__type(x_140, x_144, x_1, x_2); x_147 = lean::cnstr_get(x_146, 0); -lean::inc(x_147); x_149 = lean::cnstr_get(x_146, 1); -lean::inc(x_149); if (lean::is_exclusive(x_146)) { - lean::cnstr_release(x_146, 0); - lean::cnstr_release(x_146, 1); + lean::cnstr_set(x_146, 0, lean::box(0)); + lean::cnstr_set(x_146, 1, lean::box(0)); x_151 = x_146; } else { + lean::inc(x_147); + lean::inc(x_149); lean::dec(x_146); x_151 = lean::box(0); } @@ -4616,11 +4616,11 @@ obj* x_154; obj* x_156; obj* x_157; obj* x_158; lean::dec(x_142); lean::dec(x_1); x_154 = lean::cnstr_get(x_147, 0); -lean::inc(x_154); if (lean::is_exclusive(x_147)) { - lean::cnstr_release(x_147, 0); + lean::cnstr_set(x_147, 0, lean::box(0)); x_156 = x_147; } else { + lean::inc(x_154); lean::dec(x_147); x_156 = lean::box(0); } @@ -4671,14 +4671,14 @@ x_170 = 11; lean::inc(x_1); x_172 = l_lean_ir_check__type(x_166, x_170, x_1, x_2); x_173 = lean::cnstr_get(x_172, 0); -lean::inc(x_173); x_175 = lean::cnstr_get(x_172, 1); -lean::inc(x_175); if (lean::is_exclusive(x_172)) { - lean::cnstr_release(x_172, 0); - lean::cnstr_release(x_172, 1); + lean::cnstr_set(x_172, 0, lean::box(0)); + lean::cnstr_set(x_172, 1, lean::box(0)); x_177 = x_172; } else { + lean::inc(x_173); + lean::inc(x_175); lean::dec(x_172); x_177 = lean::box(0); } @@ -4688,11 +4688,11 @@ obj* x_180; obj* x_182; obj* x_183; obj* x_184; lean::dec(x_168); lean::dec(x_1); x_180 = lean::cnstr_get(x_173, 0); -lean::inc(x_180); if (lean::is_exclusive(x_173)) { - lean::cnstr_release(x_173, 0); + lean::cnstr_set(x_173, 0, lean::box(0)); x_182 = x_173; } else { + lean::inc(x_180); lean::dec(x_173); x_182 = lean::box(0); } @@ -4733,14 +4733,14 @@ x_192 = 11; lean::inc(x_1); x_194 = l_lean_ir_check__type(x_190, x_192, x_1, x_2); x_195 = lean::cnstr_get(x_194, 0); -lean::inc(x_195); x_197 = lean::cnstr_get(x_194, 1); -lean::inc(x_197); if (lean::is_exclusive(x_194)) { - lean::cnstr_release(x_194, 0); - lean::cnstr_release(x_194, 1); + lean::cnstr_set(x_194, 0, lean::box(0)); + lean::cnstr_set(x_194, 1, lean::box(0)); x_199 = x_194; } else { + lean::inc(x_195); + lean::inc(x_197); lean::dec(x_194); x_199 = lean::box(0); } @@ -4750,11 +4750,11 @@ obj* x_202; obj* x_204; obj* x_205; obj* x_206; lean::dec(x_188); lean::dec(x_1); x_202 = lean::cnstr_get(x_195, 0); -lean::inc(x_202); if (lean::is_exclusive(x_195)) { - lean::cnstr_release(x_195, 0); + lean::cnstr_set(x_195, 0, lean::box(0)); x_204 = x_195; } else { + lean::inc(x_202); lean::dec(x_195); x_204 = lean::box(0); } @@ -4795,14 +4795,14 @@ lean::inc(x_1); lean::inc(x_212); x_216 = l_list_mmap_x_27___main___at_lean_ir_instr_check___spec__1(x_212, x_1, x_2); x_217 = lean::cnstr_get(x_216, 0); -lean::inc(x_217); x_219 = lean::cnstr_get(x_216, 1); -lean::inc(x_219); if (lean::is_exclusive(x_216)) { - lean::cnstr_release(x_216, 0); - lean::cnstr_release(x_216, 1); + lean::cnstr_set(x_216, 0, lean::box(0)); + lean::cnstr_set(x_216, 1, lean::box(0)); x_221 = x_216; } else { + lean::inc(x_217); + lean::inc(x_219); lean::dec(x_216); x_221 = lean::box(0); } @@ -4813,11 +4813,11 @@ lean::dec(x_1); lean::dec(x_212); lean::dec(x_210); x_225 = lean::cnstr_get(x_217, 0); -lean::inc(x_225); if (lean::is_exclusive(x_217)) { - lean::cnstr_release(x_217, 0); + lean::cnstr_set(x_217, 0, lean::box(0)); x_227 = x_217; } else { + lean::inc(x_225); lean::dec(x_217); x_227 = lean::box(0); } @@ -4944,14 +4944,14 @@ x_273 = 5; lean::inc(x_1); x_275 = l_lean_ir_check__type(x_269, x_273, x_1, x_2); x_276 = lean::cnstr_get(x_275, 0); -lean::inc(x_276); x_278 = lean::cnstr_get(x_275, 1); -lean::inc(x_278); if (lean::is_exclusive(x_275)) { - lean::cnstr_release(x_275, 0); - lean::cnstr_release(x_275, 1); + lean::cnstr_set(x_275, 0, lean::box(0)); + lean::cnstr_set(x_275, 1, lean::box(0)); x_280 = x_275; } else { + lean::inc(x_276); + lean::inc(x_278); lean::dec(x_275); x_280 = lean::box(0); } @@ -4961,11 +4961,11 @@ obj* x_283; obj* x_285; obj* x_286; obj* x_287; lean::dec(x_1); lean::dec(x_271); x_283 = lean::cnstr_get(x_276, 0); -lean::inc(x_283); if (lean::is_exclusive(x_276)) { - lean::cnstr_release(x_276, 0); + lean::cnstr_set(x_276, 0, lean::box(0)); x_285 = x_276; } else { + lean::inc(x_283); lean::dec(x_276); x_285 = lean::box(0); } @@ -5014,14 +5014,14 @@ x_300 = 5; lean::inc(x_1); x_302 = l_lean_ir_check__type(x_292, x_300, x_1, x_2); x_303 = lean::cnstr_get(x_302, 0); -lean::inc(x_303); x_305 = lean::cnstr_get(x_302, 1); -lean::inc(x_305); if (lean::is_exclusive(x_302)) { - lean::cnstr_release(x_302, 0); - lean::cnstr_release(x_302, 1); + lean::cnstr_set(x_302, 0, lean::box(0)); + lean::cnstr_set(x_302, 1, lean::box(0)); x_307 = x_302; } else { + lean::inc(x_303); + lean::inc(x_305); lean::dec(x_302); x_307 = lean::box(0); } @@ -5031,11 +5031,11 @@ obj* x_310; obj* x_312; obj* x_313; obj* x_314; lean::dec(x_1); lean::dec(x_294); x_310 = lean::cnstr_get(x_303, 0); -lean::inc(x_310); if (lean::is_exclusive(x_303)) { - lean::cnstr_release(x_303, 0); + lean::cnstr_set(x_303, 0, lean::box(0)); x_312 = x_303; } else { + lean::inc(x_310); lean::dec(x_303); x_312 = lean::box(0); } @@ -5119,14 +5119,14 @@ x_331 = 5; lean::inc(x_1); x_333 = l_lean_ir_check__type(x_292, x_331, x_1, x_2); x_334 = lean::cnstr_get(x_333, 0); -lean::inc(x_334); x_336 = lean::cnstr_get(x_333, 1); -lean::inc(x_336); if (lean::is_exclusive(x_333)) { - lean::cnstr_release(x_333, 0); - lean::cnstr_release(x_333, 1); + lean::cnstr_set(x_333, 0, lean::box(0)); + lean::cnstr_set(x_333, 1, lean::box(0)); x_338 = x_333; } else { + lean::inc(x_334); + lean::inc(x_336); lean::dec(x_333); x_338 = lean::box(0); } @@ -5136,11 +5136,11 @@ obj* x_341; obj* x_343; obj* x_344; obj* x_345; lean::dec(x_1); lean::dec(x_294); x_341 = lean::cnstr_get(x_334, 0); -lean::inc(x_341); if (lean::is_exclusive(x_334)) { - lean::cnstr_release(x_334, 0); + lean::cnstr_set(x_334, 0, lean::box(0)); x_343 = x_334; } else { + lean::inc(x_341); lean::dec(x_334); x_343 = lean::box(0); } @@ -5229,14 +5229,14 @@ x_366 = 11; lean::inc(x_1); x_368 = l_lean_ir_check__type(x_362, x_366, x_1, x_2); x_369 = lean::cnstr_get(x_368, 0); -lean::inc(x_369); x_371 = lean::cnstr_get(x_368, 1); -lean::inc(x_371); if (lean::is_exclusive(x_368)) { - lean::cnstr_release(x_368, 0); - lean::cnstr_release(x_368, 1); + lean::cnstr_set(x_368, 0, lean::box(0)); + lean::cnstr_set(x_368, 1, lean::box(0)); x_373 = x_368; } else { + lean::inc(x_369); + lean::inc(x_371); lean::dec(x_368); x_373 = lean::box(0); } @@ -5246,11 +5246,11 @@ obj* x_376; obj* x_378; obj* x_379; obj* x_380; lean::dec(x_1); lean::dec(x_364); x_376 = lean::cnstr_get(x_369, 0); -lean::inc(x_376); if (lean::is_exclusive(x_369)) { - lean::cnstr_release(x_369, 0); + lean::cnstr_set(x_369, 0, lean::box(0)); x_378 = x_369; } else { + lean::inc(x_376); lean::dec(x_369); x_378 = lean::box(0); } @@ -5286,14 +5286,14 @@ lbl_4: { obj* x_385; obj* x_387; obj* x_389; x_385 = lean::cnstr_get(x_3, 0); -lean::inc(x_385); x_387 = lean::cnstr_get(x_3, 1); -lean::inc(x_387); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_389 = x_3; } else { + lean::inc(x_385); + lean::inc(x_387); lean::dec(x_3); x_389 = lean::box(0); } @@ -5301,11 +5301,11 @@ if (lean::obj_tag(x_385) == 0) { obj* x_390; obj* x_392; obj* x_393; uint8 x_394; obj* x_395; obj* x_396; obj* x_397; obj* x_398; obj* x_399; obj* x_400; obj* x_401; obj* x_402; obj* x_403; obj* x_404; obj* x_405; obj* x_406; obj* x_407; x_390 = lean::cnstr_get(x_385, 0); -lean::inc(x_390); if (lean::is_exclusive(x_385)) { - lean::cnstr_release(x_385, 0); + lean::cnstr_set(x_385, 0, lean::box(0)); x_392 = x_385; } else { + lean::inc(x_390); lean::dec(x_385); x_392 = lean::box(0); } @@ -5391,14 +5391,14 @@ x_13 = lean::cnstr_get_scalar(x_0, sizeof(void*)*2); lean::inc(x_2); x_15 = l_lean_ir_check__type(x_8, x_13, x_2, x_3); x_16 = lean::cnstr_get(x_15, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_15, 1); -lean::inc(x_18); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); x_20 = x_15; } else { + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_15); x_20 = lean::box(0); } @@ -5409,11 +5409,11 @@ lean::dec(x_10); lean::dec(x_0); lean::dec(x_2); x_24 = lean::cnstr_get(x_16, 0); -lean::inc(x_24); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_26 = x_16; } else { + lean::inc(x_24); lean::dec(x_16); x_26 = lean::box(0); } @@ -5452,14 +5452,14 @@ lean::inc(x_3); lean::inc(x_0); x_6 = l_list_mmap_x_27___main___at_lean_ir_phi_check___spec__1(x_0, x_3, x_1, x_2); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -5467,11 +5467,11 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_15; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_14 = x_7; } else { + lean::inc(x_12); lean::dec(x_7); x_14 = lean::box(0); } @@ -5598,11 +5598,11 @@ if (lean::obj_tag(x_20) == 0) { obj* x_25; obj* x_27; obj* x_28; x_25 = lean::cnstr_get(x_20, 0); -lean::inc(x_25); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_27 = x_20; } else { + lean::inc(x_25); lean::dec(x_20); x_27 = lean::box(0); } @@ -5676,11 +5676,11 @@ if (lean::obj_tag(x_3) == 0) { obj* x_45; obj* x_47; obj* x_48; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; x_45 = lean::cnstr_get(x_3, 0); -lean::inc(x_45); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_47 = x_3; } else { + lean::inc(x_45); lean::dec(x_3); x_47 = lean::box(0); } @@ -5756,14 +5756,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_phi_check(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -5773,11 +5773,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -5831,14 +5831,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_instr_check(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -5848,11 +5848,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -5901,11 +5901,11 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_20; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_19 = x_12; } else { + lean::inc(x_17); lean::dec(x_12); x_19 = lean::box(0); } @@ -5944,11 +5944,11 @@ obj* x_33; obj* x_35; obj* x_36; obj* x_39; uint8 x_40; obj* x_41; obj* x_42; ob lean::dec(x_5); lean::dec(x_1); x_33 = lean::cnstr_get(x_7, 0); -lean::inc(x_33); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_35 = x_7; } else { + lean::inc(x_33); lean::dec(x_7); x_35 = lean::box(0); } @@ -6003,14 +6003,14 @@ if (lean::is_exclusive(x_7)) { } x_55 = l_lean_ir_terminator_check(x_5, x_1, x_8); x_56 = lean::cnstr_get(x_55, 0); -lean::inc(x_56); x_58 = lean::cnstr_get(x_55, 1); -lean::inc(x_58); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); - lean::cnstr_release(x_55, 1); + lean::cnstr_set(x_55, 0, lean::box(0)); + lean::cnstr_set(x_55, 1, lean::box(0)); x_60 = x_55; } else { + lean::inc(x_56); + lean::inc(x_58); lean::dec(x_55); x_60 = lean::box(0); } @@ -6106,14 +6106,14 @@ lean::dec(x_0); lean::inc(x_1); x_12 = l_lean_ir_block_check(x_6, x_1, x_2); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -6123,11 +6123,11 @@ obj* x_20; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_8); lean::dec(x_1); x_20 = lean::cnstr_get(x_13, 0); -lean::inc(x_20); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_22 = x_13; } else { + lean::inc(x_20); lean::dec(x_13); x_22 = lean::box(0); } @@ -6199,11 +6199,11 @@ obj* x_6; obj* x_8; obj* x_9; obj* x_10; lean::dec(x_0); lean::dec(x_2); x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } diff --git a/src/boot/init/lean/kvmap.cpp b/src/boot/init/lean/kvmap.cpp index 9a5e9b1dd2..a7df9b403a 100644 --- a/src/boot/init/lean/kvmap.cpp +++ b/src/boot/init/lean/kvmap.cpp @@ -120,14 +120,14 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_10; uint8 x_12; x_5 = lean::cnstr_get(x_0, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_0, 1); -lean::inc(x_7); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_9 = x_0; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_0); x_9 = lean::box(0); } @@ -225,11 +225,11 @@ else { obj* x_4; obj* x_6; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } @@ -275,11 +275,11 @@ else { obj* x_4; obj* x_6; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } @@ -325,11 +325,11 @@ else { obj* x_4; obj* x_6; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } @@ -375,11 +375,11 @@ else { obj* x_4; obj* x_6; x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_6 = x_2; } else { + lean::inc(x_4); lean::dec(x_2); x_6 = lean::box(0); } diff --git a/src/boot/init/lean/level.cpp b/src/boot/init/lean/level.cpp index 88c8e76165..8a039fcd6d 100644 --- a/src/boot/init/lean/level.cpp +++ b/src/boot/init/lean/level.cpp @@ -448,14 +448,14 @@ lean::inc(x_1); lean::dec(x_0); x_4 = l_lean_level_to__offset___main(x_1); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -586,11 +586,11 @@ case 1: { obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_3 = x_0; } else { + lean::inc(x_1); lean::dec(x_0); x_3 = lean::box(0); } @@ -609,14 +609,14 @@ case 2: { obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_16; x_8 = lean::cnstr_get(x_0, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 1); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -661,11 +661,11 @@ case 3: { obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -722,11 +722,11 @@ case 4: { obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } diff --git a/src/boot/init/lean/name_mangling.cpp b/src/boot/init/lean/name_mangling.cpp index ac0548ba2d..cfb06be973 100644 --- a/src/boot/init/lean/name_mangling.cpp +++ b/src/boot/init/lean/name_mangling.cpp @@ -506,17 +506,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; uint32 x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_19; obj* x_20; obj* x_21; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_6, 2); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -559,12 +559,12 @@ else { obj* x_28; uint8 x_30; obj* x_31; obj* x_33; obj* x_34; x_28 = lean::cnstr_get(x_6, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_31 = x_6; } else { + lean::inc(x_28); lean::dec(x_6); x_31 = lean::box(0); } @@ -692,17 +692,17 @@ if (lean::obj_tag(x_89) == 0) { obj* x_90; obj* x_92; obj* x_94; obj* x_96; uint32 x_97; obj* x_98; obj* x_99; obj* x_100; obj* x_102; obj* x_103; obj* x_105; obj* x_106; x_90 = lean::cnstr_get(x_89, 0); -lean::inc(x_90); x_92 = lean::cnstr_get(x_89, 1); -lean::inc(x_92); x_94 = lean::cnstr_get(x_89, 2); -lean::inc(x_94); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); - lean::cnstr_release(x_89, 1); - lean::cnstr_release(x_89, 2); + lean::cnstr_set(x_89, 0, lean::box(0)); + lean::cnstr_set(x_89, 1, lean::box(0)); + lean::cnstr_set(x_89, 2, lean::box(0)); x_96 = x_89; } else { + lean::inc(x_90); + lean::inc(x_92); + lean::inc(x_94); lean::dec(x_89); x_96 = lean::box(0); } @@ -748,12 +748,12 @@ else { obj* x_114; uint8 x_116; obj* x_117; obj* x_119; obj* x_120; x_114 = lean::cnstr_get(x_89, 0); -lean::inc(x_114); x_116 = lean::cnstr_get_scalar(x_89, sizeof(void*)*1); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); + lean::cnstr_set(x_89, 0, lean::box(0)); x_117 = x_89; } else { + lean::inc(x_114); lean::dec(x_89); x_117 = lean::box(0); } @@ -886,17 +886,17 @@ if (lean::obj_tag(x_170) == 0) { obj* x_171; obj* x_173; obj* x_175; obj* x_177; uint32 x_178; obj* x_179; obj* x_180; obj* x_181; obj* x_183; obj* x_184; obj* x_186; obj* x_187; obj* x_188; obj* x_189; obj* x_190; obj* x_191; x_171 = lean::cnstr_get(x_170, 0); -lean::inc(x_171); x_173 = lean::cnstr_get(x_170, 1); -lean::inc(x_173); x_175 = lean::cnstr_get(x_170, 2); -lean::inc(x_175); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); - lean::cnstr_release(x_170, 1); - lean::cnstr_release(x_170, 2); + lean::cnstr_set(x_170, 0, lean::box(0)); + lean::cnstr_set(x_170, 1, lean::box(0)); + lean::cnstr_set(x_170, 2, lean::box(0)); x_177 = x_170; } else { + lean::inc(x_171); + lean::inc(x_173); + lean::inc(x_175); lean::dec(x_170); x_177 = lean::box(0); } @@ -927,12 +927,12 @@ else { obj* x_192; uint8 x_194; obj* x_195; obj* x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; obj* x_201; x_192 = lean::cnstr_get(x_170, 0); -lean::inc(x_192); x_194 = lean::cnstr_get_scalar(x_170, sizeof(void*)*1); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); + lean::cnstr_set(x_170, 0, lean::box(0)); x_195 = x_170; } else { + lean::inc(x_192); lean::dec(x_170); x_195 = lean::box(0); } @@ -1119,15 +1119,15 @@ if (lean::obj_tag(x_11) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_19; obj* x_20; x_12 = lean::cnstr_get(x_11, 1); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 2); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -1149,12 +1149,12 @@ else { obj* x_21; uint8 x_23; obj* x_24; obj* x_25; obj* x_26; x_21 = lean::cnstr_get(x_11, 0); -lean::inc(x_21); x_23 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_24 = x_11; } else { + lean::inc(x_21); lean::dec(x_11); x_24 = lean::box(0); } @@ -1231,12 +1231,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_65; obj* x_66; x_60 = lean::cnstr_get(x_39, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_39, sizeof(void*)*1); if (lean::is_exclusive(x_39)) { - lean::cnstr_release(x_39, 0); + lean::cnstr_set(x_39, 0, lean::box(0)); x_63 = x_39; } else { + lean::inc(x_60); lean::dec(x_39); x_63 = lean::box(0); } @@ -1314,12 +1314,12 @@ else { obj* x_99; uint8 x_101; obj* x_102; obj* x_104; obj* x_105; x_99 = lean::cnstr_get(x_77, 0); -lean::inc(x_99); x_101 = lean::cnstr_get_scalar(x_77, sizeof(void*)*1); if (lean::is_exclusive(x_77)) { - lean::cnstr_release(x_77, 0); + lean::cnstr_set(x_77, 0, lean::box(0)); x_102 = x_77; } else { + lean::inc(x_99); lean::dec(x_77); x_102 = lean::box(0); } @@ -1400,12 +1400,12 @@ else { obj* x_140; uint8 x_142; obj* x_143; obj* x_145; obj* x_146; x_140 = lean::cnstr_get(x_119, 0); -lean::inc(x_140); x_142 = lean::cnstr_get_scalar(x_119, sizeof(void*)*1); if (lean::is_exclusive(x_119)) { - lean::cnstr_release(x_119, 0); + lean::cnstr_set(x_119, 0, lean::box(0)); x_143 = x_119; } else { + lean::inc(x_140); lean::dec(x_119); x_143 = lean::box(0); } @@ -1519,12 +1519,12 @@ else obj* x_208; uint8 x_210; obj* x_211; obj* x_212; obj* x_213; obj* x_214; obj* x_215; lean::dec(x_168); x_208 = lean::cnstr_get(x_175, 0); -lean::inc(x_208); x_210 = lean::cnstr_get_scalar(x_175, sizeof(void*)*1); if (lean::is_exclusive(x_175)) { - lean::cnstr_release(x_175, 0); + lean::cnstr_set(x_175, 0, lean::box(0)); x_211 = x_175; } else { + lean::inc(x_208); lean::dec(x_175); x_211 = lean::box(0); } @@ -1567,12 +1567,12 @@ else { obj* x_226; uint8 x_228; obj* x_229; obj* x_230; obj* x_231; obj* x_232; x_226 = lean::cnstr_get(x_167, 0); -lean::inc(x_226); x_228 = lean::cnstr_get_scalar(x_167, sizeof(void*)*1); if (lean::is_exclusive(x_167)) { - lean::cnstr_release(x_167, 0); + lean::cnstr_set(x_167, 0, lean::box(0)); x_229 = x_167; } else { + lean::inc(x_226); lean::dec(x_167); x_229 = lean::box(0); } @@ -1614,12 +1614,12 @@ else { obj* x_243; uint8 x_245; obj* x_246; obj* x_248; obj* x_249; x_243 = lean::cnstr_get(x_161, 0); -lean::inc(x_243); x_245 = lean::cnstr_get_scalar(x_161, sizeof(void*)*1); if (lean::is_exclusive(x_161)) { - lean::cnstr_release(x_161, 0); + lean::cnstr_set(x_161, 0, lean::box(0)); x_246 = x_161; } else { + lean::inc(x_243); lean::dec(x_161); x_246 = lean::box(0); } @@ -1753,12 +1753,12 @@ lean::dec(x_283); lean::dec(x_275); lean::dec(x_267); x_334 = lean::cnstr_get(x_290, 0); -lean::inc(x_334); x_336 = lean::cnstr_get_scalar(x_290, sizeof(void*)*1); if (lean::is_exclusive(x_290)) { - lean::cnstr_release(x_290, 0); + lean::cnstr_set(x_290, 0, lean::box(0)); x_337 = x_290; } else { + lean::inc(x_334); lean::dec(x_290); x_337 = lean::box(0); } @@ -1790,12 +1790,12 @@ lean::dec(x_1); lean::dec(x_275); lean::dec(x_267); x_353 = lean::cnstr_get(x_282, 0); -lean::inc(x_353); x_355 = lean::cnstr_get_scalar(x_282, sizeof(void*)*1); if (lean::is_exclusive(x_282)) { - lean::cnstr_release(x_282, 0); + lean::cnstr_set(x_282, 0, lean::box(0)); x_356 = x_282; } else { + lean::inc(x_353); lean::dec(x_282); x_356 = lean::box(0); } @@ -1825,12 +1825,12 @@ lean::dec(x_6); lean::dec(x_1); lean::dec(x_267); x_370 = lean::cnstr_get(x_274, 0); -lean::inc(x_370); x_372 = lean::cnstr_get_scalar(x_274, sizeof(void*)*1); if (lean::is_exclusive(x_274)) { - lean::cnstr_release(x_274, 0); + lean::cnstr_set(x_274, 0, lean::box(0)); x_373 = x_274; } else { + lean::inc(x_370); lean::dec(x_274); x_373 = lean::box(0); } @@ -1858,12 +1858,12 @@ obj* x_385; uint8 x_387; obj* x_388; obj* x_389; obj* x_390; obj* x_391; obj* x_ lean::dec(x_6); lean::dec(x_1); x_385 = lean::cnstr_get(x_266, 0); -lean::inc(x_385); x_387 = lean::cnstr_get_scalar(x_266, sizeof(void*)*1); if (lean::is_exclusive(x_266)) { - lean::cnstr_release(x_266, 0); + lean::cnstr_set(x_266, 0, lean::box(0)); x_388 = x_266; } else { + lean::inc(x_385); lean::dec(x_266); x_388 = lean::box(0); } @@ -1890,12 +1890,12 @@ obj* x_399; uint8 x_401; obj* x_402; obj* x_403; obj* x_404; obj* x_405; obj* x_ lean::dec(x_6); lean::dec(x_1); x_399 = lean::cnstr_get(x_260, 0); -lean::inc(x_399); x_401 = lean::cnstr_get_scalar(x_260, sizeof(void*)*1); if (lean::is_exclusive(x_260)) { - lean::cnstr_release(x_260, 0); + lean::cnstr_set(x_260, 0, lean::box(0)); x_402 = x_260; } else { + lean::inc(x_399); lean::dec(x_260); x_402 = lean::box(0); } @@ -2362,12 +2362,12 @@ else { obj* x_18; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; x_18 = lean::cnstr_get(x_7, 0); -lean::inc(x_18); x_20 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_21 = x_7; } else { + lean::inc(x_18); lean::dec(x_7); x_21 = lean::box(0); } @@ -2419,12 +2419,12 @@ else { obj* x_46; uint8 x_48; obj* x_49; obj* x_50; obj* x_51; x_46 = lean::cnstr_get(x_35, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_35, sizeof(void*)*1); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_49 = x_35; } else { + lean::inc(x_46); lean::dec(x_35); x_49 = lean::box(0); } @@ -2461,17 +2461,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -2492,12 +2492,12 @@ else { obj* x_13; uint8 x_15; obj* x_16; obj* x_17; obj* x_18; x_13 = lean::cnstr_get(x_1, 0); -lean::inc(x_13); x_15 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_16 = x_1; } else { + lean::inc(x_13); lean::dec(x_1); x_16 = lean::box(0); } @@ -2590,15 +2590,15 @@ if (lean::obj_tag(x_12) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_21; x_13 = lean::cnstr_get(x_12, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 2); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -2620,12 +2620,12 @@ else { obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; x_22 = lean::cnstr_get(x_12, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_25 = x_12; } else { + lean::inc(x_22); lean::dec(x_12); x_25 = lean::box(0); } @@ -2667,15 +2667,15 @@ if (lean::obj_tag(x_42) == 0) { obj* x_43; obj* x_45; obj* x_47; obj* x_48; x_43 = lean::cnstr_get(x_42, 1); -lean::inc(x_43); x_45 = lean::cnstr_get(x_42, 2); -lean::inc(x_45); if (lean::is_exclusive(x_42)) { lean::cnstr_release(x_42, 0); - lean::cnstr_release(x_42, 1); - lean::cnstr_release(x_42, 2); + lean::cnstr_set(x_42, 1, lean::box(0)); + lean::cnstr_set(x_42, 2, lean::box(0)); x_47 = x_42; } else { + lean::inc(x_43); + lean::inc(x_45); lean::dec(x_42); x_47 = lean::box(0); } @@ -2800,12 +2800,12 @@ else { obj* x_111; uint8 x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; obj* x_119; x_111 = lean::cnstr_get(x_73, 0); -lean::inc(x_111); x_113 = lean::cnstr_get_scalar(x_73, sizeof(void*)*1); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_114 = x_73; } else { + lean::inc(x_111); lean::dec(x_73); x_114 = lean::box(0); } @@ -2847,12 +2847,12 @@ else obj* x_128; uint8 x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_135; obj* x_136; lean::dec(x_47); x_128 = lean::cnstr_get(x_62, 0); -lean::inc(x_128); x_130 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_131 = x_62; } else { + lean::inc(x_128); lean::dec(x_62); x_131 = lean::box(0); } @@ -2895,12 +2895,12 @@ obj* x_146; uint8 x_148; obj* x_149; obj* x_150; obj* x_151; obj* x_152; obj* x_ lean::dec(x_47); lean::dec(x_49); x_146 = lean::cnstr_get(x_56, 0); -lean::inc(x_146); x_148 = lean::cnstr_get_scalar(x_56, sizeof(void*)*1); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_149 = x_56; } else { + lean::inc(x_146); lean::dec(x_56); x_149 = lean::box(0); } @@ -2941,12 +2941,12 @@ else obj* x_162; uint8 x_164; obj* x_165; obj* x_166; obj* x_167; obj* x_168; lean::dec(x_47); x_162 = lean::cnstr_get(x_48, 0); -lean::inc(x_162); x_164 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_165 = x_48; } else { + lean::inc(x_162); lean::dec(x_48); x_165 = lean::box(0); } @@ -2985,12 +2985,12 @@ else { obj* x_176; uint8 x_178; obj* x_179; obj* x_181; obj* x_182; x_176 = lean::cnstr_get(x_42, 0); -lean::inc(x_176); x_178 = lean::cnstr_get_scalar(x_42, sizeof(void*)*1); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_179 = x_42; } else { + lean::inc(x_176); lean::dec(x_42); x_179 = lean::box(0); } @@ -3068,12 +3068,12 @@ lean::dec(x_6); lean::dec(x_1); lean::dec(x_195); x_218 = lean::cnstr_get(x_202, 0); -lean::inc(x_218); x_220 = lean::cnstr_get_scalar(x_202, sizeof(void*)*1); if (lean::is_exclusive(x_202)) { - lean::cnstr_release(x_202, 0); + lean::cnstr_set(x_202, 0, lean::box(0)); x_221 = x_202; } else { + lean::inc(x_218); lean::dec(x_202); x_221 = lean::box(0); } @@ -3098,12 +3098,12 @@ obj* x_230; uint8 x_232; obj* x_233; obj* x_234; obj* x_235; obj* x_236; obj* x_ lean::dec(x_6); lean::dec(x_1); x_230 = lean::cnstr_get(x_194, 0); -lean::inc(x_230); x_232 = lean::cnstr_get_scalar(x_194, sizeof(void*)*1); if (lean::is_exclusive(x_194)) { - lean::cnstr_release(x_194, 0); + lean::cnstr_set(x_194, 0, lean::box(0)); x_233 = x_194; } else { + lean::inc(x_230); lean::dec(x_194); x_233 = lean::box(0); } @@ -3127,12 +3127,12 @@ obj* x_241; uint8 x_243; obj* x_244; obj* x_245; obj* x_246; obj* x_247; obj* x_ lean::dec(x_6); lean::dec(x_1); x_241 = lean::cnstr_get(x_188, 0); -lean::inc(x_241); x_243 = lean::cnstr_get_scalar(x_188, sizeof(void*)*1); if (lean::is_exclusive(x_188)) { - lean::cnstr_release(x_188, 0); + lean::cnstr_set(x_188, 0, lean::box(0)); x_244 = x_188; } else { + lean::inc(x_241); lean::dec(x_188); x_244 = lean::box(0); } @@ -3240,12 +3240,12 @@ else { obj* x_17; uint8 x_19; obj* x_20; obj* x_21; obj* x_22; x_17 = lean::cnstr_get(x_5, 0); -lean::inc(x_17); x_19 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_20 = x_5; } else { + lean::inc(x_17); lean::dec(x_5); x_20 = lean::box(0); } diff --git a/src/boot/init/lean/parser/basic.cpp b/src/boot/init/lean/parser/basic.cpp index 93245d9f79..969cdbce81 100644 --- a/src/boot/init/lean/parser/basic.cpp +++ b/src/boot/init/lean/parser/basic.cpp @@ -770,14 +770,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -881,12 +881,12 @@ _start: { obj* x_4; obj* x_6; obj* x_7; obj* x_10; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); lean::cnstr_release(x_3, 1); x_6 = x_3; } else { + lean::inc(x_4); lean::dec(x_3); x_6 = lean::box(0); } @@ -1233,11 +1233,11 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_8; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_7 = x_4; } else { + lean::inc(x_5); lean::dec(x_4); x_7 = lean::box(0); } @@ -1253,11 +1253,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -1972,20 +1972,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -2052,20 +2052,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } @@ -2223,20 +2223,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_15; uint8 x_16; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -2303,20 +2303,20 @@ default: { obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; uint8 x_40; x_28 = lean::cnstr_get(x_0, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 1); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 2); -lean::inc(x_32); x_34 = lean::cnstr_get(x_0, 3); -lean::inc(x_34); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_36 = x_0; } else { + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_0); x_36 = lean::box(0); } diff --git a/src/boot/init/lean/parser/combinators.cpp b/src/boot/init/lean/parser/combinators.cpp index b8fdbdca68..4d8195d325 100644 --- a/src/boot/init/lean/parser/combinators.cpp +++ b/src/boot/init/lean/parser/combinators.cpp @@ -1961,14 +1961,14 @@ else { obj* x_10; obj* x_12; obj* x_14; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_4, 1); -lean::inc(x_12); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_14 = x_4; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_4); x_14 = lean::box(0); } @@ -2078,14 +2078,14 @@ else { obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_22; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_4, 1); -lean::inc(x_12); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_14 = x_4; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_4); x_14 = lean::box(0); } @@ -2310,14 +2310,14 @@ else { obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_22; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_4, 1); -lean::inc(x_12); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_14 = x_4; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_4); x_14 = lean::box(0); } @@ -2604,11 +2604,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_2, 0); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_11 = x_2; } else { + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -3183,14 +3183,14 @@ else { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_16; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_6 = lean::cnstr_get(x_2, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_2, 1); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } diff --git a/src/boot/init/lean/parser/command.cpp b/src/boot/init/lean/parser/command.cpp index 2f4ac76297..030af459fc 100644 --- a/src/boot/init/lean/parser/command.cpp +++ b/src/boot/init/lean/parser/command.cpp @@ -374,14 +374,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::apply_3(x_1, x_0, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -441,14 +441,14 @@ obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_1 x_3 = lean::box(0); x_4 = l_lean_parser_rec__t_recurse___at_lean_parser_command_parser_lean_parser_has__view___spec__1(x_3, x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -789,14 +789,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -861,14 +861,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1074,11 +1074,11 @@ else { obj* x_60; obj* x_62; obj* x_63; obj* x_66; x_60 = lean::cnstr_get(x_40, 0); -lean::inc(x_60); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_62 = x_40; } else { + lean::inc(x_60); lean::dec(x_40); x_62 = lean::box(0); } @@ -1446,11 +1446,11 @@ else { obj* x_98; obj* x_100; obj* x_101; obj* x_104; x_98 = lean::cnstr_get(x_78, 0); -lean::inc(x_98); if (lean::is_exclusive(x_78)) { - lean::cnstr_release(x_78, 0); + lean::cnstr_set(x_78, 0, lean::box(0)); x_100 = x_78; } else { + lean::inc(x_98); lean::dec(x_78); x_100 = lean::box(0); } @@ -2243,11 +2243,11 @@ else { obj* x_61; obj* x_63; obj* x_64; obj* x_67; obj* x_68; x_61 = lean::cnstr_get(x_41, 0); -lean::inc(x_61); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_63 = x_41; } else { + lean::inc(x_61); lean::dec(x_41); x_63 = lean::box(0); } @@ -2618,11 +2618,11 @@ else { obj* x_99; obj* x_101; obj* x_102; obj* x_105; obj* x_106; x_99 = lean::cnstr_get(x_79, 0); -lean::inc(x_99); if (lean::is_exclusive(x_79)) { - lean::cnstr_release(x_79, 0); + lean::cnstr_set(x_79, 0, lean::box(0)); x_101 = x_79; } else { + lean::inc(x_99); lean::dec(x_79); x_101 = lean::box(0); } @@ -2813,14 +2813,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -2885,14 +2885,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -3100,11 +3100,11 @@ else { obj* x_61; obj* x_63; obj* x_64; obj* x_67; x_61 = lean::cnstr_get(x_41, 0); -lean::inc(x_61); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_63 = x_41; } else { + lean::inc(x_61); lean::dec(x_41); x_63 = lean::box(0); } @@ -3407,11 +3407,11 @@ else { obj* x_74; obj* x_76; obj* x_77; obj* x_80; x_74 = lean::cnstr_get(x_54, 0); -lean::inc(x_74); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_76 = x_54; } else { + lean::inc(x_74); lean::dec(x_54); x_76 = lean::box(0); } @@ -3706,11 +3706,11 @@ else { obj* x_26; obj* x_28; obj* x_29; x_26 = lean::cnstr_get(x_24, 0); -lean::inc(x_26); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_28 = x_24; } else { + lean::inc(x_26); lean::dec(x_24); x_28 = lean::box(0); } @@ -3800,11 +3800,11 @@ else { obj* x_62; obj* x_64; obj* x_65; x_62 = lean::cnstr_get(x_60, 0); -lean::inc(x_62); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_64 = x_60; } else { + lean::inc(x_62); lean::dec(x_60); x_64 = lean::box(0); } @@ -3900,11 +3900,11 @@ else { obj* x_103; obj* x_105; obj* x_106; x_103 = lean::cnstr_get(x_100, 0); -lean::inc(x_103); if (lean::is_exclusive(x_100)) { - lean::cnstr_release(x_100, 0); + lean::cnstr_set(x_100, 0, lean::box(0)); x_105 = x_100; } else { + lean::inc(x_103); lean::dec(x_100); x_105 = lean::box(0); } @@ -3992,11 +3992,11 @@ else { obj* x_132; obj* x_134; obj* x_135; x_132 = lean::cnstr_get(x_129, 0); -lean::inc(x_132); if (lean::is_exclusive(x_129)) { - lean::cnstr_release(x_129, 0); + lean::cnstr_set(x_129, 0, lean::box(0)); x_134 = x_129; } else { + lean::inc(x_132); lean::dec(x_129); x_134 = lean::box(0); } @@ -4093,11 +4093,11 @@ else { obj* x_164; obj* x_166; obj* x_167; x_164 = lean::cnstr_get(x_158, 0); -lean::inc(x_164); if (lean::is_exclusive(x_158)) { - lean::cnstr_release(x_158, 0); + lean::cnstr_set(x_158, 0, lean::box(0)); x_166 = x_158; } else { + lean::inc(x_164); lean::dec(x_158); x_166 = lean::box(0); } @@ -4306,11 +4306,11 @@ else { obj* x_39; obj* x_41; obj* x_42; x_39 = lean::cnstr_get(x_37, 0); -lean::inc(x_39); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); + lean::cnstr_set(x_37, 0, lean::box(0)); x_41 = x_37; } else { + lean::inc(x_39); lean::dec(x_37); x_41 = lean::box(0); } @@ -4400,11 +4400,11 @@ else { obj* x_75; obj* x_77; obj* x_78; x_75 = lean::cnstr_get(x_73, 0); -lean::inc(x_75); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_77 = x_73; } else { + lean::inc(x_75); lean::dec(x_73); x_77 = lean::box(0); } @@ -4500,11 +4500,11 @@ else { obj* x_116; obj* x_118; obj* x_119; x_116 = lean::cnstr_get(x_113, 0); -lean::inc(x_116); if (lean::is_exclusive(x_113)) { - lean::cnstr_release(x_113, 0); + lean::cnstr_set(x_113, 0, lean::box(0)); x_118 = x_113; } else { + lean::inc(x_116); lean::dec(x_113); x_118 = lean::box(0); } @@ -4592,11 +4592,11 @@ else { obj* x_145; obj* x_147; obj* x_148; x_145 = lean::cnstr_get(x_142, 0); -lean::inc(x_145); if (lean::is_exclusive(x_142)) { - lean::cnstr_release(x_142, 0); + lean::cnstr_set(x_142, 0, lean::box(0)); x_147 = x_142; } else { + lean::inc(x_145); lean::dec(x_142); x_147 = lean::box(0); } @@ -4693,11 +4693,11 @@ else { obj* x_177; obj* x_179; obj* x_180; x_177 = lean::cnstr_get(x_171, 0); -lean::inc(x_177); if (lean::is_exclusive(x_171)) { - lean::cnstr_release(x_171, 0); + lean::cnstr_set(x_171, 0, lean::box(0)); x_179 = x_171; } else { + lean::inc(x_177); lean::dec(x_171); x_179 = lean::box(0); } @@ -5576,11 +5576,11 @@ else { obj* x_8; obj* x_10; obj* x_11; x_8 = lean::cnstr_get(x_6, 0); -lean::inc(x_8); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_10 = x_6; } else { + lean::inc(x_8); lean::dec(x_6); x_10 = lean::box(0); } @@ -5935,11 +5935,11 @@ else { obj* x_8; obj* x_10; obj* x_11; x_8 = lean::cnstr_get(x_6, 0); -lean::inc(x_8); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_10 = x_6; } else { + lean::inc(x_8); lean::dec(x_6); x_10 = lean::box(0); } @@ -6304,11 +6304,11 @@ else { obj* x_23; obj* x_25; obj* x_26; x_23 = lean::cnstr_get(x_20, 0); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -6503,11 +6503,11 @@ else { obj* x_36; obj* x_38; obj* x_39; x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_38 = x_33; } else { + lean::inc(x_36); lean::dec(x_33); x_38 = lean::box(0); } @@ -7838,14 +7838,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7910,14 +7910,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -8280,14 +8280,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -8352,14 +8352,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -8785,11 +8785,11 @@ else { obj* x_23; obj* x_25; obj* x_26; x_23 = lean::cnstr_get(x_20, 0); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -8984,11 +8984,11 @@ else { obj* x_36; obj* x_38; obj* x_39; x_36 = lean::cnstr_get(x_33, 0); -lean::inc(x_36); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_38 = x_33; } else { + lean::inc(x_36); lean::dec(x_33); x_38 = lean::box(0); } @@ -9226,14 +9226,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -9298,14 +9298,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -9902,14 +9902,14 @@ lean::inc(x_3); lean::inc(x_2); x_9 = lean::apply_4(x_0, x_2, x_3, x_4, x_5); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -10144,11 +10144,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -10432,14 +10432,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -10504,14 +10504,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -10624,14 +10624,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; obj* x_13; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -10708,14 +10708,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -10757,11 +10757,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } @@ -11235,11 +11235,11 @@ else { obj* x_47; obj* x_49; obj* x_50; x_47 = lean::cnstr_get(x_45, 0); -lean::inc(x_47); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_49 = x_45; } else { + lean::inc(x_47); lean::dec(x_45); x_49 = lean::box(0); } @@ -13189,14 +13189,14 @@ lean::inc(x_3); lean::inc(x_6); x_11 = l_lean_parser_token(x_6, x_3, x_4); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -13204,17 +13204,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_24; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 1); -lean::inc(x_19); x_21 = lean::cnstr_get(x_12, 2); -lean::inc(x_21); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_23 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_12); x_23 = lean::box(0); } @@ -13369,12 +13369,12 @@ obj* x_85; uint8 x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; ob lean::dec(x_17); lean::dec(x_23); x_85 = lean::cnstr_get(x_66, 0); -lean::inc(x_85); x_87 = lean::cnstr_get_scalar(x_66, sizeof(void*)*1); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_88 = x_66; } else { + lean::inc(x_85); lean::dec(x_66); x_88 = lean::box(0); } @@ -13410,12 +13410,12 @@ lean::dec(x_6); lean::dec(x_3); lean::dec(x_0); x_99 = lean::cnstr_get(x_12, 0); -lean::inc(x_99); x_101 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_102 = x_12; } else { + lean::inc(x_99); lean::dec(x_12); x_102 = lean::box(0); } @@ -13453,14 +13453,14 @@ lean::inc(x_2); lean::inc(x_5); x_10 = l_lean_parser_token(x_5, x_2, x_3); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -13468,17 +13468,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_24; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -13552,12 +13552,12 @@ obj* x_58; uint8 x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; ob lean::dec(x_5); lean::dec(x_2); x_58 = lean::cnstr_get(x_11, 0); -lean::inc(x_58); x_60 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_61 = x_11; } else { + lean::inc(x_58); lean::dec(x_11); x_61 = lean::box(0); } @@ -13597,14 +13597,14 @@ lean::inc(x_2); lean::inc(x_5); x_10 = l_lean_parser_token(x_5, x_2, x_3); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -13612,17 +13612,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_24; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -13696,12 +13696,12 @@ obj* x_58; uint8 x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; ob lean::dec(x_5); lean::dec(x_2); x_58 = lean::cnstr_get(x_11, 0); -lean::inc(x_58); x_60 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_61 = x_11; } else { + lean::inc(x_58); lean::dec(x_11); x_61 = lean::box(0); } @@ -14065,14 +14065,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -14129,14 +14129,14 @@ lean::inc(x_3); lean::inc(x_2); x_7 = lean::apply_3(x_0, x_2, x_3, x_4); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -14350,14 +14350,14 @@ x_8 = l_lean_parser_rec__t_run__parsec___at_lean_parser_command__parser_run___sp x_9 = l_lean_parser_rec__t_run___at_lean_parser_command__parser_run___spec__9(x_0, x_8, x_1, x_6); x_10 = lean::apply_2(x_9, x_2, x_3); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } diff --git a/src/boot/init/lean/parser/declaration.cpp b/src/boot/init/lean/parser/declaration.cpp index 294a5262ed..69dddd0e1b 100644 --- a/src/boot/init/lean/parser/declaration.cpp +++ b/src/boot/init/lean/parser/declaration.cpp @@ -1037,14 +1037,14 @@ lean::inc(x_5); lean::inc(x_9); x_14 = l_lean_parser_token(x_9, x_5, x_6); x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_14, 1); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } @@ -1055,17 +1055,17 @@ if (lean::obj_tag(x_15) == 0) { obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_22 = lean::cnstr_get(x_15, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_15, 1); -lean::inc(x_24); x_26 = lean::cnstr_get(x_15, 2); -lean::inc(x_26); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); - lean::cnstr_release(x_15, 2); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); + lean::cnstr_set(x_15, 2, lean::box(0)); x_28 = x_15; } else { + lean::inc(x_22); + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_15); x_28 = lean::box(0); } @@ -1089,14 +1089,14 @@ lean::cnstr_set(x_39, 0, x_5); x_40 = lean::box(0); x_41 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_34, x_2, x_39, x_40, x_9, x_24, x_17); x_42 = lean::cnstr_get(x_41, 0); -lean::inc(x_42); x_44 = lean::cnstr_get(x_41, 1); -lean::inc(x_44); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); - lean::cnstr_release(x_41, 1); + lean::cnstr_set(x_41, 0, lean::box(0)); + lean::cnstr_set(x_41, 1, lean::box(0)); x_46 = x_41; } else { + lean::inc(x_42); + lean::inc(x_44); lean::dec(x_41); x_46 = lean::box(0); } @@ -1137,12 +1137,12 @@ obj* x_62; uint8 x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; obj* x_69; ob lean::dec(x_28); lean::dec(x_22); x_62 = lean::cnstr_get(x_42, 0); -lean::inc(x_62); x_64 = lean::cnstr_get_scalar(x_42, sizeof(void*)*1); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_65 = x_42; } else { + lean::inc(x_62); lean::dec(x_42); x_65 = lean::box(0); } @@ -1253,12 +1253,12 @@ lean::dec(x_9); lean::dec(x_0); lean::dec(x_2); x_113 = lean::cnstr_get(x_15, 0); -lean::inc(x_113); x_115 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_116 = x_15; } else { + lean::inc(x_113); lean::dec(x_15); x_116 = lean::box(0); } @@ -1368,14 +1368,14 @@ x_5 = l___private_init_lean_parser_token_1__finish__comment__block__aux___main__ lean::inc(x_2); x_7 = l_lean_parser_monad__parsec_str__core___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__2(x_4, x_5, x_0, x_1, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -1383,15 +1383,15 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 2); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } @@ -1413,13 +1413,13 @@ if (lean::obj_tag(x_22) == 0) { obj* x_23; obj* x_25; obj* x_26; obj* x_27; x_23 = lean::cnstr_get(x_22, 0); -lean::inc(x_23); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); lean::cnstr_release(x_22, 1); lean::cnstr_release(x_22, 2); x_25 = x_22; } else { + lean::inc(x_23); lean::dec(x_22); x_25 = lean::box(0); } @@ -1541,14 +1541,14 @@ x_6 = l_lean_parser_monad__parsec_eoi__error___rarg___closed__1; x_7 = l_mjoin___rarg___closed__1; x_8 = l_lean_parser_monad__parsec_error___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__4___rarg(x_6, x_7, x_5, x_5, x_0, x_1, x_2, x_3); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -1580,14 +1580,14 @@ x_24 = lean::box(0); x_25 = l_mjoin___rarg___closed__1; x_26 = l_lean_parser_monad__parsec_error___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__4___rarg(x_23, x_25, x_24, x_24, x_0, x_1, x_2, x_3); x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_26, 1); -lean::inc(x_29); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); x_31 = x_26; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_26); x_31 = lean::box(0); } @@ -1647,17 +1647,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_25; obj* x_27; obj* x_29; obj* x_31; uint8 x_32; x_25 = lean::cnstr_get(x_20, 0); -lean::inc(x_25); x_27 = lean::cnstr_get(x_20, 1); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 2); -lean::inc(x_29); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_31 = x_20; } else { + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_20); x_31 = lean::box(0); } @@ -1707,12 +1707,12 @@ else { obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; x_63 = lean::cnstr_get(x_48, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_66 = x_48; } else { + lean::inc(x_63); lean::dec(x_48); x_66 = lean::box(0); } @@ -1770,12 +1770,12 @@ else { obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -1798,12 +1798,12 @@ else obj* x_96; uint8 x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_3); x_96 = lean::cnstr_get(x_20, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_99 = x_20; } else { + lean::inc(x_96); lean::dec(x_20); x_99 = lean::box(0); } @@ -1842,12 +1842,12 @@ else { obj* x_118; uint8 x_120; obj* x_121; obj* x_122; obj* x_123; x_118 = lean::cnstr_get(x_103, 0); -lean::inc(x_118); x_120 = lean::cnstr_get_scalar(x_103, sizeof(void*)*1); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_121 = x_103; } else { + lean::inc(x_118); lean::dec(x_103); x_121 = lean::box(0); } @@ -1870,29 +1870,29 @@ if (lean::obj_tag(x_13) == 0) { obj* x_124; obj* x_126; obj* x_128; obj* x_130; obj* x_131; obj* x_133; obj* x_135; x_124 = lean::cnstr_get(x_13, 1); -lean::inc(x_124); x_126 = lean::cnstr_get(x_13, 2); -lean::inc(x_126); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_128 = x_13; } else { + lean::inc(x_124); + lean::inc(x_126); lean::dec(x_13); x_128 = lean::box(0); } lean::inc(x_124); x_130 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__7(x_11, x_1, x_2, x_124, x_14); x_131 = lean::cnstr_get(x_130, 0); -lean::inc(x_131); x_133 = lean::cnstr_get(x_130, 1); -lean::inc(x_133); if (lean::is_exclusive(x_130)) { - lean::cnstr_release(x_130, 0); - lean::cnstr_release(x_130, 1); + lean::cnstr_set(x_130, 0, lean::box(0)); + lean::cnstr_set(x_130, 1, lean::box(0)); x_135 = x_130; } else { + lean::inc(x_131); + lean::inc(x_133); lean::dec(x_130); x_135 = lean::box(0); } @@ -1974,12 +1974,12 @@ lean::dec(x_11); lean::dec(x_1); lean::dec(x_2); x_162 = lean::cnstr_get(x_13, 0); -lean::inc(x_162); x_164 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_165 = x_13; } else { + lean::inc(x_162); lean::dec(x_13); x_165 = lean::box(0); } @@ -2015,17 +2015,17 @@ if (lean::obj_tag(x_174) == 0) { obj* x_179; obj* x_181; obj* x_183; obj* x_185; uint8 x_186; x_179 = lean::cnstr_get(x_174, 0); -lean::inc(x_179); x_181 = lean::cnstr_get(x_174, 1); -lean::inc(x_181); x_183 = lean::cnstr_get(x_174, 2); -lean::inc(x_183); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); - lean::cnstr_release(x_174, 1); - lean::cnstr_release(x_174, 2); + lean::cnstr_set(x_174, 0, lean::box(0)); + lean::cnstr_set(x_174, 1, lean::box(0)); + lean::cnstr_set(x_174, 2, lean::box(0)); x_185 = x_174; } else { + lean::inc(x_179); + lean::inc(x_181); + lean::inc(x_183); lean::dec(x_174); x_185 = lean::box(0); } @@ -2075,12 +2075,12 @@ obj* x_217; uint8 x_219; obj* x_220; obj* x_221; obj* x_222; lean::dec(x_1); lean::dec(x_2); x_217 = lean::cnstr_get(x_202, 0); -lean::inc(x_217); x_219 = lean::cnstr_get_scalar(x_202, sizeof(void*)*1); if (lean::is_exclusive(x_202)) { - lean::cnstr_release(x_202, 0); + lean::cnstr_set(x_202, 0, lean::box(0)); x_220 = x_202; } else { + lean::inc(x_217); lean::dec(x_202); x_220 = lean::box(0); } @@ -2138,12 +2138,12 @@ obj* x_243; uint8 x_245; obj* x_246; obj* x_247; obj* x_248; lean::dec(x_1); lean::dec(x_2); x_243 = lean::cnstr_get(x_228, 0); -lean::inc(x_243); x_245 = lean::cnstr_get_scalar(x_228, sizeof(void*)*1); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_246 = x_228; } else { + lean::inc(x_243); lean::dec(x_228); x_246 = lean::box(0); } @@ -2166,12 +2166,12 @@ else obj* x_250; uint8 x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_257; lean::dec(x_3); x_250 = lean::cnstr_get(x_174, 0); -lean::inc(x_250); x_252 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_253 = x_174; } else { + lean::inc(x_250); lean::dec(x_174); x_253 = lean::box(0); } @@ -2210,12 +2210,12 @@ obj* x_272; uint8 x_274; obj* x_275; obj* x_276; obj* x_277; lean::dec(x_1); lean::dec(x_2); x_272 = lean::cnstr_get(x_257, 0); -lean::inc(x_272); x_274 = lean::cnstr_get_scalar(x_257, sizeof(void*)*1); if (lean::is_exclusive(x_257)) { - lean::cnstr_release(x_257, 0); + lean::cnstr_set(x_257, 0, lean::box(0)); x_275 = x_257; } else { + lean::inc(x_272); lean::dec(x_257); x_275 = lean::box(0); } @@ -2239,15 +2239,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_278; obj* x_280; obj* x_282; obj* x_283; obj* x_284; obj* x_285; obj* x_286; obj* x_287; x_278 = lean::cnstr_get(x_5, 1); -lean::inc(x_278); x_280 = lean::cnstr_get(x_5, 2); -lean::inc(x_280); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_282 = x_5; } else { + lean::inc(x_278); + lean::inc(x_280); lean::dec(x_5); x_282 = lean::box(0); } @@ -2271,12 +2271,12 @@ else { obj* x_288; uint8 x_290; obj* x_291; obj* x_292; obj* x_293; obj* x_294; x_288 = lean::cnstr_get(x_5, 0); -lean::inc(x_288); x_290 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_291 = x_5; } else { + lean::inc(x_288); lean::dec(x_5); x_291 = lean::box(0); } @@ -2304,14 +2304,14 @@ x_4 = lean::string_iterator_remaining(x_2); lean::inc(x_2); x_6 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__7(x_4, x_0, x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -2423,17 +2423,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_25; obj* x_27; obj* x_29; obj* x_31; uint8 x_32; x_25 = lean::cnstr_get(x_20, 0); -lean::inc(x_25); x_27 = lean::cnstr_get(x_20, 1); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 2); -lean::inc(x_29); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_31 = x_20; } else { + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_20); x_31 = lean::box(0); } @@ -2483,12 +2483,12 @@ else { obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; x_63 = lean::cnstr_get(x_48, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_66 = x_48; } else { + lean::inc(x_63); lean::dec(x_48); x_66 = lean::box(0); } @@ -2546,12 +2546,12 @@ else { obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -2574,12 +2574,12 @@ else obj* x_96; uint8 x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_3); x_96 = lean::cnstr_get(x_20, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_99 = x_20; } else { + lean::inc(x_96); lean::dec(x_20); x_99 = lean::box(0); } @@ -2618,12 +2618,12 @@ else { obj* x_118; uint8 x_120; obj* x_121; obj* x_122; obj* x_123; x_118 = lean::cnstr_get(x_103, 0); -lean::inc(x_118); x_120 = lean::cnstr_get_scalar(x_103, sizeof(void*)*1); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_121 = x_103; } else { + lean::inc(x_118); lean::dec(x_103); x_121 = lean::box(0); } @@ -2646,29 +2646,29 @@ if (lean::obj_tag(x_13) == 0) { obj* x_124; obj* x_126; obj* x_128; obj* x_130; obj* x_131; obj* x_133; obj* x_135; x_124 = lean::cnstr_get(x_13, 1); -lean::inc(x_124); x_126 = lean::cnstr_get(x_13, 2); -lean::inc(x_126); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_128 = x_13; } else { + lean::inc(x_124); + lean::inc(x_126); lean::dec(x_13); x_128 = lean::box(0); } lean::inc(x_124); x_130 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__10(x_11, x_1, x_2, x_124, x_14); x_131 = lean::cnstr_get(x_130, 0); -lean::inc(x_131); x_133 = lean::cnstr_get(x_130, 1); -lean::inc(x_133); if (lean::is_exclusive(x_130)) { - lean::cnstr_release(x_130, 0); - lean::cnstr_release(x_130, 1); + lean::cnstr_set(x_130, 0, lean::box(0)); + lean::cnstr_set(x_130, 1, lean::box(0)); x_135 = x_130; } else { + lean::inc(x_131); + lean::inc(x_133); lean::dec(x_130); x_135 = lean::box(0); } @@ -2750,12 +2750,12 @@ lean::dec(x_11); lean::dec(x_1); lean::dec(x_2); x_162 = lean::cnstr_get(x_13, 0); -lean::inc(x_162); x_164 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_165 = x_13; } else { + lean::inc(x_162); lean::dec(x_13); x_165 = lean::box(0); } @@ -2791,17 +2791,17 @@ if (lean::obj_tag(x_174) == 0) { obj* x_179; obj* x_181; obj* x_183; obj* x_185; uint8 x_186; x_179 = lean::cnstr_get(x_174, 0); -lean::inc(x_179); x_181 = lean::cnstr_get(x_174, 1); -lean::inc(x_181); x_183 = lean::cnstr_get(x_174, 2); -lean::inc(x_183); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); - lean::cnstr_release(x_174, 1); - lean::cnstr_release(x_174, 2); + lean::cnstr_set(x_174, 0, lean::box(0)); + lean::cnstr_set(x_174, 1, lean::box(0)); + lean::cnstr_set(x_174, 2, lean::box(0)); x_185 = x_174; } else { + lean::inc(x_179); + lean::inc(x_181); + lean::inc(x_183); lean::dec(x_174); x_185 = lean::box(0); } @@ -2851,12 +2851,12 @@ obj* x_217; uint8 x_219; obj* x_220; obj* x_221; obj* x_222; lean::dec(x_1); lean::dec(x_2); x_217 = lean::cnstr_get(x_202, 0); -lean::inc(x_217); x_219 = lean::cnstr_get_scalar(x_202, sizeof(void*)*1); if (lean::is_exclusive(x_202)) { - lean::cnstr_release(x_202, 0); + lean::cnstr_set(x_202, 0, lean::box(0)); x_220 = x_202; } else { + lean::inc(x_217); lean::dec(x_202); x_220 = lean::box(0); } @@ -2914,12 +2914,12 @@ obj* x_243; uint8 x_245; obj* x_246; obj* x_247; obj* x_248; lean::dec(x_1); lean::dec(x_2); x_243 = lean::cnstr_get(x_228, 0); -lean::inc(x_243); x_245 = lean::cnstr_get_scalar(x_228, sizeof(void*)*1); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_246 = x_228; } else { + lean::inc(x_243); lean::dec(x_228); x_246 = lean::box(0); } @@ -2942,12 +2942,12 @@ else obj* x_250; uint8 x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_257; lean::dec(x_3); x_250 = lean::cnstr_get(x_174, 0); -lean::inc(x_250); x_252 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_253 = x_174; } else { + lean::inc(x_250); lean::dec(x_174); x_253 = lean::box(0); } @@ -2986,12 +2986,12 @@ obj* x_272; uint8 x_274; obj* x_275; obj* x_276; obj* x_277; lean::dec(x_1); lean::dec(x_2); x_272 = lean::cnstr_get(x_257, 0); -lean::inc(x_272); x_274 = lean::cnstr_get_scalar(x_257, sizeof(void*)*1); if (lean::is_exclusive(x_257)) { - lean::cnstr_release(x_257, 0); + lean::cnstr_set(x_257, 0, lean::box(0)); x_275 = x_257; } else { + lean::inc(x_272); lean::dec(x_257); x_275 = lean::box(0); } @@ -3015,15 +3015,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_278; obj* x_280; obj* x_282; obj* x_283; obj* x_284; obj* x_285; obj* x_286; obj* x_287; x_278 = lean::cnstr_get(x_5, 1); -lean::inc(x_278); x_280 = lean::cnstr_get(x_5, 2); -lean::inc(x_280); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_282 = x_5; } else { + lean::inc(x_278); + lean::inc(x_280); lean::dec(x_5); x_282 = lean::box(0); } @@ -3047,12 +3047,12 @@ else { obj* x_288; uint8 x_290; obj* x_291; obj* x_292; obj* x_293; obj* x_294; x_288 = lean::cnstr_get(x_5, 0); -lean::inc(x_288); x_290 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_291 = x_5; } else { + lean::inc(x_288); lean::dec(x_5); x_291 = lean::box(0); } @@ -3080,14 +3080,14 @@ x_4 = lean::string_iterator_remaining(x_2); lean::inc(x_2); x_6 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__10(x_4, x_0, x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -3164,14 +3164,14 @@ lean::inc(x_3); lean::inc(x_2); x_8 = lean::apply_4(x_0, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -3208,12 +3208,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_32 = lean::cnstr_get(x_9, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_35 = x_9; } else { + lean::inc(x_32); lean::dec(x_9); x_35 = lean::box(0); } @@ -3272,14 +3272,14 @@ x_5 = l___private_init_lean_parser_token_1__finish__comment__block__aux___main__ lean::inc(x_2); x_7 = l_lean_parser_monad__parsec_str__core___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__2(x_4, x_5, x_0, x_1, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -3287,15 +3287,15 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 2); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } @@ -3317,13 +3317,13 @@ if (lean::obj_tag(x_22) == 0) { obj* x_23; obj* x_25; obj* x_26; obj* x_27; x_23 = lean::cnstr_get(x_22, 0); -lean::inc(x_23); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); lean::cnstr_release(x_22, 1); lean::cnstr_release(x_22, 2); x_25 = x_22; } else { + lean::inc(x_23); lean::dec(x_22); x_25 = lean::box(0); } @@ -3425,17 +3425,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_25; obj* x_27; obj* x_29; obj* x_31; uint8 x_32; x_25 = lean::cnstr_get(x_20, 0); -lean::inc(x_25); x_27 = lean::cnstr_get(x_20, 1); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 2); -lean::inc(x_29); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_31 = x_20; } else { + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_20); x_31 = lean::box(0); } @@ -3485,12 +3485,12 @@ else { obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; x_63 = lean::cnstr_get(x_48, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_66 = x_48; } else { + lean::inc(x_63); lean::dec(x_48); x_66 = lean::box(0); } @@ -3548,12 +3548,12 @@ else { obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -3576,12 +3576,12 @@ else obj* x_96; uint8 x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_3); x_96 = lean::cnstr_get(x_20, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_99 = x_20; } else { + lean::inc(x_96); lean::dec(x_20); x_99 = lean::box(0); } @@ -3620,12 +3620,12 @@ else { obj* x_118; uint8 x_120; obj* x_121; obj* x_122; obj* x_123; x_118 = lean::cnstr_get(x_103, 0); -lean::inc(x_118); x_120 = lean::cnstr_get_scalar(x_103, sizeof(void*)*1); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_121 = x_103; } else { + lean::inc(x_118); lean::dec(x_103); x_121 = lean::box(0); } @@ -3648,29 +3648,29 @@ if (lean::obj_tag(x_13) == 0) { obj* x_124; obj* x_126; obj* x_128; obj* x_130; obj* x_131; obj* x_133; obj* x_135; x_124 = lean::cnstr_get(x_13, 1); -lean::inc(x_124); x_126 = lean::cnstr_get(x_13, 2); -lean::inc(x_126); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_128 = x_13; } else { + lean::inc(x_124); + lean::inc(x_126); lean::dec(x_13); x_128 = lean::box(0); } lean::inc(x_124); x_130 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__view___spec__3(x_11, x_1, x_2, x_124, x_14); x_131 = lean::cnstr_get(x_130, 0); -lean::inc(x_131); x_133 = lean::cnstr_get(x_130, 1); -lean::inc(x_133); if (lean::is_exclusive(x_130)) { - lean::cnstr_release(x_130, 0); - lean::cnstr_release(x_130, 1); + lean::cnstr_set(x_130, 0, lean::box(0)); + lean::cnstr_set(x_130, 1, lean::box(0)); x_135 = x_130; } else { + lean::inc(x_131); + lean::inc(x_133); lean::dec(x_130); x_135 = lean::box(0); } @@ -3752,12 +3752,12 @@ lean::dec(x_11); lean::dec(x_1); lean::dec(x_2); x_162 = lean::cnstr_get(x_13, 0); -lean::inc(x_162); x_164 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_165 = x_13; } else { + lean::inc(x_162); lean::dec(x_13); x_165 = lean::box(0); } @@ -3793,17 +3793,17 @@ if (lean::obj_tag(x_174) == 0) { obj* x_179; obj* x_181; obj* x_183; obj* x_185; uint8 x_186; x_179 = lean::cnstr_get(x_174, 0); -lean::inc(x_179); x_181 = lean::cnstr_get(x_174, 1); -lean::inc(x_181); x_183 = lean::cnstr_get(x_174, 2); -lean::inc(x_183); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); - lean::cnstr_release(x_174, 1); - lean::cnstr_release(x_174, 2); + lean::cnstr_set(x_174, 0, lean::box(0)); + lean::cnstr_set(x_174, 1, lean::box(0)); + lean::cnstr_set(x_174, 2, lean::box(0)); x_185 = x_174; } else { + lean::inc(x_179); + lean::inc(x_181); + lean::inc(x_183); lean::dec(x_174); x_185 = lean::box(0); } @@ -3853,12 +3853,12 @@ obj* x_217; uint8 x_219; obj* x_220; obj* x_221; obj* x_222; lean::dec(x_1); lean::dec(x_2); x_217 = lean::cnstr_get(x_202, 0); -lean::inc(x_217); x_219 = lean::cnstr_get_scalar(x_202, sizeof(void*)*1); if (lean::is_exclusive(x_202)) { - lean::cnstr_release(x_202, 0); + lean::cnstr_set(x_202, 0, lean::box(0)); x_220 = x_202; } else { + lean::inc(x_217); lean::dec(x_202); x_220 = lean::box(0); } @@ -3916,12 +3916,12 @@ obj* x_243; uint8 x_245; obj* x_246; obj* x_247; obj* x_248; lean::dec(x_1); lean::dec(x_2); x_243 = lean::cnstr_get(x_228, 0); -lean::inc(x_243); x_245 = lean::cnstr_get_scalar(x_228, sizeof(void*)*1); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_246 = x_228; } else { + lean::inc(x_243); lean::dec(x_228); x_246 = lean::box(0); } @@ -3944,12 +3944,12 @@ else obj* x_250; uint8 x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_257; lean::dec(x_3); x_250 = lean::cnstr_get(x_174, 0); -lean::inc(x_250); x_252 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_253 = x_174; } else { + lean::inc(x_250); lean::dec(x_174); x_253 = lean::box(0); } @@ -3988,12 +3988,12 @@ obj* x_272; uint8 x_274; obj* x_275; obj* x_276; obj* x_277; lean::dec(x_1); lean::dec(x_2); x_272 = lean::cnstr_get(x_257, 0); -lean::inc(x_272); x_274 = lean::cnstr_get_scalar(x_257, sizeof(void*)*1); if (lean::is_exclusive(x_257)) { - lean::cnstr_release(x_257, 0); + lean::cnstr_set(x_257, 0, lean::box(0)); x_275 = x_257; } else { + lean::inc(x_272); lean::dec(x_257); x_275 = lean::box(0); } @@ -4017,15 +4017,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_278; obj* x_280; obj* x_282; obj* x_283; obj* x_284; obj* x_285; obj* x_286; obj* x_287; x_278 = lean::cnstr_get(x_5, 1); -lean::inc(x_278); x_280 = lean::cnstr_get(x_5, 2); -lean::inc(x_280); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_282 = x_5; } else { + lean::inc(x_278); + lean::inc(x_280); lean::dec(x_5); x_282 = lean::box(0); } @@ -4049,12 +4049,12 @@ else { obj* x_288; uint8 x_290; obj* x_291; obj* x_292; obj* x_293; obj* x_294; x_288 = lean::cnstr_get(x_5, 0); -lean::inc(x_288); x_290 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_291 = x_5; } else { + lean::inc(x_288); lean::dec(x_5); x_291 = lean::box(0); } @@ -4082,14 +4082,14 @@ x_4 = lean::string_iterator_remaining(x_2); lean::inc(x_2); x_6 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser_lean_parser_has__view___spec__3(x_4, x_0, x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -4164,14 +4164,14 @@ _start: obj* x_5; obj* x_6; obj* x_8; obj* x_10; x_5 = l_lean_parser_monad__parsec_many_x_27___at_lean_parser_command_doc__comment_parser_lean_parser_has__view___spec__2(x_1, x_2, x_3, x_4); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -4179,15 +4179,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; x_11 = lean::cnstr_get(x_6, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 2); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -4217,12 +4217,12 @@ else obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; lean::dec(x_0); x_23 = lean::cnstr_get(x_6, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_26 = x_6; } else { + lean::inc(x_23); lean::dec(x_6); x_26 = lean::box(0); } @@ -4306,14 +4306,14 @@ x_5 = l___private_init_lean_parser_token_1__finish__comment__block__aux___main__ lean::inc(x_2); x_7 = l_lean_parser_monad__parsec_str__core___at_lean_parser_command_doc__comment_parser_lean_parser_has__tokens___spec__2(x_4, x_5, x_0, x_1, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -4321,15 +4321,15 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; uint8 x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 2); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } @@ -4351,13 +4351,13 @@ if (lean::obj_tag(x_22) == 0) { obj* x_23; obj* x_25; obj* x_26; obj* x_27; x_23 = lean::cnstr_get(x_22, 0); -lean::inc(x_23); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); lean::cnstr_release(x_22, 1); lean::cnstr_release(x_22, 2); x_25 = x_22; } else { + lean::inc(x_23); lean::dec(x_22); x_25 = lean::box(0); } @@ -4459,17 +4459,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_25; obj* x_27; obj* x_29; obj* x_31; uint8 x_32; x_25 = lean::cnstr_get(x_20, 0); -lean::inc(x_25); x_27 = lean::cnstr_get(x_20, 1); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 2); -lean::inc(x_29); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_31 = x_20; } else { + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_20); x_31 = lean::box(0); } @@ -4519,12 +4519,12 @@ else { obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; x_63 = lean::cnstr_get(x_48, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_66 = x_48; } else { + lean::inc(x_63); lean::dec(x_48); x_66 = lean::box(0); } @@ -4582,12 +4582,12 @@ else { obj* x_89; uint8 x_91; obj* x_92; obj* x_93; obj* x_94; x_89 = lean::cnstr_get(x_74, 0); -lean::inc(x_89); x_91 = lean::cnstr_get_scalar(x_74, sizeof(void*)*1); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_92 = x_74; } else { + lean::inc(x_89); lean::dec(x_74); x_92 = lean::box(0); } @@ -4610,12 +4610,12 @@ else obj* x_96; uint8 x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; lean::dec(x_3); x_96 = lean::cnstr_get(x_20, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_99 = x_20; } else { + lean::inc(x_96); lean::dec(x_20); x_99 = lean::box(0); } @@ -4654,12 +4654,12 @@ else { obj* x_118; uint8 x_120; obj* x_121; obj* x_122; obj* x_123; x_118 = lean::cnstr_get(x_103, 0); -lean::inc(x_118); x_120 = lean::cnstr_get_scalar(x_103, sizeof(void*)*1); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_121 = x_103; } else { + lean::inc(x_118); lean::dec(x_103); x_121 = lean::box(0); } @@ -4682,29 +4682,29 @@ if (lean::obj_tag(x_13) == 0) { obj* x_124; obj* x_126; obj* x_128; obj* x_130; obj* x_131; obj* x_133; obj* x_135; x_124 = lean::cnstr_get(x_13, 1); -lean::inc(x_124); x_126 = lean::cnstr_get(x_13, 2); -lean::inc(x_126); if (lean::is_exclusive(x_13)) { lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_128 = x_13; } else { + lean::inc(x_124); + lean::inc(x_126); lean::dec(x_13); x_128 = lean::box(0); } lean::inc(x_124); x_130 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser___spec__3(x_11, x_1, x_2, x_124, x_14); x_131 = lean::cnstr_get(x_130, 0); -lean::inc(x_131); x_133 = lean::cnstr_get(x_130, 1); -lean::inc(x_133); if (lean::is_exclusive(x_130)) { - lean::cnstr_release(x_130, 0); - lean::cnstr_release(x_130, 1); + lean::cnstr_set(x_130, 0, lean::box(0)); + lean::cnstr_set(x_130, 1, lean::box(0)); x_135 = x_130; } else { + lean::inc(x_131); + lean::inc(x_133); lean::dec(x_130); x_135 = lean::box(0); } @@ -4786,12 +4786,12 @@ lean::dec(x_11); lean::dec(x_1); lean::dec(x_2); x_162 = lean::cnstr_get(x_13, 0); -lean::inc(x_162); x_164 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_165 = x_13; } else { + lean::inc(x_162); lean::dec(x_13); x_165 = lean::box(0); } @@ -4827,17 +4827,17 @@ if (lean::obj_tag(x_174) == 0) { obj* x_179; obj* x_181; obj* x_183; obj* x_185; uint8 x_186; x_179 = lean::cnstr_get(x_174, 0); -lean::inc(x_179); x_181 = lean::cnstr_get(x_174, 1); -lean::inc(x_181); x_183 = lean::cnstr_get(x_174, 2); -lean::inc(x_183); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); - lean::cnstr_release(x_174, 1); - lean::cnstr_release(x_174, 2); + lean::cnstr_set(x_174, 0, lean::box(0)); + lean::cnstr_set(x_174, 1, lean::box(0)); + lean::cnstr_set(x_174, 2, lean::box(0)); x_185 = x_174; } else { + lean::inc(x_179); + lean::inc(x_181); + lean::inc(x_183); lean::dec(x_174); x_185 = lean::box(0); } @@ -4887,12 +4887,12 @@ obj* x_217; uint8 x_219; obj* x_220; obj* x_221; obj* x_222; lean::dec(x_1); lean::dec(x_2); x_217 = lean::cnstr_get(x_202, 0); -lean::inc(x_217); x_219 = lean::cnstr_get_scalar(x_202, sizeof(void*)*1); if (lean::is_exclusive(x_202)) { - lean::cnstr_release(x_202, 0); + lean::cnstr_set(x_202, 0, lean::box(0)); x_220 = x_202; } else { + lean::inc(x_217); lean::dec(x_202); x_220 = lean::box(0); } @@ -4950,12 +4950,12 @@ obj* x_243; uint8 x_245; obj* x_246; obj* x_247; obj* x_248; lean::dec(x_1); lean::dec(x_2); x_243 = lean::cnstr_get(x_228, 0); -lean::inc(x_243); x_245 = lean::cnstr_get_scalar(x_228, sizeof(void*)*1); if (lean::is_exclusive(x_228)) { - lean::cnstr_release(x_228, 0); + lean::cnstr_set(x_228, 0, lean::box(0)); x_246 = x_228; } else { + lean::inc(x_243); lean::dec(x_228); x_246 = lean::box(0); } @@ -4978,12 +4978,12 @@ else obj* x_250; uint8 x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_257; lean::dec(x_3); x_250 = lean::cnstr_get(x_174, 0); -lean::inc(x_250); x_252 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_253 = x_174; } else { + lean::inc(x_250); lean::dec(x_174); x_253 = lean::box(0); } @@ -5022,12 +5022,12 @@ obj* x_272; uint8 x_274; obj* x_275; obj* x_276; obj* x_277; lean::dec(x_1); lean::dec(x_2); x_272 = lean::cnstr_get(x_257, 0); -lean::inc(x_272); x_274 = lean::cnstr_get_scalar(x_257, sizeof(void*)*1); if (lean::is_exclusive(x_257)) { - lean::cnstr_release(x_257, 0); + lean::cnstr_set(x_257, 0, lean::box(0)); x_275 = x_257; } else { + lean::inc(x_272); lean::dec(x_257); x_275 = lean::box(0); } @@ -5051,15 +5051,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_278; obj* x_280; obj* x_282; obj* x_283; obj* x_284; obj* x_285; obj* x_286; obj* x_287; x_278 = lean::cnstr_get(x_5, 1); -lean::inc(x_278); x_280 = lean::cnstr_get(x_5, 2); -lean::inc(x_280); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_282 = x_5; } else { + lean::inc(x_278); + lean::inc(x_280); lean::dec(x_5); x_282 = lean::box(0); } @@ -5083,12 +5083,12 @@ else { obj* x_288; uint8 x_290; obj* x_291; obj* x_292; obj* x_293; obj* x_294; x_288 = lean::cnstr_get(x_5, 0); -lean::inc(x_288); x_290 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_291 = x_5; } else { + lean::inc(x_288); lean::dec(x_5); x_291 = lean::box(0); } @@ -5116,14 +5116,14 @@ x_4 = lean::string_iterator_remaining(x_2); lean::inc(x_2); x_6 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_command_doc__comment_parser___spec__3(x_4, x_0, x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -5215,14 +5215,14 @@ else { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_23; obj* x_24; obj* x_26; x_13 = lean::cnstr_get(x_2, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_2, 1); -lean::inc(x_15); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_17 = x_2; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_2); x_17 = lean::box(0); } @@ -5244,12 +5244,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; x_29 = lean::cnstr_get(x_24, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_24, sizeof(void*)*1); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_32 = x_24; } else { + lean::inc(x_29); lean::dec(x_24); x_32 = lean::box(0); } @@ -5353,17 +5353,17 @@ if (lean::obj_tag(x_18) == 0) { obj* x_60; obj* x_62; obj* x_64; obj* x_66; obj* x_67; obj* x_68; obj* x_69; obj* x_70; x_60 = lean::cnstr_get(x_18, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_18, 1); -lean::inc(x_62); x_64 = lean::cnstr_get(x_18, 2); -lean::inc(x_64); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); - lean::cnstr_release(x_18, 2); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); + lean::cnstr_set(x_18, 2, lean::box(0)); x_66 = x_18; } else { + lean::inc(x_60); + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_18); x_66 = lean::box(0); } @@ -5396,14 +5396,14 @@ lean::inc(x_75); lean::dec(x_70); x_78 = l_list_mfoldl___main___at_lean_parser_command_doc__comment_parser___spec__5(x_0, x_71, x_15, x_3, x_4, x_73, x_19); x_79 = lean::cnstr_get(x_78, 0); -lean::inc(x_79); x_81 = lean::cnstr_get(x_78, 1); -lean::inc(x_81); if (lean::is_exclusive(x_78)) { - lean::cnstr_release(x_78, 0); - lean::cnstr_release(x_78, 1); + lean::cnstr_set(x_78, 0, lean::box(0)); + lean::cnstr_set(x_78, 1, lean::box(0)); x_83 = x_78; } else { + lean::inc(x_79); + lean::inc(x_81); lean::dec(x_78); x_83 = lean::box(0); } @@ -5425,12 +5425,12 @@ lean::dec(x_4); lean::dec(x_3); lean::dec(x_0); x_90 = lean::cnstr_get(x_70, 0); -lean::inc(x_90); x_92 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_93 = x_70; } else { + lean::inc(x_90); lean::dec(x_70); x_93 = lean::box(0); } @@ -5458,12 +5458,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_17); x_103 = lean::cnstr_get(x_18, 0); -lean::inc(x_103); x_105 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_106 = x_18; } else { + lean::inc(x_103); lean::dec(x_18); x_106 = lean::box(0); } @@ -5492,14 +5492,14 @@ x_6 = lean::box(0); lean::inc(x_0); x_8 = l_list_mfoldl___main___at_lean_parser_command_doc__comment_parser___spec__5(x_0, x_6, x_1, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -5507,17 +5507,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -5547,12 +5547,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_0); x_28 = lean::cnstr_get(x_9, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_31 = x_9; } else { + lean::inc(x_28); lean::dec(x_9); x_31 = lean::box(0); } @@ -5581,14 +5581,14 @@ _start: obj* x_5; obj* x_6; obj* x_8; obj* x_10; x_5 = l_lean_parser_monad__parsec_many_x_27___at_lean_parser_command_doc__comment_parser___spec__2(x_1, x_2, x_3, x_4); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -5596,15 +5596,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; x_11 = lean::cnstr_get(x_6, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 2); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -5634,12 +5634,12 @@ else obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; lean::dec(x_0); x_23 = lean::cnstr_get(x_6, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_26 = x_6; } else { + lean::inc(x_23); lean::dec(x_6); x_26 = lean::box(0); } @@ -5746,14 +5746,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -5782,14 +5782,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -5818,14 +5818,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -5854,14 +5854,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -5890,14 +5890,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -6339,14 +6339,14 @@ lean::dec(x_0); lean::inc(x_5); x_9 = l___private_init_lean_parser_token_4__ident_x_27(x_5, x_2, x_3); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -6381,12 +6381,12 @@ else obj* x_31; uint8 x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_5); x_31 = lean::cnstr_get(x_10, 0); -lean::inc(x_31); x_33 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_34 = x_10; } else { + lean::inc(x_31); lean::dec(x_10); x_34 = lean::box(0); } @@ -6440,12 +6440,12 @@ else { obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_30; obj* x_32; obj* x_34; obj* x_37; obj* x_39; obj* x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; x_24 = lean::cnstr_get(x_19, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_27 = x_19; } else { + lean::inc(x_24); lean::dec(x_19); x_27 = lean::box(0); } @@ -6515,17 +6515,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_52; obj* x_54; obj* x_56; obj* x_58; obj* x_59; obj* x_62; obj* x_63; obj* x_65; obj* x_67; x_52 = lean::cnstr_get(x_12, 0); -lean::inc(x_52); x_54 = lean::cnstr_get(x_12, 1); -lean::inc(x_54); x_56 = lean::cnstr_get(x_12, 2); -lean::inc(x_56); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_58 = x_12; } else { + lean::inc(x_52); + lean::inc(x_54); + lean::inc(x_56); lean::dec(x_12); x_58 = lean::box(0); } @@ -6536,14 +6536,14 @@ lean::inc(x_54); lean::inc(x_59); x_62 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_command_attr__instance_parser_lean_parser_has__tokens___spec__4(x_0, x_59, x_10, x_3, x_4, x_54, x_13); x_63 = lean::cnstr_get(x_62, 0); -lean::inc(x_63); x_65 = lean::cnstr_get(x_62, 1); -lean::inc(x_65); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); - lean::cnstr_release(x_62, 1); + lean::cnstr_set(x_62, 0, lean::box(0)); + lean::cnstr_set(x_62, 1, lean::box(0)); x_67 = x_62; } else { + lean::inc(x_63); + lean::inc(x_65); lean::dec(x_62); x_67 = lean::box(0); } @@ -6631,12 +6631,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_10); x_100 = lean::cnstr_get(x_12, 0); -lean::inc(x_100); x_102 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_103 = x_12; } else { + lean::inc(x_100); lean::dec(x_12); x_103 = lean::box(0); } @@ -6680,14 +6680,14 @@ x_8 = lean::nat_add(x_5, x_7); lean::dec(x_5); x_10 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_command_attr__instance_parser_lean_parser_has__tokens___spec__4(x_0, x_6, x_8, x_1, x_2, x_3, x_4); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -6710,14 +6710,14 @@ obj* x_6; obj* x_7; obj* x_9; obj* x_11; lean::inc(x_3); x_6 = l_lean_parser_combinators_many1___at_lean_parser_command_attr__instance_parser_lean_parser_has__tokens___spec__3(x_0, x_1, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -6888,14 +6888,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7008,14 +7008,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -7231,11 +7231,11 @@ else { obj* x_41; obj* x_43; obj* x_44; obj* x_47; x_41 = lean::cnstr_get(x_23, 0); -lean::inc(x_41); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_43 = x_23; } else { + lean::inc(x_41); lean::dec(x_23); x_43 = lean::box(0); } @@ -7473,11 +7473,11 @@ else { obj* x_54; obj* x_56; obj* x_57; obj* x_60; x_54 = lean::cnstr_get(x_36, 0); -lean::inc(x_54); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_56 = x_36; } else { + lean::inc(x_54); lean::dec(x_36); x_56 = lean::box(0); } @@ -7636,17 +7636,17 @@ if (lean::obj_tag(x_25) == 0) { obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; x_30 = lean::cnstr_get(x_25, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_25, 1); -lean::inc(x_32); x_34 = lean::cnstr_get(x_25, 2); -lean::inc(x_34); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); - lean::cnstr_release(x_25, 2); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); + lean::cnstr_set(x_25, 2, lean::box(0)); x_36 = x_25; } else { + lean::inc(x_30); + lean::inc(x_32); + lean::inc(x_34); lean::dec(x_25); x_36 = lean::box(0); } @@ -7672,12 +7672,12 @@ else { obj* x_41; uint8 x_43; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_51; obj* x_54; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get_scalar(x_40, sizeof(void*)*1); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_44 = x_40; } else { + lean::inc(x_41); lean::dec(x_40); x_44 = lean::box(0); } @@ -7746,12 +7746,12 @@ else { obj* x_69; uint8 x_71; obj* x_72; obj* x_73; obj* x_75; obj* x_77; obj* x_79; obj* x_82; obj* x_84; obj* x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; x_69 = lean::cnstr_get(x_25, 0); -lean::inc(x_69); x_71 = lean::cnstr_get_scalar(x_25, sizeof(void*)*1); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_72 = x_25; } else { + lean::inc(x_69); lean::dec(x_25); x_72 = lean::box(0); } @@ -7834,17 +7834,17 @@ if (lean::obj_tag(x_102) == 0) { obj* x_108; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; x_108 = lean::cnstr_get(x_102, 0); -lean::inc(x_108); x_110 = lean::cnstr_get(x_102, 1); -lean::inc(x_110); x_112 = lean::cnstr_get(x_102, 2); -lean::inc(x_112); if (lean::is_exclusive(x_102)) { - lean::cnstr_release(x_102, 0); - lean::cnstr_release(x_102, 1); - lean::cnstr_release(x_102, 2); + lean::cnstr_set(x_102, 0, lean::box(0)); + lean::cnstr_set(x_102, 1, lean::box(0)); + lean::cnstr_set(x_102, 2, lean::box(0)); x_114 = x_102; } else { + lean::inc(x_108); + lean::inc(x_110); + lean::inc(x_112); lean::dec(x_102); x_114 = lean::box(0); } @@ -7908,12 +7908,12 @@ else { obj* x_133; uint8 x_135; obj* x_136; x_133 = lean::cnstr_get(x_102, 0); -lean::inc(x_133); x_135 = lean::cnstr_get_scalar(x_102, sizeof(void*)*1); if (lean::is_exclusive(x_102)) { - lean::cnstr_release(x_102, 0); + lean::cnstr_set(x_102, 0, lean::box(0)); x_136 = x_102; } else { + lean::inc(x_133); lean::dec(x_102); x_136 = lean::box(0); } @@ -7962,17 +7962,17 @@ if (lean::obj_tag(x_15) == 0) { obj* x_148; obj* x_150; obj* x_152; obj* x_154; x_148 = lean::cnstr_get(x_15, 0); -lean::inc(x_148); x_150 = lean::cnstr_get(x_15, 1); -lean::inc(x_150); x_152 = lean::cnstr_get(x_15, 2); -lean::inc(x_152); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); - lean::cnstr_release(x_15, 2); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); + lean::cnstr_set(x_15, 2, lean::box(0)); x_154 = x_15; } else { + lean::inc(x_148); + lean::inc(x_150); + lean::inc(x_152); lean::dec(x_15); x_154 = lean::box(0); } @@ -8006,11 +8006,11 @@ else { obj* x_167; obj* x_169; obj* x_170; obj* x_171; obj* x_177; obj* x_178; obj* x_180; obj* x_183; obj* x_184; x_167 = lean::cnstr_get(x_148, 0); -lean::inc(x_167); if (lean::is_exclusive(x_148)) { - lean::cnstr_release(x_148, 0); + lean::cnstr_set(x_148, 0, lean::box(0)); x_169 = x_148; } else { + lean::inc(x_167); lean::dec(x_148); x_169 = lean::box(0); } @@ -8030,17 +8030,17 @@ if (lean::obj_tag(x_184) == 0) { obj* x_185; obj* x_187; obj* x_189; obj* x_191; obj* x_192; obj* x_193; obj* x_194; obj* x_195; x_185 = lean::cnstr_get(x_184, 0); -lean::inc(x_185); x_187 = lean::cnstr_get(x_184, 1); -lean::inc(x_187); x_189 = lean::cnstr_get(x_184, 2); -lean::inc(x_189); if (lean::is_exclusive(x_184)) { - lean::cnstr_release(x_184, 0); - lean::cnstr_release(x_184, 1); - lean::cnstr_release(x_184, 2); + lean::cnstr_set(x_184, 0, lean::box(0)); + lean::cnstr_set(x_184, 1, lean::box(0)); + lean::cnstr_set(x_184, 2, lean::box(0)); x_191 = x_184; } else { + lean::inc(x_185); + lean::inc(x_187); + lean::inc(x_189); lean::dec(x_184); x_191 = lean::box(0); } @@ -8108,12 +8108,12 @@ else { obj* x_210; uint8 x_212; obj* x_213; x_210 = lean::cnstr_get(x_184, 0); -lean::inc(x_210); x_212 = lean::cnstr_get_scalar(x_184, sizeof(void*)*1); if (lean::is_exclusive(x_184)) { - lean::cnstr_release(x_184, 0); + lean::cnstr_set(x_184, 0, lean::box(0)); x_213 = x_184; } else { + lean::inc(x_210); lean::dec(x_184); x_213 = lean::box(0); } @@ -8217,14 +8217,14 @@ lean::cnstr_set(x_252, 0, x_248); lean::cnstr_set(x_252, 1, x_251); x_253 = l___private_init_lean_parser_combinators_2__sep__by__aux___main___at_lean_parser_command_decl__attributes_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_2, x_252, x_13, x_6, x_7, x_228, x_171); x_254 = lean::cnstr_get(x_253, 0); -lean::inc(x_254); x_256 = lean::cnstr_get(x_253, 1); -lean::inc(x_256); if (lean::is_exclusive(x_253)) { - lean::cnstr_release(x_253, 0); - lean::cnstr_release(x_253, 1); + lean::cnstr_set(x_253, 0, lean::box(0)); + lean::cnstr_set(x_253, 1, lean::box(0)); x_258 = x_253; } else { + lean::inc(x_254); + lean::inc(x_256); lean::dec(x_253); x_258 = lean::box(0); } @@ -8252,12 +8252,12 @@ lean::dec(x_0); lean::dec(x_154); lean::dec(x_167); x_270 = lean::cnstr_get(x_170, 0); -lean::inc(x_270); x_272 = lean::cnstr_get_scalar(x_170, sizeof(void*)*1); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); + lean::cnstr_set(x_170, 0, lean::box(0)); x_273 = x_170; } else { + lean::inc(x_270); lean::dec(x_170); x_273 = lean::box(0); } @@ -8288,12 +8288,12 @@ lean::dec(x_1); lean::dec(x_6); lean::dec(x_0); x_284 = lean::cnstr_get(x_15, 0); -lean::inc(x_284); x_286 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_287 = x_15; } else { + lean::inc(x_284); lean::dec(x_15); x_287 = lean::box(0); } @@ -8323,12 +8323,12 @@ else { obj* x_291; uint8 x_293; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_301; obj* x_304; obj* x_306; obj* x_307; obj* x_308; obj* x_309; obj* x_310; obj* x_311; obj* x_312; obj* x_313; x_291 = lean::cnstr_get(x_18, 0); -lean::inc(x_291); x_293 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_294 = x_18; } else { + lean::inc(x_291); lean::dec(x_18); x_294 = lean::box(0); } @@ -8421,14 +8421,14 @@ lean::dec(x_7); x_12 = 0; x_13 = l___private_init_lean_parser_combinators_2__sep__by__aux___main___at_lean_parser_command_decl__attributes_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_12, x_8, x_10, x_3, x_4, x_5, x_6); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -9113,11 +9113,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } @@ -9207,11 +9207,11 @@ else { obj* x_45; obj* x_47; obj* x_48; x_45 = lean::cnstr_get(x_43, 0); -lean::inc(x_45); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_47 = x_43; } else { + lean::inc(x_45); lean::dec(x_43); x_47 = lean::box(0); } @@ -9301,11 +9301,11 @@ else { obj* x_81; obj* x_83; obj* x_84; x_81 = lean::cnstr_get(x_79, 0); -lean::inc(x_81); if (lean::is_exclusive(x_79)) { - lean::cnstr_release(x_79, 0); + lean::cnstr_set(x_79, 0, lean::box(0)); x_83 = x_79; } else { + lean::inc(x_81); lean::dec(x_79); x_83 = lean::box(0); } @@ -9395,11 +9395,11 @@ else { obj* x_117; obj* x_119; obj* x_120; x_117 = lean::cnstr_get(x_115, 0); -lean::inc(x_117); if (lean::is_exclusive(x_115)) { - lean::cnstr_release(x_115, 0); + lean::cnstr_set(x_115, 0, lean::box(0)); x_119 = x_115; } else { + lean::inc(x_117); lean::dec(x_115); x_119 = lean::box(0); } @@ -9512,11 +9512,11 @@ else { obj* x_153; obj* x_155; obj* x_156; x_153 = lean::cnstr_get(x_150, 0); -lean::inc(x_153); if (lean::is_exclusive(x_150)) { - lean::cnstr_release(x_150, 0); + lean::cnstr_set(x_150, 0, lean::box(0)); x_155 = x_150; } else { + lean::inc(x_153); lean::dec(x_150); x_155 = lean::box(0); } @@ -9682,11 +9682,11 @@ else { obj* x_22; obj* x_24; obj* x_25; x_22 = lean::cnstr_get(x_20, 0); -lean::inc(x_22); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_24 = x_20; } else { + lean::inc(x_22); lean::dec(x_20); x_24 = lean::box(0); } @@ -9776,11 +9776,11 @@ else { obj* x_58; obj* x_60; obj* x_61; x_58 = lean::cnstr_get(x_56, 0); -lean::inc(x_58); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_60 = x_56; } else { + lean::inc(x_58); lean::dec(x_56); x_60 = lean::box(0); } @@ -9870,11 +9870,11 @@ else { obj* x_94; obj* x_96; obj* x_97; x_94 = lean::cnstr_get(x_92, 0); -lean::inc(x_94); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_96 = x_92; } else { + lean::inc(x_94); lean::dec(x_92); x_96 = lean::box(0); } @@ -9964,11 +9964,11 @@ else { obj* x_130; obj* x_132; obj* x_133; x_130 = lean::cnstr_get(x_128, 0); -lean::inc(x_130); if (lean::is_exclusive(x_128)) { - lean::cnstr_release(x_128, 0); + lean::cnstr_set(x_128, 0, lean::box(0)); x_132 = x_128; } else { + lean::inc(x_130); lean::dec(x_128); x_132 = lean::box(0); } @@ -10081,11 +10081,11 @@ else { obj* x_166; obj* x_168; obj* x_169; x_166 = lean::cnstr_get(x_163, 0); -lean::inc(x_166); if (lean::is_exclusive(x_163)) { - lean::cnstr_release(x_163, 0); + lean::cnstr_set(x_163, 0, lean::box(0)); x_168 = x_163; } else { + lean::inc(x_166); lean::dec(x_163); x_168 = lean::box(0); } @@ -10483,17 +10483,17 @@ if (lean::obj_tag(x_14) == 0) { obj* x_19; obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_19 = lean::cnstr_get(x_14, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_14, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_14, 2); -lean::inc(x_23); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); - lean::cnstr_release(x_14, 2); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); + lean::cnstr_set(x_14, 2, lean::box(0)); x_25 = x_14; } else { + lean::inc(x_19); + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_14); x_25 = lean::box(0); } @@ -10517,12 +10517,12 @@ else { obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; x_30 = lean::cnstr_get(x_14, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_33 = x_14; } else { + lean::inc(x_30); lean::dec(x_14); x_33 = lean::box(0); } @@ -10543,12 +10543,12 @@ else { obj* x_36; uint8 x_38; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_46; obj* x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; x_36 = lean::cnstr_get(x_14, 0); -lean::inc(x_36); x_38 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_39 = x_14; } else { + lean::inc(x_36); lean::dec(x_14); x_39 = lean::box(0); } @@ -10612,17 +10612,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_60; obj* x_62; obj* x_64; obj* x_66; x_60 = lean::cnstr_get(x_5, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_5, 1); -lean::inc(x_62); x_64 = lean::cnstr_get(x_5, 2); -lean::inc(x_64); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_66 = x_5; } else { + lean::inc(x_60); + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_5); x_66 = lean::box(0); } @@ -10677,12 +10677,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; x_83 = lean::cnstr_get(x_5, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_86 = x_5; } else { + lean::inc(x_83); lean::dec(x_5); x_86 = lean::box(0); } @@ -10765,14 +10765,14 @@ else { obj* x_11; obj* x_13; obj* x_15; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_26; x_11 = lean::cnstr_get(x_0, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_0, 1); -lean::inc(x_13); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_15 = x_0; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_0); x_15 = lean::box(0); } @@ -10781,14 +10781,14 @@ lean::inc(x_3); lean::inc(x_2); x_19 = lean::apply_4(x_11, x_2, x_3, x_4, x_5); x_20 = lean::cnstr_get(x_19, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_19, 1); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); - lean::cnstr_release(x_19, 1); + lean::cnstr_set(x_19, 0, lean::box(0)); + lean::cnstr_set(x_19, 1, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -10798,17 +10798,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_27; obj* x_29; obj* x_31; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; x_27 = lean::cnstr_get(x_20, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 1); -lean::inc(x_29); x_31 = lean::cnstr_get(x_20, 2); -lean::inc(x_31); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_33 = x_20; } else { + lean::inc(x_27); + lean::inc(x_29); + lean::inc(x_31); lean::dec(x_20); x_33 = lean::box(0); } @@ -10901,12 +10901,12 @@ obj* x_68; uint8 x_70; obj* x_71; lean::dec(x_1); lean::dec(x_15); x_68 = lean::cnstr_get(x_20, 0); -lean::inc(x_68); x_70 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_71 = x_20; } else { + lean::inc(x_68); lean::dec(x_20); x_71 = lean::box(0); } @@ -11512,11 +11512,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -11595,11 +11595,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -11728,11 +11728,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -11811,11 +11811,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -12052,14 +12052,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -12088,14 +12088,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -12325,11 +12325,11 @@ else { obj* x_69; obj* x_71; obj* x_72; obj* x_75; x_69 = lean::cnstr_get(x_23, 0); -lean::inc(x_69); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_71 = x_23; } else { + lean::inc(x_69); lean::dec(x_23); x_71 = lean::box(0); } @@ -12728,11 +12728,11 @@ else { obj* x_82; obj* x_84; obj* x_85; obj* x_88; x_82 = lean::cnstr_get(x_36, 0); -lean::inc(x_82); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_84 = x_36; } else { + lean::inc(x_82); lean::dec(x_36); x_84 = lean::box(0); } @@ -13127,11 +13127,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -15037,14 +15037,14 @@ obj* x_5; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_5 = l_lean_parser_command_relaxed__infer__modifier; x_6 = l_lean_parser_combinators_node___at_lean_parser_command_doc__comment_parser___spec__4(x_5, x_0, x_1, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -15066,14 +15066,14 @@ obj* x_5; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_5 = l_lean_parser_command_strict__infer__modifier; x_6 = l_lean_parser_combinators_node___at_lean_parser_command_doc__comment_parser___spec__4(x_5, x_0, x_1, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -15452,11 +15452,11 @@ else { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_40, 0); -lean::inc(x_54); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_56 = x_40; } else { + lean::inc(x_54); lean::dec(x_40); x_56 = lean::box(0); } @@ -15785,11 +15785,11 @@ else { obj* x_67; obj* x_69; obj* x_70; x_67 = lean::cnstr_get(x_53, 0); -lean::inc(x_67); if (lean::is_exclusive(x_53)) { - lean::cnstr_release(x_53, 0); + lean::cnstr_set(x_53, 0, lean::box(0)); x_69 = x_53; } else { + lean::inc(x_67); lean::dec(x_53); x_69 = lean::box(0); } @@ -16037,14 +16037,14 @@ lean::inc(x_2); lean::inc(x_5); x_10 = l_lean_parser_token(x_5, x_2, x_3); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -16052,17 +16052,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -16146,12 +16146,12 @@ obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; ob lean::dec(x_5); lean::dec(x_2); x_60 = lean::cnstr_get(x_11, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_63 = x_11; } else { + lean::inc(x_60); lean::dec(x_11); x_63 = lean::box(0); } @@ -16314,14 +16314,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16386,14 +16386,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -16494,11 +16494,11 @@ else { obj* x_29; obj* x_31; obj* x_32; x_29 = lean::cnstr_get(x_27, 0); -lean::inc(x_29); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_31 = x_27; } else { + lean::inc(x_29); lean::dec(x_27); x_31 = lean::box(0); } @@ -16601,11 +16601,11 @@ else { obj* x_70; obj* x_72; obj* x_73; x_70 = lean::cnstr_get(x_67, 0); -lean::inc(x_70); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_72 = x_67; } else { + lean::inc(x_70); lean::dec(x_67); x_72 = lean::box(0); } @@ -16692,11 +16692,11 @@ else { obj* x_102; obj* x_104; obj* x_105; x_102 = lean::cnstr_get(x_99, 0); -lean::inc(x_102); if (lean::is_exclusive(x_99)) { - lean::cnstr_release(x_99, 0); + lean::cnstr_set(x_99, 0, lean::box(0)); x_104 = x_99; } else { + lean::inc(x_102); lean::dec(x_99); x_104 = lean::box(0); } @@ -16871,11 +16871,11 @@ else { obj* x_42; obj* x_44; obj* x_45; x_42 = lean::cnstr_get(x_40, 0); -lean::inc(x_42); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_44 = x_40; } else { + lean::inc(x_42); lean::dec(x_40); x_44 = lean::box(0); } @@ -16978,11 +16978,11 @@ else { obj* x_83; obj* x_85; obj* x_86; x_83 = lean::cnstr_get(x_80, 0); -lean::inc(x_83); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_85 = x_80; } else { + lean::inc(x_83); lean::dec(x_80); x_85 = lean::box(0); } @@ -17069,11 +17069,11 @@ else { obj* x_115; obj* x_117; obj* x_118; x_115 = lean::cnstr_get(x_112, 0); -lean::inc(x_115); if (lean::is_exclusive(x_112)) { - lean::cnstr_release(x_112, 0); + lean::cnstr_set(x_112, 0, lean::box(0)); x_117 = x_112; } else { + lean::inc(x_115); lean::dec(x_112); x_117 = lean::box(0); } @@ -20813,14 +20813,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -20885,14 +20885,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -21042,11 +21042,11 @@ else { obj* x_43; obj* x_45; obj* x_46; obj* x_49; x_43 = lean::cnstr_get(x_23, 0); -lean::inc(x_43); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_45 = x_23; } else { + lean::inc(x_43); lean::dec(x_23); x_45 = lean::box(0); } @@ -21285,11 +21285,11 @@ else { obj* x_56; obj* x_58; obj* x_59; obj* x_62; x_56 = lean::cnstr_get(x_36, 0); -lean::inc(x_56); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_58 = x_36; } else { + lean::inc(x_56); lean::dec(x_36); x_58 = lean::box(0); } @@ -21561,14 +21561,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -21633,14 +21633,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -21790,11 +21790,11 @@ else { obj* x_43; obj* x_45; obj* x_46; obj* x_49; x_43 = lean::cnstr_get(x_23, 0); -lean::inc(x_43); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_45 = x_23; } else { + lean::inc(x_43); lean::dec(x_23); x_45 = lean::box(0); } @@ -22033,11 +22033,11 @@ else { obj* x_56; obj* x_58; obj* x_59; obj* x_62; x_56 = lean::cnstr_get(x_36, 0); -lean::inc(x_56); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_58 = x_36; } else { + lean::inc(x_56); lean::dec(x_36); x_58 = lean::box(0); } @@ -22249,11 +22249,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -22360,11 +22360,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -22443,11 +22443,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -22549,11 +22549,11 @@ else { obj* x_82; obj* x_84; obj* x_85; x_82 = lean::cnstr_get(x_80, 0); -lean::inc(x_82); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_84 = x_80; } else { + lean::inc(x_82); lean::dec(x_80); x_84 = lean::box(0); } @@ -22680,11 +22680,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -22763,11 +22763,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -22869,11 +22869,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_93, 0); -lean::inc(x_95); if (lean::is_exclusive(x_93)) { - lean::cnstr_release(x_93, 0); + lean::cnstr_set(x_93, 0, lean::box(0)); x_97 = x_93; } else { + lean::inc(x_95); lean::dec(x_93); x_97 = lean::box(0); } @@ -23597,14 +23597,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -23707,14 +23707,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -24321,11 +24321,11 @@ else { obj* x_43; obj* x_45; obj* x_46; x_43 = lean::cnstr_get(x_35, 0); -lean::inc(x_43); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_45 = x_35; } else { + lean::inc(x_43); lean::dec(x_35); x_45 = lean::box(0); } @@ -24601,11 +24601,11 @@ else { obj* x_56; obj* x_58; obj* x_59; x_56 = lean::cnstr_get(x_48, 0); -lean::inc(x_56); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_58 = x_48; } else { + lean::inc(x_56); lean::dec(x_48); x_58 = lean::box(0); } @@ -24939,11 +24939,11 @@ else { obj* x_23; obj* x_25; obj* x_26; x_23 = lean::cnstr_get(x_21, 0); -lean::inc(x_23); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_25 = x_21; } else { + lean::inc(x_23); lean::dec(x_21); x_25 = lean::box(0); } @@ -25089,11 +25089,11 @@ else { obj* x_87; obj* x_89; obj* x_90; x_87 = lean::cnstr_get(x_85, 0); -lean::inc(x_87); if (lean::is_exclusive(x_85)) { - lean::cnstr_release(x_85, 0); + lean::cnstr_set(x_85, 0, lean::box(0)); x_89 = x_85; } else { + lean::inc(x_87); lean::dec(x_85); x_89 = lean::box(0); } @@ -25336,11 +25336,11 @@ else { obj* x_173; obj* x_175; obj* x_176; x_173 = lean::cnstr_get(x_167, 0); -lean::inc(x_173); if (lean::is_exclusive(x_167)) { - lean::cnstr_release(x_167, 0); + lean::cnstr_set(x_167, 0, lean::box(0)); x_175 = x_167; } else { + lean::inc(x_173); lean::dec(x_167); x_175 = lean::box(0); } @@ -25528,11 +25528,11 @@ else { obj* x_36; obj* x_38; obj* x_39; x_36 = lean::cnstr_get(x_34, 0); -lean::inc(x_36); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_38 = x_34; } else { + lean::inc(x_36); lean::dec(x_34); x_38 = lean::box(0); } @@ -25678,11 +25678,11 @@ else { obj* x_100; obj* x_102; obj* x_103; x_100 = lean::cnstr_get(x_98, 0); -lean::inc(x_100); if (lean::is_exclusive(x_98)) { - lean::cnstr_release(x_98, 0); + lean::cnstr_set(x_98, 0, lean::box(0)); x_102 = x_98; } else { + lean::inc(x_100); lean::dec(x_98); x_102 = lean::box(0); } @@ -25925,11 +25925,11 @@ else { obj* x_186; obj* x_188; obj* x_189; x_186 = lean::cnstr_get(x_180, 0); -lean::inc(x_186); if (lean::is_exclusive(x_180)) { - lean::cnstr_release(x_180, 0); + lean::cnstr_set(x_180, 0, lean::box(0)); x_188 = x_180; } else { + lean::inc(x_186); lean::dec(x_180); x_188 = lean::box(0); } @@ -27313,11 +27313,11 @@ else { obj* x_23; obj* x_25; obj* x_26; x_23 = lean::cnstr_get(x_21, 0); -lean::inc(x_23); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_25 = x_21; } else { + lean::inc(x_23); lean::dec(x_21); x_25 = lean::box(0); } @@ -27571,11 +27571,11 @@ else { obj* x_36; obj* x_38; obj* x_39; x_36 = lean::cnstr_get(x_34, 0); -lean::inc(x_36); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_38 = x_34; } else { + lean::inc(x_36); lean::dec(x_34); x_38 = lean::box(0); } @@ -28029,11 +28029,11 @@ else { obj* x_53; obj* x_55; obj* x_56; x_53 = lean::cnstr_get(x_45, 0); -lean::inc(x_53); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_55 = x_45; } else { + lean::inc(x_53); lean::dec(x_45); x_55 = lean::box(0); } @@ -28338,11 +28338,11 @@ else { obj* x_66; obj* x_68; obj* x_69; x_66 = lean::cnstr_get(x_58, 0); -lean::inc(x_66); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_68 = x_58; } else { + lean::inc(x_66); lean::dec(x_58); x_68 = lean::box(0); } @@ -29818,11 +29818,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } @@ -29988,11 +29988,11 @@ else { obj* x_67; obj* x_69; obj* x_70; x_67 = lean::cnstr_get(x_65, 0); -lean::inc(x_67); if (lean::is_exclusive(x_65)) { - lean::cnstr_release(x_65, 0); + lean::cnstr_set(x_65, 0, lean::box(0)); x_69 = x_65; } else { + lean::inc(x_67); lean::dec(x_65); x_69 = lean::box(0); } @@ -30233,11 +30233,11 @@ else { obj* x_163; obj* x_165; obj* x_166; x_163 = lean::cnstr_get(x_157, 0); -lean::inc(x_163); if (lean::is_exclusive(x_157)) { - lean::cnstr_release(x_157, 0); + lean::cnstr_set(x_157, 0, lean::box(0)); x_165 = x_157; } else { + lean::inc(x_163); lean::dec(x_157); x_165 = lean::box(0); } @@ -30463,11 +30463,11 @@ else { obj* x_47; obj* x_49; obj* x_50; x_47 = lean::cnstr_get(x_45, 0); -lean::inc(x_47); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_49 = x_45; } else { + lean::inc(x_47); lean::dec(x_45); x_49 = lean::box(0); } @@ -30633,11 +30633,11 @@ else { obj* x_105; obj* x_107; obj* x_108; x_105 = lean::cnstr_get(x_103, 0); -lean::inc(x_105); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_107 = x_103; } else { + lean::inc(x_105); lean::dec(x_103); x_107 = lean::box(0); } @@ -30878,11 +30878,11 @@ else { obj* x_201; obj* x_203; obj* x_204; x_201 = lean::cnstr_get(x_195, 0); -lean::inc(x_201); if (lean::is_exclusive(x_195)) { - lean::cnstr_release(x_195, 0); + lean::cnstr_set(x_195, 0, lean::box(0)); x_203 = x_195; } else { + lean::inc(x_201); lean::dec(x_195); x_203 = lean::box(0); } @@ -32113,14 +32113,14 @@ obj* x_5; obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_5 = l_lean_parser_no__kind; x_6 = l_lean_parser_combinators_node___at_lean_parser_command_doc__comment_parser___spec__4(x_5, x_0, x_1, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } diff --git a/src/boot/init/lean/parser/level.cpp b/src/boot/init/lean/parser/level.cpp index 9f4decede3..ebfc27350e 100644 --- a/src/boot/init/lean/parser/level.cpp +++ b/src/boot/init/lean/parser/level.cpp @@ -443,14 +443,14 @@ _start: obj* x_5; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_5 = lean::apply_4(x_1, x_0, x_2, x_3, x_4); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -524,14 +524,14 @@ _start: obj* x_5; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_5 = l_lean_parser_rec__t_recurse___at_lean_parser_level_parser_lean_parser_has__tokens___spec__1(x_0, x_1, x_2, x_3, x_4); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1112,14 +1112,14 @@ lean::inc(x_5); lean::inc(x_4); x_11 = l_lean_parser_token(x_4, x_5, x_6); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -1130,17 +1130,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_19; obj* x_21; obj* x_23; obj* x_25; obj* x_26; x_19 = lean::cnstr_get(x_12, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_12, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_12, 2); -lean::inc(x_23); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_25 = x_12; } else { + lean::inc(x_19); + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_12); x_25 = lean::box(0); } @@ -1164,14 +1164,14 @@ lean::cnstr_set(x_36, 0, x_5); x_37 = lean::box(0); x_38 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_31, x_2, x_36, x_37, x_4, x_21, x_14); x_39 = lean::cnstr_get(x_38, 0); -lean::inc(x_39); x_41 = lean::cnstr_get(x_38, 1); -lean::inc(x_41); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); - lean::cnstr_release(x_38, 1); + lean::cnstr_set(x_38, 0, lean::box(0)); + lean::cnstr_set(x_38, 1, lean::box(0)); x_43 = x_38; } else { + lean::inc(x_39); + lean::inc(x_41); lean::dec(x_38); x_43 = lean::box(0); } @@ -1212,12 +1212,12 @@ obj* x_59; uint8 x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; ob lean::dec(x_25); lean::dec(x_19); x_59 = lean::cnstr_get(x_39, 0); -lean::inc(x_59); x_61 = lean::cnstr_get_scalar(x_39, sizeof(void*)*1); if (lean::is_exclusive(x_39)) { - lean::cnstr_release(x_39, 0); + lean::cnstr_set(x_39, 0, lean::box(0)); x_62 = x_39; } else { + lean::inc(x_59); lean::dec(x_39); x_62 = lean::box(0); } @@ -1328,12 +1328,12 @@ lean::dec(x_4); lean::dec(x_0); lean::dec(x_2); x_110 = lean::cnstr_get(x_12, 0); -lean::inc(x_110); x_112 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_113 = x_12; } else { + lean::inc(x_110); lean::dec(x_12); x_113 = lean::box(0); } @@ -1448,14 +1448,14 @@ else { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_23; obj* x_24; obj* x_26; x_13 = lean::cnstr_get(x_2, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_2, 1); -lean::inc(x_15); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_17 = x_2; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_2); x_17 = lean::box(0); } @@ -1477,12 +1477,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; x_29 = lean::cnstr_get(x_24, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_24, sizeof(void*)*1); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_32 = x_24; } else { + lean::inc(x_29); lean::dec(x_24); x_32 = lean::box(0); } @@ -1586,17 +1586,17 @@ if (lean::obj_tag(x_18) == 0) { obj* x_60; obj* x_62; obj* x_64; obj* x_66; obj* x_67; obj* x_68; obj* x_69; obj* x_70; x_60 = lean::cnstr_get(x_18, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_18, 1); -lean::inc(x_62); x_64 = lean::cnstr_get(x_18, 2); -lean::inc(x_64); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); - lean::cnstr_release(x_18, 2); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); + lean::cnstr_set(x_18, 2, lean::box(0)); x_66 = x_18; } else { + lean::inc(x_60); + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_18); x_66 = lean::box(0); } @@ -1629,14 +1629,14 @@ lean::inc(x_75); lean::dec(x_70); x_78 = l_list_mfoldl___main___at_lean_parser_level_paren_parser___spec__2(x_0, x_71, x_15, x_3, x_4, x_73, x_19); x_79 = lean::cnstr_get(x_78, 0); -lean::inc(x_79); x_81 = lean::cnstr_get(x_78, 1); -lean::inc(x_81); if (lean::is_exclusive(x_78)) { - lean::cnstr_release(x_78, 0); - lean::cnstr_release(x_78, 1); + lean::cnstr_set(x_78, 0, lean::box(0)); + lean::cnstr_set(x_78, 1, lean::box(0)); x_83 = x_78; } else { + lean::inc(x_79); + lean::inc(x_81); lean::dec(x_78); x_83 = lean::box(0); } @@ -1658,12 +1658,12 @@ lean::dec(x_4); lean::dec(x_3); lean::dec(x_0); x_90 = lean::cnstr_get(x_70, 0); -lean::inc(x_90); x_92 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_93 = x_70; } else { + lean::inc(x_90); lean::dec(x_70); x_93 = lean::box(0); } @@ -1691,12 +1691,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_17); x_103 = lean::cnstr_get(x_18, 0); -lean::inc(x_103); x_105 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_106 = x_18; } else { + lean::inc(x_103); lean::dec(x_18); x_106 = lean::box(0); } @@ -1725,14 +1725,14 @@ x_6 = lean::box(0); lean::inc(x_0); x_8 = l_list_mfoldl___main___at_lean_parser_level_paren_parser___spec__2(x_0, x_6, x_1, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -1740,17 +1740,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -1780,12 +1780,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_0); x_28 = lean::cnstr_get(x_9, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_31 = x_9; } else { + lean::inc(x_28); lean::dec(x_9); x_31 = lean::box(0); } @@ -2537,14 +2537,14 @@ lean::inc(x_3); lean::inc(x_2); x_8 = l_lean_parser_token(x_2, x_3, x_4); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -2552,17 +2552,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -2717,12 +2717,12 @@ obj* x_82; uint8 x_84; obj* x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; ob lean::dec(x_14); lean::dec(x_20); x_82 = lean::cnstr_get(x_63, 0); -lean::inc(x_82); x_84 = lean::cnstr_get_scalar(x_63, sizeof(void*)*1); if (lean::is_exclusive(x_63)) { - lean::cnstr_release(x_63, 0); + lean::cnstr_set(x_63, 0, lean::box(0)); x_85 = x_63; } else { + lean::inc(x_82); lean::dec(x_63); x_85 = lean::box(0); } @@ -2758,12 +2758,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_96 = lean::cnstr_get(x_9, 0); -lean::inc(x_96); x_98 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_99 = x_9; } else { + lean::inc(x_96); lean::dec(x_9); x_99 = lean::box(0); } @@ -2807,14 +2807,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_token(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -2822,17 +2822,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_19; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -2906,12 +2906,12 @@ obj* x_53; uint8 x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; ob lean::dec(x_1); lean::dec(x_0); x_53 = lean::cnstr_get(x_6, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_56 = x_6; } else { + lean::inc(x_53); lean::dec(x_6); x_56 = lean::box(0); } @@ -2966,14 +2966,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_token(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -2981,17 +2981,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -3075,12 +3075,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_1); lean::dec(x_0); x_55 = lean::cnstr_get(x_6, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_58 = x_6; } else { + lean::inc(x_55); lean::dec(x_6); x_58 = lean::box(0); } @@ -3166,14 +3166,14 @@ else { obj* x_11; obj* x_13; obj* x_15; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_26; x_11 = lean::cnstr_get(x_0, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_0, 1); -lean::inc(x_13); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_15 = x_0; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_0); x_15 = lean::box(0); } @@ -3182,14 +3182,14 @@ lean::inc(x_3); lean::inc(x_2); x_19 = lean::apply_4(x_11, x_2, x_3, x_4, x_5); x_20 = lean::cnstr_get(x_19, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_19, 1); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); - lean::cnstr_release(x_19, 1); + lean::cnstr_set(x_19, 0, lean::box(0)); + lean::cnstr_set(x_19, 1, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -3199,17 +3199,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_27; obj* x_29; obj* x_31; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; x_27 = lean::cnstr_get(x_20, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_20, 1); -lean::inc(x_29); x_31 = lean::cnstr_get(x_20, 2); -lean::inc(x_31); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_33 = x_20; } else { + lean::inc(x_27); + lean::inc(x_29); + lean::inc(x_31); lean::dec(x_20); x_33 = lean::box(0); } @@ -3302,12 +3302,12 @@ obj* x_68; uint8 x_70; obj* x_71; lean::dec(x_1); lean::dec(x_15); x_68 = lean::cnstr_get(x_20, 0); -lean::inc(x_68); x_70 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_71 = x_20; } else { + lean::inc(x_68); lean::dec(x_20); x_71 = lean::box(0); } @@ -3714,14 +3714,14 @@ else { obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_26; obj* x_27; obj* x_29; x_15 = lean::cnstr_get(x_2, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_2, 1); -lean::inc(x_17); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_19 = x_2; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_2); x_19 = lean::box(0); } @@ -3744,12 +3744,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; x_32 = lean::cnstr_get(x_27, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_27, sizeof(void*)*1); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_35 = x_27; } else { + lean::inc(x_32); lean::dec(x_27); x_35 = lean::box(0); } @@ -3853,17 +3853,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_63; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; x_63 = lean::cnstr_get(x_20, 0); -lean::inc(x_63); x_65 = lean::cnstr_get(x_20, 1); -lean::inc(x_65); x_67 = lean::cnstr_get(x_20, 2); -lean::inc(x_67); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_69 = x_20; } else { + lean::inc(x_63); + lean::inc(x_65); + lean::inc(x_67); lean::dec(x_20); x_69 = lean::box(0); } @@ -3896,14 +3896,14 @@ lean::inc(x_78); lean::dec(x_73); x_81 = l_list_mfoldl___main___at_lean_parser_level_app_parser___spec__2(x_0, x_74, x_17, x_3, x_4, x_5, x_76, x_21); x_82 = lean::cnstr_get(x_81, 0); -lean::inc(x_82); x_84 = lean::cnstr_get(x_81, 1); -lean::inc(x_84); if (lean::is_exclusive(x_81)) { - lean::cnstr_release(x_81, 0); - lean::cnstr_release(x_81, 1); + lean::cnstr_set(x_81, 0, lean::box(0)); + lean::cnstr_set(x_81, 1, lean::box(0)); x_86 = x_81; } else { + lean::inc(x_82); + lean::inc(x_84); lean::dec(x_81); x_86 = lean::box(0); } @@ -3926,12 +3926,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_17); x_94 = lean::cnstr_get(x_73, 0); -lean::inc(x_94); x_96 = lean::cnstr_get_scalar(x_73, sizeof(void*)*1); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_97 = x_73; } else { + lean::inc(x_94); lean::dec(x_73); x_97 = lean::box(0); } @@ -3960,12 +3960,12 @@ lean::dec(x_0); lean::dec(x_17); lean::dec(x_19); x_108 = lean::cnstr_get(x_20, 0); -lean::inc(x_108); x_110 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_111 = x_20; } else { + lean::inc(x_108); lean::dec(x_20); x_111 = lean::box(0); } @@ -3994,14 +3994,14 @@ x_7 = lean::box(0); lean::inc(x_0); x_9 = l_list_mfoldl___main___at_lean_parser_level_app_parser___spec__2(x_0, x_7, x_1, x_2, x_3, x_4, x_5, x_6); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -4009,17 +4009,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_21 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_10); x_21 = lean::box(0); } @@ -4049,12 +4049,12 @@ else obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_0); x_29 = lean::cnstr_get(x_10, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_32 = x_10; } else { + lean::inc(x_29); lean::dec(x_10); x_32 = lean::box(0); } @@ -4512,14 +4512,14 @@ lean::inc(x_6); lean::inc(x_5); x_13 = l_lean_parser_token(x_5, x_6, x_7); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -4530,17 +4530,17 @@ if (lean::obj_tag(x_14) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_27; obj* x_28; x_21 = lean::cnstr_get(x_14, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_14, 1); -lean::inc(x_23); x_25 = lean::cnstr_get(x_14, 2); -lean::inc(x_25); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); - lean::cnstr_release(x_14, 2); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); + lean::cnstr_set(x_14, 2, lean::box(0)); x_27 = x_14; } else { + lean::inc(x_21); + lean::inc(x_23); + lean::inc(x_25); lean::dec(x_14); x_27 = lean::box(0); } @@ -4564,14 +4564,14 @@ lean::cnstr_set(x_38, 0, x_6); x_39 = lean::box(0); x_40 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_33, x_2, x_38, x_39, x_5, x_23, x_16); x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get(x_40, 1); -lean::inc(x_43); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_45 = x_40; } else { + lean::inc(x_41); + lean::inc(x_43); lean::dec(x_40); x_45 = lean::box(0); } @@ -4612,12 +4612,12 @@ obj* x_61; uint8 x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; ob lean::dec(x_27); lean::dec(x_21); x_61 = lean::cnstr_get(x_41, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_41, sizeof(void*)*1); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_64 = x_41; } else { + lean::inc(x_61); lean::dec(x_41); x_64 = lean::box(0); } @@ -4728,12 +4728,12 @@ lean::dec(x_6); lean::dec(x_0); lean::dec(x_2); x_112 = lean::cnstr_get(x_14, 0); -lean::inc(x_112); x_114 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_115 = x_14; } else { + lean::inc(x_112); lean::dec(x_14); x_115 = lean::box(0); } @@ -4768,14 +4768,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_token(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -4783,17 +4783,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_19; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -4867,12 +4867,12 @@ obj* x_53; uint8 x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; ob lean::dec(x_1); lean::dec(x_0); x_53 = lean::cnstr_get(x_6, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_56 = x_6; } else { + lean::inc(x_53); lean::dec(x_6); x_56 = lean::box(0); } @@ -5384,14 +5384,14 @@ else { obj* x_12; obj* x_14; obj* x_16; obj* x_21; obj* x_22; obj* x_24; obj* x_26; obj* x_27; obj* x_28; x_12 = lean::cnstr_get(x_0, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_0, 1); -lean::inc(x_14); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_16 = x_0; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_0); x_16 = lean::box(0); } @@ -5401,14 +5401,14 @@ lean::inc(x_3); lean::inc(x_2); x_21 = lean::apply_5(x_12, x_2, x_3, x_4, x_5, x_6); x_22 = lean::cnstr_get(x_21, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_21, 1); -lean::inc(x_24); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_26 = x_21; } else { + lean::inc(x_22); + lean::inc(x_24); lean::dec(x_21); x_26 = lean::box(0); } @@ -5418,17 +5418,17 @@ if (lean::obj_tag(x_22) == 0) { obj* x_29; obj* x_31; obj* x_33; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; x_29 = lean::cnstr_get(x_22, 0); -lean::inc(x_29); x_31 = lean::cnstr_get(x_22, 1); -lean::inc(x_31); x_33 = lean::cnstr_get(x_22, 2); -lean::inc(x_33); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); - lean::cnstr_release(x_22, 1); - lean::cnstr_release(x_22, 2); + lean::cnstr_set(x_22, 0, lean::box(0)); + lean::cnstr_set(x_22, 1, lean::box(0)); + lean::cnstr_set(x_22, 2, lean::box(0)); x_35 = x_22; } else { + lean::inc(x_29); + lean::inc(x_31); + lean::inc(x_33); lean::dec(x_22); x_35 = lean::box(0); } @@ -5523,12 +5523,12 @@ obj* x_72; uint8 x_74; obj* x_75; lean::dec(x_1); lean::dec(x_16); x_72 = lean::cnstr_get(x_22, 0); -lean::inc(x_72); x_74 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_75 = x_22; } else { + lean::inc(x_72); lean::dec(x_22); x_75 = lean::box(0); } @@ -5751,14 +5751,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_1); x_5 = l_lean_parser_monad__parsec_observing___at_lean_parser_peek__token___spec__2(x_1, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -5766,17 +5766,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -6037,12 +6037,12 @@ obj* x_129; uint8 x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_135; lean::dec(x_1); lean::dec(x_0); x_129 = lean::cnstr_get(x_6, 0); -lean::inc(x_129); x_131 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_132 = x_6; } else { + lean::inc(x_129); lean::dec(x_6); x_132 = lean::box(0); } @@ -6078,14 +6078,14 @@ lean::inc(x_5); lean::inc(x_4); x_12 = l_lean_parser_curr__lbp___at_lean_parser_level__parser_run___spec__4(x_4, x_5, x_6, x_7); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -6093,17 +6093,17 @@ if (lean::obj_tag(x_13) == 0) { obj* x_18; obj* x_20; obj* x_22; obj* x_24; uint8 x_25; x_18 = lean::cnstr_get(x_13, 0); -lean::inc(x_18); x_20 = lean::cnstr_get(x_13, 1); -lean::inc(x_20); x_22 = lean::cnstr_get(x_13, 2); -lean::inc(x_22); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_24 = x_13; } else { + lean::inc(x_18); + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_13); x_24 = lean::box(0); } @@ -6188,12 +6188,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_38); x_70 = lean::cnstr_get(x_44, 0); -lean::inc(x_70); x_72 = lean::cnstr_get_scalar(x_44, sizeof(void*)*1); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); + lean::cnstr_set(x_44, 0, lean::box(0)); x_73 = x_44; } else { + lean::inc(x_70); lean::dec(x_44); x_73 = lean::box(0); } @@ -6227,12 +6227,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_84 = lean::cnstr_get(x_13, 0); -lean::inc(x_84); x_86 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_87 = x_13; } else { + lean::inc(x_84); lean::dec(x_13); x_87 = lean::box(0); } @@ -6301,14 +6301,14 @@ lean::dec(x_5); x_9 = l_lean_parser_rec__t_run__parsec___at_lean_parser_detail__ident_parser___spec__1___closed__1; x_10 = l_lean_parser_rec__t_run___at_lean_parser_level__parser_run___spec__6(x_0, x_9, x_1, x_7, x_2, x_3, x_4); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -6332,14 +6332,14 @@ lean::inc(x_4); lean::inc(x_3); x_9 = lean::apply_4(x_0, x_3, x_4, x_5, x_6); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -6383,12 +6383,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_40 = lean::cnstr_get(x_10, 0); -lean::inc(x_40); x_42 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_43 = x_10; } else { + lean::inc(x_40); lean::dec(x_10); x_43 = lean::box(0); } diff --git a/src/boot/init/lean/parser/module.cpp b/src/boot/init/lean/parser/module.cpp index f678c4c6eb..a37fe9ef6c 100644 --- a/src/boot/init/lean/parser/module.cpp +++ b/src/boot/init/lean/parser/module.cpp @@ -458,14 +458,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; x_6 = lean::apply_1(x_0, x_5); x_7 = lean::apply_3(x_1, x_6, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -473,17 +473,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -516,12 +516,12 @@ else obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_4); x_27 = lean::cnstr_get(x_8, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_30 = x_8; } else { + lean::inc(x_27); lean::dec(x_8); x_30 = lean::box(0); } @@ -614,14 +614,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -689,14 +689,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -721,14 +721,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -736,17 +736,17 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_3, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_3, 2); -lean::inc(x_12); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_14 = x_3; } else { + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_3); x_14 = lean::box(0); } @@ -783,12 +783,12 @@ obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_1); lean::dec(x_0); x_23 = lean::cnstr_get(x_3, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_26 = x_3; } else { + lean::inc(x_23); lean::dec(x_3); x_26 = lean::box(0); } @@ -830,14 +830,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -845,15 +845,15 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; obj* x_17; x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 2); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_11 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -887,12 +887,12 @@ else obj* x_19; uint8 x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; lean::dec(x_0); x_19 = lean::cnstr_get(x_2, 0); -lean::inc(x_19); x_21 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_22 = x_2; } else { + lean::inc(x_19); lean::dec(x_2); x_22 = lean::box(0); } @@ -922,14 +922,14 @@ _start: { obj* x_4; obj* x_6; obj* x_8; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -993,12 +993,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_39 = lean::cnstr_get(x_4, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_42 = x_4; } else { + lean::inc(x_39); lean::dec(x_4); x_42 = lean::box(0); } @@ -1028,14 +1028,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1083,12 +1083,12 @@ obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_1); lean::dec(x_0); x_30 = lean::cnstr_get(x_3, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_33 = x_3; } else { + lean::inc(x_30); lean::dec(x_3); x_33 = lean::box(0); } @@ -1294,14 +1294,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1368,14 +1368,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1759,14 +1759,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = l_lean_parser_combinators_many1___at_lean_parser_ident__univ__spec_parser_lean_parser_has__tokens___spec__1(x_0, x_1, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1841,14 +1841,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_token(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -1856,17 +1856,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -1950,12 +1950,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_1); lean::dec(x_0); x_55 = lean::cnstr_get(x_6, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_58 = x_6; } else { + lean::inc(x_55); lean::dec(x_6); x_58 = lean::box(0); } @@ -1990,14 +1990,14 @@ obj* x_5; obj* x_6; obj* x_7; obj* x_9; obj* x_11; x_5 = l_lean_name_to__string___closed__1; x_6 = l_lean_parser_monad__parsec_str__core___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__3(x_5, x_0, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -2005,15 +2005,15 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_12 = lean::cnstr_get(x_7, 1); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 2); -lean::inc(x_14); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_16 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_7); x_16 = lean::box(0); } @@ -2043,12 +2043,12 @@ else obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_1); x_24 = lean::cnstr_get(x_7, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_27 = x_7; } else { + lean::inc(x_24); lean::dec(x_7); x_27 = lean::box(0); } @@ -2257,11 +2257,11 @@ else { obj* x_8; obj* x_10; obj* x_11; x_8 = lean::cnstr_get(x_6, 0); -lean::inc(x_8); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_10 = x_6; } else { + lean::inc(x_8); lean::dec(x_6); x_10 = lean::box(0); } @@ -2826,11 +2826,11 @@ else { obj* x_41; obj* x_43; obj* x_44; x_41 = lean::cnstr_get(x_35, 0); -lean::inc(x_41); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_43 = x_35; } else { + lean::inc(x_41); lean::dec(x_35); x_43 = lean::box(0); } @@ -3054,11 +3054,11 @@ else { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_48, 0); -lean::inc(x_54); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_56 = x_48; } else { + lean::inc(x_54); lean::dec(x_48); x_56 = lean::box(0); } @@ -3253,17 +3253,17 @@ if (lean::obj_tag(x_13) == 0) { obj* x_18; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_18 = lean::cnstr_get(x_13, 0); -lean::inc(x_18); x_20 = lean::cnstr_get(x_13, 1); -lean::inc(x_20); x_22 = lean::cnstr_get(x_13, 2); -lean::inc(x_22); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_24 = x_13; } else { + lean::inc(x_18); + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_13); x_24 = lean::box(0); } @@ -3287,12 +3287,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; x_29 = lean::cnstr_get(x_13, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_32 = x_13; } else { + lean::inc(x_29); lean::dec(x_13); x_32 = lean::box(0); } @@ -3313,12 +3313,12 @@ else { obj* x_35; uint8 x_37; obj* x_38; obj* x_39; obj* x_41; obj* x_43; obj* x_45; obj* x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; x_35 = lean::cnstr_get(x_13, 0); -lean::inc(x_35); x_37 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_38 = x_13; } else { + lean::inc(x_35); lean::dec(x_13); x_38 = lean::box(0); } @@ -3382,17 +3382,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_59; obj* x_61; obj* x_63; obj* x_65; x_59 = lean::cnstr_get(x_4, 0); -lean::inc(x_59); x_61 = lean::cnstr_get(x_4, 1); -lean::inc(x_61); x_63 = lean::cnstr_get(x_4, 2); -lean::inc(x_63); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_65 = x_4; } else { + lean::inc(x_59); + lean::inc(x_61); + lean::inc(x_63); lean::dec(x_4); x_65 = lean::box(0); } @@ -3447,12 +3447,12 @@ else { obj* x_82; uint8 x_84; obj* x_85; obj* x_86; obj* x_87; obj* x_88; x_82 = lean::cnstr_get(x_4, 0); -lean::inc(x_82); x_84 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_85 = x_4; } else { + lean::inc(x_82); lean::dec(x_4); x_85 = lean::box(0); } @@ -3595,14 +3595,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -3610,17 +3610,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } @@ -3657,12 +3657,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; lean::dec(x_0); x_22 = lean::cnstr_get(x_2, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_25 = x_2; } else { + lean::inc(x_22); lean::dec(x_2); x_25 = lean::box(0); } @@ -3729,14 +3729,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -3744,29 +3744,29 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_21; uint8 x_22; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } x_14 = lean::cnstr_get(x_7, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 1); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -3838,12 +3838,12 @@ else obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; lean::dec(x_0); x_47 = lean::cnstr_get(x_2, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_50 = x_2; } else { + lean::inc(x_47); lean::dec(x_2); x_50 = lean::box(0); } @@ -3913,14 +3913,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -3928,17 +3928,17 @@ if (lean::obj_tag(x_3) == 0) { obj* x_8; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_8 = lean::cnstr_get(x_3, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_3, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_3, 2); -lean::inc(x_12); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_14 = x_3; } else { + lean::inc(x_8); + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_3); x_14 = lean::box(0); } @@ -3975,12 +3975,12 @@ obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_1); lean::dec(x_0); x_23 = lean::cnstr_get(x_3, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_26 = x_3; } else { + lean::inc(x_23); lean::dec(x_3); x_26 = lean::box(0); } @@ -4010,14 +4010,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -4025,17 +4025,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_19; uint8 x_20; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } @@ -4130,12 +4130,12 @@ else obj* x_56; uint8 x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; lean::dec(x_0); x_56 = lean::cnstr_get(x_2, 0); -lean::inc(x_56); x_58 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_59 = x_2; } else { + lean::inc(x_56); lean::dec(x_2); x_59 = lean::box(0); } @@ -4205,14 +4205,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -4238,14 +4238,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -4253,29 +4253,29 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_23; obj* x_26; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } x_14 = lean::cnstr_get(x_7, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 1); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -4330,12 +4330,12 @@ else obj* x_39; uint8 x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; lean::dec(x_0); x_39 = lean::cnstr_get(x_2, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_42 = x_2; } else { + lean::inc(x_39); lean::dec(x_2); x_42 = lean::box(0); } @@ -4434,14 +4434,14 @@ lean::dec(x_4); x_8 = l___private_init_lean_parser_module_1__commands__aux___main___lambda__1___closed__1; x_9 = l_lean_parser_command__parser_run(x_0, x_8, x_5, x_1, x_2); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -4449,17 +4449,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_21 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_10); x_21 = lean::box(0); } @@ -4492,12 +4492,12 @@ else obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_3); x_29 = lean::cnstr_get(x_10, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_32 = x_10; } else { + lean::inc(x_29); lean::dec(x_10); x_32 = lean::box(0); } @@ -4527,14 +4527,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -4542,29 +4542,29 @@ if (lean::obj_tag(x_1) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; uint8 x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_12 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_1); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_6, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 1); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -4611,12 +4611,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; x_29 = lean::cnstr_get(x_1, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_32 = x_1; } else { + lean::inc(x_29); lean::dec(x_1); x_32 = lean::box(0); } @@ -4654,14 +4654,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -4708,12 +4708,12 @@ else obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_0); x_30 = lean::cnstr_get(x_2, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_33 = x_2; } else { + lean::inc(x_30); lean::dec(x_2); x_33 = lean::box(0); } @@ -4750,14 +4750,14 @@ lean::inc(x_7); lean::dec(x_4); x_10 = l_lean_parser_token(x_7, x_0, x_1); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -4765,17 +4765,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -4808,12 +4808,12 @@ else obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_2); x_30 = lean::cnstr_get(x_11, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_33 = x_11; } else { + lean::inc(x_30); lean::dec(x_11); x_33 = lean::box(0); } @@ -4843,14 +4843,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -4858,27 +4858,27 @@ if (lean::obj_tag(x_1) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_12 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_1); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 1, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -4919,12 +4919,12 @@ else { obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_24 = lean::cnstr_get(x_1, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_27 = x_1; } else { + lean::inc(x_24); lean::dec(x_1); x_27 = lean::box(0); } @@ -4954,14 +4954,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; obj* x_6; obj* x_7; obj* x_8; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -4983,14 +4983,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -4998,27 +4998,27 @@ if (lean::obj_tag(x_1) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_12 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_1); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 1, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -5059,12 +5059,12 @@ else { obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_24 = lean::cnstr_get(x_1, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_27 = x_1; } else { + lean::inc(x_24); lean::dec(x_1); x_27 = lean::box(0); } @@ -5094,14 +5094,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -5131,14 +5131,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -5219,14 +5219,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -5234,27 +5234,27 @@ if (lean::obj_tag(x_1) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_12 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_1); x_12 = lean::box(0); } x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 1, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -5295,12 +5295,12 @@ else { obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_24 = lean::cnstr_get(x_1, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_27 = x_1; } else { + lean::inc(x_24); lean::dec(x_1); x_27 = lean::box(0); } @@ -5354,14 +5354,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -5418,12 +5418,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; lean::dec(x_0); x_33 = lean::cnstr_get(x_2, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_36 = x_2; } else { + lean::inc(x_33); lean::dec(x_2); x_36 = lean::box(0); } @@ -5453,14 +5453,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -5500,12 +5500,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_26 = lean::cnstr_get(x_1, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_29 = x_1; } else { + lean::inc(x_26); lean::dec(x_1); x_29 = lean::box(0); } @@ -5543,14 +5543,14 @@ _start: { obj* x_5; obj* x_7; obj* x_9; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -5677,14 +5677,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -5692,27 +5692,27 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_21; obj* x_22; uint8 x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 1, lean::box(0)); x_16 = x_7; } else { + lean::inc(x_14); lean::dec(x_7); x_16 = lean::box(0); } @@ -5764,12 +5764,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; lean::dec(x_0); x_33 = lean::cnstr_get(x_2, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_36 = x_2; } else { + lean::inc(x_33); lean::dec(x_2); x_36 = lean::box(0); } @@ -5799,14 +5799,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -5828,12 +5828,12 @@ else { obj* x_9; uint8 x_11; obj* x_12; x_9 = lean::cnstr_get(x_2, 0); -lean::inc(x_9); x_11 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_12 = x_2; } else { + lean::inc(x_9); lean::dec(x_2); x_12 = lean::box(0); } @@ -5889,14 +5889,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -5947,14 +5947,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -5985,12 +5985,12 @@ else obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_1); x_23 = lean::cnstr_get(x_3, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_26 = x_3; } else { + lean::inc(x_23); lean::dec(x_3); x_26 = lean::box(0); } @@ -6020,14 +6020,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -6088,12 +6088,12 @@ else obj* x_37; uint8 x_39; obj* x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; lean::dec(x_0); x_37 = lean::cnstr_get(x_2, 0); -lean::inc(x_37); x_39 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_40 = x_2; } else { + lean::inc(x_37); lean::dec(x_2); x_40 = lean::box(0); } @@ -6123,14 +6123,14 @@ _start: { obj* x_6; obj* x_8; obj* x_10; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -6365,14 +6365,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -6380,29 +6380,29 @@ if (lean::obj_tag(x_2) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_7 = lean::cnstr_get(x_2, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_2, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_2, 2); -lean::inc(x_11); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_2); x_13 = lean::box(0); } x_14 = lean::cnstr_get(x_7, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 1); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -6444,12 +6444,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_0); x_28 = lean::cnstr_get(x_2, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_31 = x_2; } else { + lean::inc(x_28); lean::dec(x_2); x_31 = lean::box(0); } @@ -6479,14 +6479,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -6522,12 +6522,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_26 = lean::cnstr_get(x_1, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_29 = x_1; } else { + lean::inc(x_26); lean::dec(x_1); x_29 = lean::box(0); } @@ -6626,14 +6626,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -6662,14 +6662,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -6760,14 +6760,14 @@ lean::inc(x_7); lean::dec(x_4); x_10 = l_lean_parser_whitespace(x_7, x_0, x_1); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -6775,17 +6775,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -6818,12 +6818,12 @@ else obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_2); x_30 = lean::cnstr_get(x_11, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_33 = x_11; } else { + lean::inc(x_30); lean::dec(x_11); x_33 = lean::box(0); } @@ -6862,14 +6862,14 @@ x_10 = l_lean_parser_module_header; x_11 = l_lean_parser_module_header_parser___closed__1; x_12 = l_lean_parser_combinators_node___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__15(x_10, x_11, x_7, x_0, x_1); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -6877,17 +6877,17 @@ if (lean::obj_tag(x_13) == 0) { obj* x_18; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; x_18 = lean::cnstr_get(x_13, 0); -lean::inc(x_18); x_20 = lean::cnstr_get(x_13, 1); -lean::inc(x_20); x_22 = lean::cnstr_get(x_13, 2); -lean::inc(x_22); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_24 = x_13; } else { + lean::inc(x_18); + lean::inc(x_20); + lean::inc(x_22); lean::dec(x_13); x_24 = lean::box(0); } @@ -6920,12 +6920,12 @@ else obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_2); x_32 = lean::cnstr_get(x_13, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_35 = x_13; } else { + lean::inc(x_32); lean::dec(x_13); x_35 = lean::box(0); } @@ -6955,14 +6955,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -6994,12 +6994,12 @@ else { obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_22 = lean::cnstr_get(x_1, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_25 = x_1; } else { + lean::inc(x_22); lean::dec(x_1); x_25 = lean::box(0); } @@ -7029,14 +7029,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -7066,12 +7066,12 @@ else { obj* x_20; uint8 x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; x_20 = lean::cnstr_get(x_1, 0); -lean::inc(x_20); x_22 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_23 = x_1; } else { + lean::inc(x_20); lean::dec(x_1); x_23 = lean::box(0); } @@ -7109,14 +7109,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -7150,12 +7150,12 @@ else { obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_22 = lean::cnstr_get(x_1, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_25 = x_1; } else { + lean::inc(x_22); lean::dec(x_1); x_25 = lean::box(0); } @@ -7201,14 +7201,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -7253,12 +7253,12 @@ else obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_0); x_27 = lean::cnstr_get(x_2, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_30 = x_2; } else { + lean::inc(x_27); lean::dec(x_2); x_30 = lean::box(0); } @@ -7288,14 +7288,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -7330,12 +7330,12 @@ else obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_0); x_26 = lean::cnstr_get(x_2, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_29 = x_2; } else { + lean::inc(x_26); lean::dec(x_2); x_29 = lean::box(0); } @@ -7365,14 +7365,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -7423,14 +7423,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -7489,12 +7489,12 @@ else { obj* x_38; uint8 x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; x_38 = lean::cnstr_get(x_1, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_41 = x_1; } else { + lean::inc(x_38); lean::dec(x_1); x_41 = lean::box(0); } @@ -7532,14 +7532,14 @@ _start: { obj* x_1; obj* x_3; obj* x_5; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); x_3 = lean::cnstr_get(x_0, 1); -lean::inc(x_3); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_5 = x_0; } else { + lean::inc(x_1); + lean::inc(x_3); lean::dec(x_0); x_5 = lean::box(0); } @@ -7547,17 +7547,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_16; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_6 = lean::cnstr_get(x_1, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_1, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_1, 2); -lean::inc(x_10); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_12 = x_1; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_1); x_12 = lean::box(0); } @@ -7604,12 +7604,12 @@ else { obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; x_27 = lean::cnstr_get(x_1, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_30 = x_1; } else { + lean::inc(x_27); lean::dec(x_1); x_30 = lean::box(0); } diff --git a/src/boot/init/lean/parser/notation.cpp b/src/boot/init/lean/parser/notation.cpp index b33de198bf..b376dc868f 100644 --- a/src/boot/init/lean/parser/notation.cpp +++ b/src/boot/init/lean/parser/notation.cpp @@ -443,14 +443,14 @@ _start: obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; x_6 = lean::apply_5(x_1, x_0, x_2, x_3, x_4, x_5); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -524,14 +524,14 @@ _start: obj* x_6; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; x_6 = l_lean_parser_rec__t_recurse___at_lean_parser_term_parser_lean_parser_has__tokens___spec__1(x_0, x_1, x_2, x_3, x_4, x_5); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -888,14 +888,14 @@ lean::inc(x_2); lean::inc(x_0); x_7 = l_lean_parser_token(x_0, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -903,17 +903,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -987,12 +987,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_0); lean::dec(x_2); x_55 = lean::cnstr_get(x_8, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_58 = x_8; } else { + lean::inc(x_55); lean::dec(x_8); x_58 = lean::box(0); } @@ -1039,14 +1039,14 @@ lean::inc(x_4); lean::inc(x_2); x_10 = l_lean_parser_token(x_2, x_4, x_5); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -1054,17 +1054,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -1219,12 +1219,12 @@ obj* x_84; uint8 x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; ob lean::dec(x_16); lean::dec(x_22); x_84 = lean::cnstr_get(x_65, 0); -lean::inc(x_84); x_86 = lean::cnstr_get_scalar(x_65, sizeof(void*)*1); if (lean::is_exclusive(x_65)) { - lean::cnstr_release(x_65, 0); + lean::cnstr_set(x_65, 0, lean::box(0)); x_87 = x_65; } else { + lean::inc(x_84); lean::dec(x_65); x_87 = lean::box(0); } @@ -1260,12 +1260,12 @@ lean::dec(x_4); lean::dec(x_0); lean::dec(x_2); x_98 = lean::cnstr_get(x_11, 0); -lean::inc(x_98); x_100 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_101 = x_11; } else { + lean::inc(x_98); lean::dec(x_11); x_101 = lean::box(0); } @@ -1341,14 +1341,14 @@ else { obj* x_12; obj* x_14; obj* x_16; obj* x_21; obj* x_22; obj* x_24; obj* x_26; obj* x_27; obj* x_28; x_12 = lean::cnstr_get(x_0, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_0, 1); -lean::inc(x_14); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_16 = x_0; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_0); x_16 = lean::box(0); } @@ -1358,14 +1358,14 @@ lean::inc(x_3); lean::inc(x_2); x_21 = lean::apply_5(x_12, x_2, x_3, x_4, x_5, x_6); x_22 = lean::cnstr_get(x_21, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_21, 1); -lean::inc(x_24); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); - lean::cnstr_release(x_21, 1); + lean::cnstr_set(x_21, 0, lean::box(0)); + lean::cnstr_set(x_21, 1, lean::box(0)); x_26 = x_21; } else { + lean::inc(x_22); + lean::inc(x_24); lean::dec(x_21); x_26 = lean::box(0); } @@ -1375,17 +1375,17 @@ if (lean::obj_tag(x_22) == 0) { obj* x_29; obj* x_31; obj* x_33; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; x_29 = lean::cnstr_get(x_22, 0); -lean::inc(x_29); x_31 = lean::cnstr_get(x_22, 1); -lean::inc(x_31); x_33 = lean::cnstr_get(x_22, 2); -lean::inc(x_33); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); - lean::cnstr_release(x_22, 1); - lean::cnstr_release(x_22, 2); + lean::cnstr_set(x_22, 0, lean::box(0)); + lean::cnstr_set(x_22, 1, lean::box(0)); + lean::cnstr_set(x_22, 2, lean::box(0)); x_35 = x_22; } else { + lean::inc(x_29); + lean::inc(x_31); + lean::inc(x_33); lean::dec(x_22); x_35 = lean::box(0); } @@ -1480,12 +1480,12 @@ obj* x_72; uint8 x_74; obj* x_75; lean::dec(x_1); lean::dec(x_16); x_72 = lean::cnstr_get(x_22, 0); -lean::inc(x_72); x_74 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_75 = x_22; } else { + lean::inc(x_72); lean::dec(x_22); x_75 = lean::box(0); } @@ -1608,14 +1608,14 @@ else { obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_26; obj* x_27; obj* x_29; x_15 = lean::cnstr_get(x_2, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_2, 1); -lean::inc(x_17); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_19 = x_2; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_2); x_19 = lean::box(0); } @@ -1638,12 +1638,12 @@ else { obj* x_32; uint8 x_34; obj* x_35; x_32 = lean::cnstr_get(x_27, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_27, sizeof(void*)*1); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_35 = x_27; } else { + lean::inc(x_32); lean::dec(x_27); x_35 = lean::box(0); } @@ -1747,17 +1747,17 @@ if (lean::obj_tag(x_20) == 0) { obj* x_63; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; x_63 = lean::cnstr_get(x_20, 0); -lean::inc(x_63); x_65 = lean::cnstr_get(x_20, 1); -lean::inc(x_65); x_67 = lean::cnstr_get(x_20, 2); -lean::inc(x_67); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); - lean::cnstr_release(x_20, 2); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); + lean::cnstr_set(x_20, 2, lean::box(0)); x_69 = x_20; } else { + lean::inc(x_63); + lean::inc(x_65); + lean::inc(x_67); lean::dec(x_20); x_69 = lean::box(0); } @@ -1790,14 +1790,14 @@ lean::inc(x_78); lean::dec(x_73); x_81 = l_list_mfoldl___main___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__2(x_0, x_74, x_17, x_3, x_4, x_5, x_76, x_21); x_82 = lean::cnstr_get(x_81, 0); -lean::inc(x_82); x_84 = lean::cnstr_get(x_81, 1); -lean::inc(x_84); if (lean::is_exclusive(x_81)) { - lean::cnstr_release(x_81, 0); - lean::cnstr_release(x_81, 1); + lean::cnstr_set(x_81, 0, lean::box(0)); + lean::cnstr_set(x_81, 1, lean::box(0)); x_86 = x_81; } else { + lean::inc(x_82); + lean::inc(x_84); lean::dec(x_81); x_86 = lean::box(0); } @@ -1820,12 +1820,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_17); x_94 = lean::cnstr_get(x_73, 0); -lean::inc(x_94); x_96 = lean::cnstr_get_scalar(x_73, sizeof(void*)*1); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_97 = x_73; } else { + lean::inc(x_94); lean::dec(x_73); x_97 = lean::box(0); } @@ -1854,12 +1854,12 @@ lean::dec(x_0); lean::dec(x_17); lean::dec(x_19); x_108 = lean::cnstr_get(x_20, 0); -lean::inc(x_108); x_110 = lean::cnstr_get_scalar(x_20, sizeof(void*)*1); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); + lean::cnstr_set(x_20, 0, lean::box(0)); x_111 = x_20; } else { + lean::inc(x_108); lean::dec(x_20); x_111 = lean::box(0); } @@ -1888,14 +1888,14 @@ x_7 = lean::box(0); lean::inc(x_0); x_9 = l_list_mfoldl___main___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__2(x_0, x_7, x_1, x_2, x_3, x_4, x_5, x_6); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -1903,17 +1903,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_21 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_10); x_21 = lean::box(0); } @@ -1943,12 +1943,12 @@ else obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_0); x_29 = lean::cnstr_get(x_10, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_32 = x_10; } else { + lean::inc(x_29); lean::dec(x_10); x_32 = lean::box(0); } @@ -3450,14 +3450,14 @@ lean::inc(x_6); lean::inc(x_4); x_13 = l_lean_parser_token(x_4, x_6, x_7); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -3468,17 +3468,17 @@ if (lean::obj_tag(x_14) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_27; obj* x_28; x_21 = lean::cnstr_get(x_14, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_14, 1); -lean::inc(x_23); x_25 = lean::cnstr_get(x_14, 2); -lean::inc(x_25); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); - lean::cnstr_release(x_14, 2); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); + lean::cnstr_set(x_14, 2, lean::box(0)); x_27 = x_14; } else { + lean::inc(x_21); + lean::inc(x_23); + lean::inc(x_25); lean::dec(x_14); x_27 = lean::box(0); } @@ -3502,14 +3502,14 @@ lean::cnstr_set(x_38, 0, x_6); x_39 = lean::box(0); x_40 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_33, x_2, x_38, x_39, x_4, x_23, x_16); x_41 = lean::cnstr_get(x_40, 0); -lean::inc(x_41); x_43 = lean::cnstr_get(x_40, 1); -lean::inc(x_43); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); - lean::cnstr_release(x_40, 1); + lean::cnstr_set(x_40, 0, lean::box(0)); + lean::cnstr_set(x_40, 1, lean::box(0)); x_45 = x_40; } else { + lean::inc(x_41); + lean::inc(x_43); lean::dec(x_40); x_45 = lean::box(0); } @@ -3550,12 +3550,12 @@ obj* x_61; uint8 x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; obj* x_68; ob lean::dec(x_27); lean::dec(x_21); x_61 = lean::cnstr_get(x_41, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_41, sizeof(void*)*1); if (lean::is_exclusive(x_41)) { - lean::cnstr_release(x_41, 0); + lean::cnstr_set(x_41, 0, lean::box(0)); x_64 = x_41; } else { + lean::inc(x_61); lean::dec(x_41); x_64 = lean::box(0); } @@ -3666,12 +3666,12 @@ lean::dec(x_6); lean::dec(x_0); lean::dec(x_2); x_112 = lean::cnstr_get(x_14, 0); -lean::inc(x_112); x_114 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_115 = x_14; } else { + lean::inc(x_112); lean::dec(x_14); x_115 = lean::box(0); } @@ -4685,14 +4685,14 @@ lean::dec(x_0); lean::inc(x_3); x_9 = l_lean_parser_monad__parsec_take__while___at_lean_parser_command_notation__spec_quoted__symbol_parser___spec__1___rarg(x_3, x_4); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -4700,15 +4700,15 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 2); -lean::inc(x_17); if (lean::is_exclusive(x_10)) { lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_19 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_10); x_19 = lean::box(0); } @@ -4740,12 +4740,12 @@ else obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_3); x_29 = lean::cnstr_get(x_10, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_32 = x_10; } else { + lean::inc(x_29); lean::dec(x_10); x_32 = lean::box(0); } @@ -5016,11 +5016,11 @@ else { obj* x_66; obj* x_68; obj* x_69; x_66 = lean::cnstr_get(x_63, 0); -lean::inc(x_66); if (lean::is_exclusive(x_63)) { - lean::cnstr_release(x_63, 0); + lean::cnstr_set(x_63, 0, lean::box(0)); x_68 = x_63; } else { + lean::inc(x_66); lean::dec(x_63); x_68 = lean::box(0); } @@ -5104,11 +5104,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_92, 0); -lean::inc(x_95); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_97 = x_92; } else { + lean::inc(x_95); lean::dec(x_92); x_97 = lean::box(0); } @@ -5424,11 +5424,11 @@ else { obj* x_79; obj* x_81; obj* x_82; x_79 = lean::cnstr_get(x_76, 0); -lean::inc(x_79); if (lean::is_exclusive(x_76)) { - lean::cnstr_release(x_76, 0); + lean::cnstr_set(x_76, 0, lean::box(0)); x_81 = x_76; } else { + lean::inc(x_79); lean::dec(x_76); x_81 = lean::box(0); } @@ -5512,11 +5512,11 @@ else { obj* x_108; obj* x_110; obj* x_111; x_108 = lean::cnstr_get(x_105, 0); -lean::inc(x_108); if (lean::is_exclusive(x_105)) { - lean::cnstr_release(x_105, 0); + lean::cnstr_set(x_105, 0, lean::box(0)); x_110 = x_105; } else { + lean::inc(x_108); lean::dec(x_105); x_110 = lean::box(0); } @@ -5818,14 +5818,14 @@ lean::inc(x_3); lean::inc(x_2); x_10 = lean::apply_5(x_0, x_2, x_3, x_4, x_5, x_6); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -5863,12 +5863,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_35 = lean::cnstr_get(x_11, 0); -lean::inc(x_35); x_37 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_38 = x_11; } else { + lean::inc(x_35); lean::dec(x_11); x_38 = lean::box(0); } @@ -5910,14 +5910,14 @@ lean::dec(x_1); lean::inc(x_4); x_9 = l_lean_parser_whitespace(x_2, x_4, x_5); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -5925,15 +5925,15 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 2); -lean::inc(x_17); if (lean::is_exclusive(x_10)) { lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_19 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_10); x_19 = lean::box(0); } @@ -5957,17 +5957,17 @@ if (lean::obj_tag(x_26) == 0) { obj* x_27; obj* x_29; obj* x_31; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_26, 1); -lean::inc(x_29); x_31 = lean::cnstr_get(x_26, 2); -lean::inc(x_31); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); - lean::cnstr_release(x_26, 2); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); + lean::cnstr_set(x_26, 2, lean::box(0)); x_33 = x_26; } else { + lean::inc(x_27); + lean::inc(x_29); + lean::inc(x_31); lean::dec(x_26); x_33 = lean::box(0); } @@ -5995,12 +5995,12 @@ else obj* x_39; uint8 x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; lean::dec(x_0); x_39 = lean::cnstr_get(x_26, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_26, sizeof(void*)*1); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); + lean::cnstr_set(x_26, 0, lean::box(0)); x_42 = x_26; } else { + lean::inc(x_39); lean::dec(x_26); x_42 = lean::box(0); } @@ -6027,12 +6027,12 @@ else obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; lean::dec(x_4); x_47 = lean::cnstr_get(x_10, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_50 = x_10; } else { + lean::inc(x_47); lean::dec(x_10); x_50 = lean::box(0); } @@ -6050,17 +6050,17 @@ if (lean::obj_tag(x_54) == 0) { obj* x_55; obj* x_57; obj* x_59; obj* x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; x_55 = lean::cnstr_get(x_54, 0); -lean::inc(x_55); x_57 = lean::cnstr_get(x_54, 1); -lean::inc(x_57); x_59 = lean::cnstr_get(x_54, 2); -lean::inc(x_59); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); - lean::cnstr_release(x_54, 1); - lean::cnstr_release(x_54, 2); + lean::cnstr_set(x_54, 0, lean::box(0)); + lean::cnstr_set(x_54, 1, lean::box(0)); + lean::cnstr_set(x_54, 2, lean::box(0)); x_61 = x_54; } else { + lean::inc(x_55); + lean::inc(x_57); + lean::inc(x_59); lean::dec(x_54); x_61 = lean::box(0); } @@ -6088,12 +6088,12 @@ else obj* x_67; uint8 x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; lean::dec(x_0); x_67 = lean::cnstr_get(x_54, 0); -lean::inc(x_67); x_69 = lean::cnstr_get_scalar(x_54, sizeof(void*)*1); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_70 = x_54; } else { + lean::inc(x_67); lean::dec(x_54); x_70 = lean::box(0); } @@ -6135,17 +6135,17 @@ if (lean::obj_tag(x_15) == 0) { obj* x_20; obj* x_22; obj* x_24; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; x_20 = lean::cnstr_get(x_15, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_15, 1); -lean::inc(x_22); x_24 = lean::cnstr_get(x_15, 2); -lean::inc(x_24); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); - lean::cnstr_release(x_15, 2); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); + lean::cnstr_set(x_15, 2, lean::box(0)); x_26 = x_15; } else { + lean::inc(x_20); + lean::inc(x_22); + lean::inc(x_24); lean::dec(x_15); x_26 = lean::box(0); } @@ -6169,12 +6169,12 @@ else { obj* x_31; uint8 x_33; obj* x_34; obj* x_35; obj* x_36; x_31 = lean::cnstr_get(x_15, 0); -lean::inc(x_31); x_33 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_34 = x_15; } else { + lean::inc(x_31); lean::dec(x_15); x_34 = lean::box(0); } @@ -6195,12 +6195,12 @@ else { obj* x_37; uint8 x_39; obj* x_40; obj* x_41; obj* x_43; obj* x_45; obj* x_47; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; obj* x_55; x_37 = lean::cnstr_get(x_15, 0); -lean::inc(x_37); x_39 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_40 = x_15; } else { + lean::inc(x_37); lean::dec(x_15); x_40 = lean::box(0); } @@ -6264,17 +6264,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_61; obj* x_63; obj* x_65; obj* x_67; x_61 = lean::cnstr_get(x_6, 0); -lean::inc(x_61); x_63 = lean::cnstr_get(x_6, 1); -lean::inc(x_63); x_65 = lean::cnstr_get(x_6, 2); -lean::inc(x_65); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_67 = x_6; } else { + lean::inc(x_61); + lean::inc(x_63); + lean::inc(x_65); lean::dec(x_6); x_67 = lean::box(0); } @@ -6329,12 +6329,12 @@ else { obj* x_84; uint8 x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; x_84 = lean::cnstr_get(x_6, 0); -lean::inc(x_84); x_86 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_87 = x_6; } else { + lean::inc(x_84); lean::dec(x_6); x_87 = lean::box(0); } @@ -6431,14 +6431,14 @@ obj* x_7; obj* x_8; obj* x_9; obj* x_11; obj* x_13; x_7 = l_lean_parser_command_notation__spec_symbol__quote_parser_lean_parser_has__view___lambda__1___closed__1; x_8 = l_lean_parser_monad__parsec_str__core___at_lean_parser_command_notation__spec_symbol__quote_parser_lean_parser_has__tokens___spec__4(x_7, x_0, x_2, x_3, x_4, x_5, x_6); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -6446,15 +6446,15 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; x_14 = lean::cnstr_get(x_9, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 2); -lean::inc(x_16); if (lean::is_exclusive(x_9)) { lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_18 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_9); x_18 = lean::box(0); } @@ -6484,12 +6484,12 @@ else obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; lean::dec(x_1); x_26 = lean::cnstr_get(x_9, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_29 = x_9; } else { + lean::inc(x_26); lean::dec(x_9); x_29 = lean::box(0); } @@ -6522,14 +6522,14 @@ lean::inc(x_3); lean::inc(x_2); x_11 = l_lean_parser_monad__parsec_str__core___at_lean_parser_command_notation__spec_symbol__quote_parser_lean_parser_has__tokens___spec__4(x_7, x_0, x_2, x_3, x_4, x_5, x_6); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -6569,12 +6569,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_38 = lean::cnstr_get(x_12, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_41 = x_12; } else { + lean::inc(x_38); lean::dec(x_12); x_41 = lean::box(0); } @@ -6726,14 +6726,14 @@ lean::inc(x_3); lean::inc(x_1); x_7 = l_lean_parser_token(x_1, x_3, x_4); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -6741,17 +6741,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -6839,12 +6839,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_61 = lean::cnstr_get(x_8, 0); -lean::inc(x_61); x_63 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_64 = x_8; } else { + lean::inc(x_61); lean::dec(x_8); x_64 = lean::box(0); } @@ -9362,14 +9362,14 @@ lean::inc(x_3); lean::inc(x_2); x_11 = lean::apply_5(x_0, x_2, x_3, x_4, x_5, x_6); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -9516,14 +9516,14 @@ lean::inc(x_2); lean::inc(x_0); x_7 = l_lean_parser_token(x_0, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -9531,17 +9531,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -9625,12 +9625,12 @@ obj* x_57; uint8 x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; ob lean::dec(x_0); lean::dec(x_2); x_57 = lean::cnstr_get(x_8, 0); -lean::inc(x_57); x_59 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_60 = x_8; } else { + lean::inc(x_57); lean::dec(x_8); x_60 = lean::box(0); } @@ -10037,11 +10037,11 @@ else { obj* x_36; obj* x_38; obj* x_39; x_36 = lean::cnstr_get(x_34, 0); -lean::inc(x_36); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_38 = x_34; } else { + lean::inc(x_36); lean::dec(x_34); x_38 = lean::box(0); } @@ -10607,11 +10607,11 @@ else { obj* x_74; obj* x_76; obj* x_77; x_74 = lean::cnstr_get(x_72, 0); -lean::inc(x_74); if (lean::is_exclusive(x_72)) { - lean::cnstr_release(x_72, 0); + lean::cnstr_set(x_72, 0, lean::box(0)); x_76 = x_72; } else { + lean::inc(x_74); lean::dec(x_72); x_76 = lean::box(0); } @@ -11922,14 +11922,14 @@ x_5 = l_lean_parser_command_notation__spec_precedence__term; x_6 = l_lean_parser_command_notation__spec_precedence__term_parser___closed__1; x_7 = l_lean_parser_combinators_node___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__1(x_5, x_6, x_0, x_1, x_2, x_3, x_4); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -11951,14 +11951,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = l_lean_parser_no__kind; x_7 = l_lean_parser_combinators_node___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__1(x_6, x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -12271,11 +12271,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_6, 0); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -12354,11 +12354,11 @@ else { obj* x_41; obj* x_43; obj* x_44; x_41 = lean::cnstr_get(x_38, 0); -lean::inc(x_41); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_43 = x_38; } else { + lean::inc(x_41); lean::dec(x_38); x_43 = lean::box(0); } @@ -12481,11 +12481,11 @@ else { obj* x_22; obj* x_24; obj* x_25; x_22 = lean::cnstr_get(x_19, 0); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -12564,11 +12564,11 @@ else { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_51, 0); -lean::inc(x_54); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); + lean::cnstr_set(x_51, 0, lean::box(0)); x_56 = x_51; } else { + lean::inc(x_54); lean::dec(x_51); x_56 = lean::box(0); } @@ -12746,11 +12746,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_6, 0); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -12829,11 +12829,11 @@ else { obj* x_41; obj* x_43; obj* x_44; x_41 = lean::cnstr_get(x_38, 0); -lean::inc(x_41); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_43 = x_38; } else { + lean::inc(x_41); lean::dec(x_38); x_43 = lean::box(0); } @@ -12956,11 +12956,11 @@ else { obj* x_22; obj* x_24; obj* x_25; x_22 = lean::cnstr_get(x_19, 0); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -13039,11 +13039,11 @@ else { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_51, 0); -lean::inc(x_54); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); + lean::cnstr_set(x_51, 0, lean::box(0)); x_56 = x_51; } else { + lean::inc(x_54); lean::dec(x_51); x_56 = lean::box(0); } @@ -13258,11 +13258,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -13369,11 +13369,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -13452,11 +13452,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -13558,11 +13558,11 @@ else { obj* x_82; obj* x_84; obj* x_85; x_82 = lean::cnstr_get(x_80, 0); -lean::inc(x_82); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_84 = x_80; } else { + lean::inc(x_82); lean::dec(x_80); x_84 = lean::box(0); } @@ -13689,11 +13689,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -13772,11 +13772,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -13878,11 +13878,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_93, 0); -lean::inc(x_95); if (lean::is_exclusive(x_93)) { - lean::cnstr_release(x_93, 0); + lean::cnstr_set(x_93, 0, lean::box(0)); x_97 = x_93; } else { + lean::inc(x_95); lean::dec(x_93); x_97 = lean::box(0); } @@ -14651,11 +14651,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -14734,11 +14734,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -14867,11 +14867,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -14950,11 +14950,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -15463,11 +15463,11 @@ else { obj* x_43; obj* x_45; obj* x_46; x_43 = lean::cnstr_get(x_37, 0); -lean::inc(x_43); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); + lean::cnstr_set(x_37, 0, lean::box(0)); x_45 = x_37; } else { + lean::inc(x_43); lean::dec(x_37); x_45 = lean::box(0); } @@ -15732,11 +15732,11 @@ else { obj* x_56; obj* x_58; obj* x_59; x_56 = lean::cnstr_get(x_50, 0); -lean::inc(x_56); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_58 = x_50; } else { + lean::inc(x_56); lean::dec(x_50); x_58 = lean::box(0); } @@ -15983,12 +15983,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_36; obj* x_39; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_46; obj* x_47; obj* x_48; x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_21, sizeof(void*)*1); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_29 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_29 = lean::box(0); } @@ -16058,17 +16058,17 @@ if (lean::obj_tag(x_13) == 0) { obj* x_54; obj* x_56; obj* x_58; obj* x_60; obj* x_61; obj* x_64; obj* x_65; obj* x_67; obj* x_69; x_54 = lean::cnstr_get(x_13, 0); -lean::inc(x_54); x_56 = lean::cnstr_get(x_13, 1); -lean::inc(x_56); x_58 = lean::cnstr_get(x_13, 2); -lean::inc(x_58); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); - lean::cnstr_release(x_13, 2); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); + lean::cnstr_set(x_13, 2, lean::box(0)); x_60 = x_13; } else { + lean::inc(x_54); + lean::inc(x_56); + lean::inc(x_58); lean::dec(x_13); x_60 = lean::box(0); } @@ -16079,14 +16079,14 @@ lean::inc(x_56); lean::inc(x_61); x_64 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_command_notation__spec_parser_lean_parser_has__tokens___spec__3(x_0, x_61, x_11, x_3, x_4, x_5, x_56, x_14); x_65 = lean::cnstr_get(x_64, 0); -lean::inc(x_65); x_67 = lean::cnstr_get(x_64, 1); -lean::inc(x_67); if (lean::is_exclusive(x_64)) { - lean::cnstr_release(x_64, 0); - lean::cnstr_release(x_64, 1); + lean::cnstr_set(x_64, 0, lean::box(0)); + lean::cnstr_set(x_64, 1, lean::box(0)); x_69 = x_64; } else { + lean::inc(x_65); + lean::inc(x_67); lean::dec(x_64); x_69 = lean::box(0); } @@ -16175,12 +16175,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_11); x_103 = lean::cnstr_get(x_13, 0); -lean::inc(x_103); x_105 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_106 = x_13; } else { + lean::inc(x_103); lean::dec(x_13); x_106 = lean::box(0); } @@ -16224,14 +16224,14 @@ x_9 = lean::nat_add(x_6, x_8); lean::dec(x_6); x_11 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_command_notation__spec_parser_lean_parser_has__tokens___spec__3(x_0, x_7, x_9, x_1, x_2, x_3, x_4, x_5); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -16254,14 +16254,14 @@ obj* x_7; obj* x_8; obj* x_10; obj* x_12; lean::inc(x_4); x_7 = l_lean_parser_combinators_many1___at_lean_parser_command_notation__spec_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -16449,11 +16449,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } @@ -16882,11 +16882,11 @@ else { obj* x_47; obj* x_49; obj* x_50; x_47 = lean::cnstr_get(x_45, 0); -lean::inc(x_47); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_49 = x_45; } else { + lean::inc(x_47); lean::dec(x_45); x_49 = lean::box(0); } @@ -19108,11 +19108,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_7, 0); -lean::inc(x_9); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_11 = x_7; } else { + lean::inc(x_9); lean::dec(x_7); x_11 = lean::box(0); } @@ -19514,11 +19514,11 @@ else { obj* x_47; obj* x_49; obj* x_50; x_47 = lean::cnstr_get(x_45, 0); -lean::inc(x_47); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_49 = x_45; } else { + lean::inc(x_47); lean::dec(x_45); x_49 = lean::box(0); } diff --git a/src/boot/init/lean/parser/parsec.cpp b/src/boot/init/lean/parser/parsec.cpp index 900edbe99f..2ce0624d27 100644 --- a/src/boot/init/lean/parser/parsec.cpp +++ b/src/boot/init/lean/parser/parsec.cpp @@ -1143,15 +1143,15 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); lean::cnstr_release(x_1, 2); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -1169,11 +1169,11 @@ else { obj* x_8; obj* x_10; uint8 x_11; obj* x_12; obj* x_13; x_8 = lean::cnstr_get(x_1, 0); -lean::inc(x_8); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_10 = x_1; } else { + lean::inc(x_8); lean::dec(x_1); x_10 = lean::box(0); } @@ -1193,11 +1193,11 @@ else { obj* x_14; obj* x_16; x_14 = lean::cnstr_get(x_0, 0); -lean::inc(x_14); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_16 = x_0; } else { + lean::inc(x_14); lean::dec(x_0); x_16 = lean::box(0); } @@ -1328,12 +1328,12 @@ else obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_30; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_1); x_23 = lean::cnstr_get(x_2, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_26 = x_2; } else { + lean::inc(x_23); lean::dec(x_2); x_26 = lean::box(0); } @@ -1389,17 +1389,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_13; obj* x_15; obj* x_18; obj* x_19; obj* x_20; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -1435,12 +1435,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_35; obj* x_38; obj* x_39; obj* x_40; lean::dec(x_1); x_28 = lean::cnstr_get(x_2, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_31 = x_2; } else { + lean::inc(x_28); lean::dec(x_2); x_31 = lean::box(0); } @@ -1486,15 +1486,15 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_11; obj* x_13; obj* x_16; obj* x_17; obj* x_20; obj* x_21; obj* x_22; obj* x_23; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 2); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -1529,12 +1529,12 @@ else obj* x_25; uint8 x_27; obj* x_28; obj* x_29; obj* x_32; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_1); x_25 = lean::cnstr_get(x_2, 0); -lean::inc(x_25); x_27 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_28 = x_2; } else { + lean::inc(x_25); lean::dec(x_2); x_28 = lean::box(0); } @@ -1600,17 +1600,17 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_3, 2); -lean::inc(x_8); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_10 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_3); x_10 = lean::box(0); } @@ -1639,12 +1639,12 @@ obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_29; obj* x_30; obj* x_31; lean::dec(x_0); lean::dec(x_2); x_22 = lean::cnstr_get(x_3, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_25 = x_3; } else { + lean::inc(x_22); lean::dec(x_3); x_25 = lean::box(0); } @@ -1703,12 +1703,12 @@ obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_34; obj* x_37; obj* x_38; ob lean::dec(x_1); lean::dec(x_2); x_27 = lean::cnstr_get(x_3, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_30 = x_3; } else { + lean::inc(x_27); lean::dec(x_3); x_30 = lean::box(0); } @@ -1756,15 +1756,15 @@ if (lean::obj_tag(x_3) == 0) { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_13; obj* x_14; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_3, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 2); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); - lean::cnstr_release(x_3, 2); + lean::cnstr_set(x_3, 1, lean::box(0)); + lean::cnstr_set(x_3, 2, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -1792,12 +1792,12 @@ obj* x_19; uint8 x_21; obj* x_22; obj* x_23; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_1); lean::dec(x_2); x_19 = lean::cnstr_get(x_3, 0); -lean::inc(x_19); x_21 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_22 = x_3; } else { + lean::inc(x_19); lean::dec(x_3); x_22 = lean::box(0); } @@ -1856,12 +1856,12 @@ obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_34; obj* x_37; obj* x_38; ob lean::dec(x_1); lean::dec(x_2); x_27 = lean::cnstr_get(x_3, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_30 = x_3; } else { + lean::inc(x_27); lean::dec(x_3); x_30 = lean::box(0); } @@ -1933,12 +1933,12 @@ else obj* x_21; uint8 x_23; obj* x_24; obj* x_25; obj* x_28; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_1); x_21 = lean::cnstr_get(x_2, 0); -lean::inc(x_21); x_23 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_24 = x_2; } else { + lean::inc(x_21); lean::dec(x_2); x_24 = lean::box(0); } @@ -2121,12 +2121,12 @@ else { obj* x_10; uint8 x_12; obj* x_13; x_10 = lean::cnstr_get(x_2, 0); -lean::inc(x_10); x_12 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_13 = x_2; } else { + lean::inc(x_10); lean::dec(x_2); x_13 = lean::box(0); } @@ -2462,11 +2462,11 @@ else { obj* x_1; obj* x_3; uint8 x_4; obj* x_5; obj* x_6; x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_3 = x_0; } else { + lean::inc(x_1); lean::dec(x_0); x_3 = lean::box(0); } @@ -2556,11 +2556,11 @@ else obj* x_12; obj* x_14; obj* x_15; obj* x_18; obj* x_19; obj* x_20; lean::dec(x_1); x_12 = lean::cnstr_get(x_6, 0); -lean::inc(x_12); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_14 = x_6; } else { + lean::inc(x_12); lean::dec(x_6); x_14 = lean::box(0); } @@ -2816,13 +2816,13 @@ if (lean::obj_tag(x_2) == 0) { obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; x_9 = lean::cnstr_get(x_2, 0); -lean::inc(x_9); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); lean::cnstr_release(x_2, 1); lean::cnstr_release(x_2, 2); x_11 = x_2; } else { + lean::inc(x_9); lean::dec(x_2); x_11 = lean::box(0); } @@ -8324,17 +8324,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_15; obj* x_18; obj* x_19; obj* x_20; uint8 x_21; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -8395,12 +8395,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_46 = lean::cnstr_get(x_4, 0); -lean::inc(x_46); x_48 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_49 = x_4; } else { + lean::inc(x_46); lean::dec(x_4); x_49 = lean::box(0); } @@ -8517,12 +8517,12 @@ else obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_31; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_1); x_24 = lean::cnstr_get(x_2, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_27 = x_2; } else { + lean::inc(x_24); lean::dec(x_2); x_27 = lean::box(0); } @@ -8616,17 +8616,17 @@ if (lean::obj_tag(x_1) == 0) { obj* x_2; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_12; obj* x_14; obj* x_17; obj* x_18; obj* x_19; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 2); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); - lean::cnstr_release(x_1, 2); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); + lean::cnstr_set(x_1, 2, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -8662,12 +8662,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_33; obj* x_36; obj* x_37; obj* x_38; x_26 = lean::cnstr_get(x_1, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_1, sizeof(void*)*1); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_29 = x_1; } else { + lean::inc(x_26); lean::dec(x_1); x_29 = lean::box(0); } @@ -8697,17 +8697,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_4, 2); -lean::inc(x_9); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_11 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_4); x_11 = lean::box(0); } @@ -8733,12 +8733,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); x_20 = lean::cnstr_get(x_4, 0); -lean::inc(x_20); x_22 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_23 = x_4; } else { + lean::inc(x_20); lean::dec(x_4); x_23 = lean::box(0); } @@ -8762,17 +8762,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_13; obj* x_15; obj* x_18; obj* x_19; obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_29; obj* x_30; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -8816,12 +8816,12 @@ else obj* x_32; uint8 x_34; obj* x_35; obj* x_36; obj* x_39; obj* x_42; obj* x_43; obj* x_44; lean::dec(x_1); x_32 = lean::cnstr_get(x_2, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_35 = x_2; } else { + lean::inc(x_32); lean::dec(x_2); x_35 = lean::box(0); } diff --git a/src/boot/init/lean/parser/syntax.cpp b/src/boot/init/lean/parser/syntax.cpp index 9c2748ed3d..a12ccfe6da 100644 --- a/src/boot/init/lean/parser/syntax.cpp +++ b/src/boot/init/lean/parser/syntax.cpp @@ -269,14 +269,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -342,11 +342,11 @@ case 1: { obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_13; obj* x_16; obj* x_17; obj* x_18; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_4 = x_1; } else { + lean::inc(x_2); lean::dec(x_1); x_4 = lean::box(0); } @@ -380,11 +380,11 @@ case 2: { obj* x_19; obj* x_21; obj* x_22; obj* x_24; obj* x_26; obj* x_29; obj* x_30; obj* x_31; x_19 = lean::cnstr_get(x_1, 0); -lean::inc(x_19); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_21 = x_1; } else { + lean::inc(x_19); lean::dec(x_1); x_21 = lean::box(0); } @@ -452,14 +452,14 @@ else { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_11; obj* x_12; obj* x_13; x_4 = lean::cnstr_get(x_1, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_1, 1); -lean::inc(x_6); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_8 = x_1; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_1); x_8 = lean::box(0); } @@ -881,14 +881,14 @@ else { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -981,23 +981,23 @@ case 0: { obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_4 = x_0; } else { + lean::inc(x_2); lean::dec(x_0); x_4 = lean::box(0); } x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -1017,11 +1017,11 @@ else { obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_22; obj* x_25; obj* x_26; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; x_15 = lean::cnstr_get(x_5, 0); -lean::inc(x_15); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_17 = x_5; } else { + lean::inc(x_15); lean::dec(x_5); x_17 = lean::box(0); } @@ -1075,32 +1075,32 @@ case 1: { obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_46; obj* x_48; obj* x_50; x_37 = lean::cnstr_get(x_0, 0); -lean::inc(x_37); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_39 = x_0; } else { + lean::inc(x_37); lean::dec(x_0); x_39 = lean::box(0); } x_40 = lean::cnstr_get(x_37, 0); -lean::inc(x_40); x_42 = lean::cnstr_get(x_37, 1); -lean::inc(x_42); x_44 = lean::cnstr_get(x_37, 2); -lean::inc(x_44); x_46 = lean::cnstr_get(x_37, 3); -lean::inc(x_46); x_48 = lean::cnstr_get(x_37, 4); -lean::inc(x_48); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); - lean::cnstr_release(x_37, 1); - lean::cnstr_release(x_37, 2); - lean::cnstr_release(x_37, 3); - lean::cnstr_release(x_37, 4); + lean::cnstr_set(x_37, 0, lean::box(0)); + lean::cnstr_set(x_37, 1, lean::box(0)); + lean::cnstr_set(x_37, 2, lean::box(0)); + lean::cnstr_set(x_37, 3, lean::box(0)); + lean::cnstr_set(x_37, 4, lean::box(0)); x_50 = x_37; } else { + lean::inc(x_40); + lean::inc(x_42); + lean::inc(x_44); + lean::inc(x_46); + lean::inc(x_48); lean::dec(x_37); x_50 = lean::box(0); } @@ -1123,11 +1123,11 @@ else { obj* x_59; obj* x_61; obj* x_62; obj* x_64; obj* x_66; obj* x_69; obj* x_70; obj* x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; x_59 = lean::cnstr_get(x_40, 0); -lean::inc(x_59); if (lean::is_exclusive(x_40)) { - lean::cnstr_release(x_40, 0); + lean::cnstr_set(x_40, 0, lean::box(0)); x_61 = x_40; } else { + lean::inc(x_59); lean::dec(x_40); x_61 = lean::box(0); } @@ -1226,28 +1226,28 @@ else { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_20; obj* x_23; obj* x_24; x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_1, 1); -lean::inc(x_7); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_9 = x_1; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_1); x_9 = lean::box(0); } lean::inc(x_0); x_11 = l_lean_parser_syntax_mreplace___main___at_lean_parser_syntax_update__leading___spec__1(x_0, x_5, x_2); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -1288,14 +1288,14 @@ lean::inc(x_5); lean::inc(x_0); x_8 = lean::apply_2(x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -1363,14 +1363,14 @@ lean::dec(x_3); lean::inc(x_1); x_39 = lean::apply_2(x_0, x_1, x_2); x_40 = lean::cnstr_get(x_39, 0); -lean::inc(x_40); x_42 = lean::cnstr_get(x_39, 1); -lean::inc(x_42); if (lean::is_exclusive(x_39)) { - lean::cnstr_release(x_39, 0); - lean::cnstr_release(x_39, 1); + lean::cnstr_set(x_39, 0, lean::box(0)); + lean::cnstr_set(x_39, 1, lean::box(0)); x_44 = x_39; } else { + lean::inc(x_40); + lean::inc(x_42); lean::dec(x_39); x_44 = lean::box(0); } @@ -1498,11 +1498,11 @@ else { obj* x_3; obj* x_5; obj* x_6; obj* x_9; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -1643,11 +1643,11 @@ else { obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; obj* x_24; x_10 = lean::cnstr_get(x_4, 0); -lean::inc(x_10); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_12 = x_4; } else { + lean::inc(x_10); lean::dec(x_4); x_12 = lean::box(0); } @@ -1694,11 +1694,11 @@ else { obj* x_35; obj* x_37; obj* x_38; obj* x_40; obj* x_41; obj* x_42; obj* x_44; obj* x_47; obj* x_48; obj* x_50; x_35 = lean::cnstr_get(x_28, 0); -lean::inc(x_35); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); + lean::cnstr_set(x_28, 0, lean::box(0)); x_37 = x_28; } else { + lean::inc(x_35); lean::dec(x_28); x_37 = lean::box(0); } @@ -1777,11 +1777,11 @@ else { obj* x_77; obj* x_79; obj* x_80; x_77 = lean::cnstr_get(x_74, 0); -lean::inc(x_77); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_79 = x_74; } else { + lean::inc(x_77); lean::dec(x_74); x_79 = lean::box(0); } @@ -1859,14 +1859,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1883,11 +1883,11 @@ else { obj* x_11; obj* x_13; obj* x_14; x_11 = lean::cnstr_get(x_7, 0); -lean::inc(x_11); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_13 = x_7; } else { + lean::inc(x_11); lean::dec(x_7); x_13 = lean::box(0); } @@ -1975,14 +1975,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -2022,14 +2022,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -2538,14 +2538,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } diff --git a/src/boot/init/lean/parser/term.cpp b/src/boot/init/lean/parser/term.cpp index 4cab5badd0..9db53977b5 100644 --- a/src/boot/init/lean/parser/term.cpp +++ b/src/boot/init/lean/parser/term.cpp @@ -969,14 +969,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1005,14 +1005,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -1172,11 +1172,11 @@ else { obj* x_43; obj* x_45; obj* x_46; obj* x_49; x_43 = lean::cnstr_get(x_23, 0); -lean::inc(x_43); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_45 = x_23; } else { + lean::inc(x_43); lean::dec(x_23); x_45 = lean::box(0); } @@ -1415,11 +1415,11 @@ else { obj* x_56; obj* x_58; obj* x_59; obj* x_62; x_56 = lean::cnstr_get(x_36, 0); -lean::inc(x_56); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_58 = x_36; } else { + lean::inc(x_56); lean::dec(x_36); x_58 = lean::box(0); } @@ -1579,12 +1579,12 @@ else { obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_28; obj* x_30; obj* x_32; obj* x_35; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; x_22 = lean::cnstr_get(x_17, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_17, sizeof(void*)*1); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_25 = x_17; } else { + lean::inc(x_22); lean::dec(x_17); x_25 = lean::box(0); } @@ -1654,17 +1654,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_50; obj* x_52; obj* x_54; obj* x_56; obj* x_57; obj* x_60; obj* x_61; obj* x_63; obj* x_65; x_50 = lean::cnstr_get(x_11, 0); -lean::inc(x_50); x_52 = lean::cnstr_get(x_11, 1); -lean::inc(x_52); x_54 = lean::cnstr_get(x_11, 2); -lean::inc(x_54); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_56 = x_11; } else { + lean::inc(x_50); + lean::inc(x_52); + lean::inc(x_54); lean::dec(x_11); x_56 = lean::box(0); } @@ -1675,14 +1675,14 @@ lean::inc(x_52); lean::inc(x_57); x_60 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_ident__univ__spec_parser_lean_parser_has__tokens___spec__2(x_0, x_57, x_9, x_3, x_52, x_12); x_61 = lean::cnstr_get(x_60, 0); -lean::inc(x_61); x_63 = lean::cnstr_get(x_60, 1); -lean::inc(x_63); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); - lean::cnstr_release(x_60, 1); + lean::cnstr_set(x_60, 0, lean::box(0)); + lean::cnstr_set(x_60, 1, lean::box(0)); x_65 = x_60; } else { + lean::inc(x_61); + lean::inc(x_63); lean::dec(x_60); x_65 = lean::box(0); } @@ -1769,12 +1769,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); x_97 = lean::cnstr_get(x_11, 0); -lean::inc(x_97); x_99 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_100 = x_11; } else { + lean::inc(x_97); lean::dec(x_11); x_100 = lean::box(0); } @@ -1818,14 +1818,14 @@ x_7 = lean::nat_add(x_4, x_6); lean::dec(x_4); x_9 = l___private_init_lean_parser_combinators_1__many1__aux___main___at_lean_parser_ident__univ__spec_parser_lean_parser_has__tokens___spec__2(x_0, x_5, x_7, x_1, x_2, x_3); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -2042,11 +2042,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -2153,11 +2153,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -2236,11 +2236,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -2342,11 +2342,11 @@ else { obj* x_82; obj* x_84; obj* x_85; x_82 = lean::cnstr_get(x_80, 0); -lean::inc(x_82); if (lean::is_exclusive(x_80)) { - lean::cnstr_release(x_80, 0); + lean::cnstr_set(x_80, 0, lean::box(0)); x_84 = x_80; } else { + lean::inc(x_82); lean::dec(x_80); x_84 = lean::box(0); } @@ -2473,11 +2473,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -2556,11 +2556,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -2662,11 +2662,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_93, 0); -lean::inc(x_95); if (lean::is_exclusive(x_93)) { - lean::cnstr_release(x_93, 0); + lean::cnstr_set(x_93, 0, lean::box(0)); x_97 = x_93; } else { + lean::inc(x_95); lean::dec(x_93); x_97 = lean::box(0); } @@ -2944,14 +2944,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -3054,14 +3054,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -3576,11 +3576,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -4139,11 +4139,11 @@ else { obj* x_9; obj* x_11; obj* x_12; x_9 = lean::cnstr_get(x_6, 0); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -4222,11 +4222,11 @@ else { obj* x_41; obj* x_43; obj* x_44; x_41 = lean::cnstr_get(x_38, 0); -lean::inc(x_41); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_43 = x_38; } else { + lean::inc(x_41); lean::dec(x_38); x_43 = lean::box(0); } @@ -4349,11 +4349,11 @@ else { obj* x_22; obj* x_24; obj* x_25; x_22 = lean::cnstr_get(x_19, 0); -lean::inc(x_22); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_24 = x_19; } else { + lean::inc(x_22); lean::dec(x_19); x_24 = lean::box(0); } @@ -4432,11 +4432,11 @@ else { obj* x_54; obj* x_56; obj* x_57; x_54 = lean::cnstr_get(x_51, 0); -lean::inc(x_54); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); + lean::cnstr_set(x_51, 0, lean::box(0)); x_56 = x_51; } else { + lean::inc(x_54); lean::dec(x_51); x_56 = lean::box(0); } @@ -4734,11 +4734,11 @@ else { obj* x_44; obj* x_46; obj* x_47; x_44 = lean::cnstr_get(x_36, 0); -lean::inc(x_44); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_46 = x_36; } else { + lean::inc(x_44); lean::dec(x_36); x_46 = lean::box(0); } @@ -5016,11 +5016,11 @@ else { obj* x_57; obj* x_59; obj* x_60; x_57 = lean::cnstr_get(x_49, 0); -lean::inc(x_57); if (lean::is_exclusive(x_49)) { - lean::cnstr_release(x_49, 0); + lean::cnstr_set(x_49, 0, lean::box(0)); x_59 = x_49; } else { + lean::inc(x_57); lean::dec(x_49); x_59 = lean::box(0); } @@ -5242,17 +5242,17 @@ if (lean::obj_tag(x_27) == 0) { obj* x_32; obj* x_34; obj* x_36; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; x_32 = lean::cnstr_get(x_27, 0); -lean::inc(x_32); x_34 = lean::cnstr_get(x_27, 1); -lean::inc(x_34); x_36 = lean::cnstr_get(x_27, 2); -lean::inc(x_36); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); - lean::cnstr_release(x_27, 1); - lean::cnstr_release(x_27, 2); + lean::cnstr_set(x_27, 0, lean::box(0)); + lean::cnstr_set(x_27, 1, lean::box(0)); + lean::cnstr_set(x_27, 2, lean::box(0)); x_38 = x_27; } else { + lean::inc(x_32); + lean::inc(x_34); + lean::inc(x_36); lean::dec(x_27); x_38 = lean::box(0); } @@ -5278,12 +5278,12 @@ else { obj* x_43; uint8 x_45; obj* x_46; obj* x_47; obj* x_49; obj* x_51; obj* x_53; obj* x_56; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; x_43 = lean::cnstr_get(x_42, 0); -lean::inc(x_43); x_45 = lean::cnstr_get_scalar(x_42, sizeof(void*)*1); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_46 = x_42; } else { + lean::inc(x_43); lean::dec(x_42); x_46 = lean::box(0); } @@ -5352,12 +5352,12 @@ else { obj* x_71; uint8 x_73; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_81; obj* x_84; obj* x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; obj* x_93; x_71 = lean::cnstr_get(x_27, 0); -lean::inc(x_71); x_73 = lean::cnstr_get_scalar(x_27, sizeof(void*)*1); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_74 = x_27; } else { + lean::inc(x_71); lean::dec(x_27); x_74 = lean::box(0); } @@ -5441,17 +5441,17 @@ if (lean::obj_tag(x_105) == 0) { obj* x_111; obj* x_113; obj* x_115; obj* x_117; obj* x_118; obj* x_119; obj* x_120; obj* x_121; x_111 = lean::cnstr_get(x_105, 0); -lean::inc(x_111); x_113 = lean::cnstr_get(x_105, 1); -lean::inc(x_113); x_115 = lean::cnstr_get(x_105, 2); -lean::inc(x_115); if (lean::is_exclusive(x_105)) { - lean::cnstr_release(x_105, 0); - lean::cnstr_release(x_105, 1); - lean::cnstr_release(x_105, 2); + lean::cnstr_set(x_105, 0, lean::box(0)); + lean::cnstr_set(x_105, 1, lean::box(0)); + lean::cnstr_set(x_105, 2, lean::box(0)); x_117 = x_105; } else { + lean::inc(x_111); + lean::inc(x_113); + lean::inc(x_115); lean::dec(x_105); x_117 = lean::box(0); } @@ -5515,12 +5515,12 @@ else { obj* x_136; uint8 x_138; obj* x_139; x_136 = lean::cnstr_get(x_105, 0); -lean::inc(x_136); x_138 = lean::cnstr_get_scalar(x_105, sizeof(void*)*1); if (lean::is_exclusive(x_105)) { - lean::cnstr_release(x_105, 0); + lean::cnstr_set(x_105, 0, lean::box(0)); x_139 = x_105; } else { + lean::inc(x_136); lean::dec(x_105); x_139 = lean::box(0); } @@ -5569,17 +5569,17 @@ if (lean::obj_tag(x_16) == 0) { obj* x_151; obj* x_153; obj* x_155; obj* x_157; x_151 = lean::cnstr_get(x_16, 0); -lean::inc(x_151); x_153 = lean::cnstr_get(x_16, 1); -lean::inc(x_153); x_155 = lean::cnstr_get(x_16, 2); -lean::inc(x_155); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); - lean::cnstr_release(x_16, 2); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); + lean::cnstr_set(x_16, 2, lean::box(0)); x_157 = x_16; } else { + lean::inc(x_151); + lean::inc(x_153); + lean::inc(x_155); lean::dec(x_16); x_157 = lean::box(0); } @@ -5614,11 +5614,11 @@ else { obj* x_171; obj* x_173; obj* x_174; obj* x_175; obj* x_182; obj* x_183; obj* x_185; obj* x_188; obj* x_189; x_171 = lean::cnstr_get(x_151, 0); -lean::inc(x_171); if (lean::is_exclusive(x_151)) { - lean::cnstr_release(x_151, 0); + lean::cnstr_set(x_151, 0, lean::box(0)); x_173 = x_151; } else { + lean::inc(x_171); lean::dec(x_151); x_173 = lean::box(0); } @@ -5639,17 +5639,17 @@ if (lean::obj_tag(x_189) == 0) { obj* x_190; obj* x_192; obj* x_194; obj* x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; x_190 = lean::cnstr_get(x_189, 0); -lean::inc(x_190); x_192 = lean::cnstr_get(x_189, 1); -lean::inc(x_192); x_194 = lean::cnstr_get(x_189, 2); -lean::inc(x_194); if (lean::is_exclusive(x_189)) { - lean::cnstr_release(x_189, 0); - lean::cnstr_release(x_189, 1); - lean::cnstr_release(x_189, 2); + lean::cnstr_set(x_189, 0, lean::box(0)); + lean::cnstr_set(x_189, 1, lean::box(0)); + lean::cnstr_set(x_189, 2, lean::box(0)); x_196 = x_189; } else { + lean::inc(x_190); + lean::inc(x_192); + lean::inc(x_194); lean::dec(x_189); x_196 = lean::box(0); } @@ -5717,12 +5717,12 @@ else { obj* x_215; uint8 x_217; obj* x_218; x_215 = lean::cnstr_get(x_189, 0); -lean::inc(x_215); x_217 = lean::cnstr_get_scalar(x_189, sizeof(void*)*1); if (lean::is_exclusive(x_189)) { - lean::cnstr_release(x_189, 0); + lean::cnstr_set(x_189, 0, lean::box(0)); x_218 = x_189; } else { + lean::inc(x_215); lean::dec(x_189); x_218 = lean::box(0); } @@ -5827,14 +5827,14 @@ lean::cnstr_set(x_258, 0, x_254); lean::cnstr_set(x_258, 1, x_257); x_259 = l___private_init_lean_parser_combinators_2__sep__by__aux___main___at_lean_parser_term_paren_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_2, x_258, x_14, x_6, x_7, x_8, x_233, x_175); x_260 = lean::cnstr_get(x_259, 0); -lean::inc(x_260); x_262 = lean::cnstr_get(x_259, 1); -lean::inc(x_262); if (lean::is_exclusive(x_259)) { - lean::cnstr_release(x_259, 0); - lean::cnstr_release(x_259, 1); + lean::cnstr_set(x_259, 0, lean::box(0)); + lean::cnstr_set(x_259, 1, lean::box(0)); x_264 = x_259; } else { + lean::inc(x_260); + lean::inc(x_262); lean::dec(x_259); x_264 = lean::box(0); } @@ -5863,12 +5863,12 @@ lean::dec(x_0); lean::dec(x_171); lean::dec(x_14); x_277 = lean::cnstr_get(x_174, 0); -lean::inc(x_277); x_279 = lean::cnstr_get_scalar(x_174, sizeof(void*)*1); if (lean::is_exclusive(x_174)) { - lean::cnstr_release(x_174, 0); + lean::cnstr_set(x_174, 0, lean::box(0)); x_280 = x_174; } else { + lean::inc(x_277); lean::dec(x_174); x_280 = lean::box(0); } @@ -5900,12 +5900,12 @@ lean::dec(x_6); lean::dec(x_0); lean::dec(x_14); x_292 = lean::cnstr_get(x_16, 0); -lean::inc(x_292); x_294 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_295 = x_16; } else { + lean::inc(x_292); lean::dec(x_16); x_295 = lean::box(0); } @@ -5935,12 +5935,12 @@ else { obj* x_299; uint8 x_301; obj* x_302; obj* x_303; obj* x_305; obj* x_307; obj* x_309; obj* x_312; obj* x_314; obj* x_315; obj* x_316; obj* x_317; obj* x_318; obj* x_319; obj* x_320; obj* x_321; x_299 = lean::cnstr_get(x_19, 0); -lean::inc(x_299); x_301 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_302 = x_19; } else { + lean::inc(x_299); lean::dec(x_19); x_302 = lean::box(0); } @@ -6033,14 +6033,14 @@ lean::dec(x_8); x_13 = 1; x_14 = l___private_init_lean_parser_combinators_2__sep__by__aux___main___at_lean_parser_term_paren_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_13, x_9, x_11, x_3, x_4, x_5, x_6, x_7); x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_14, 1); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } @@ -7071,11 +7071,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -7883,11 +7883,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -8096,11 +8096,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -8909,11 +8909,11 @@ else { obj* x_35; obj* x_37; obj* x_38; x_35 = lean::cnstr_get(x_32, 0); -lean::inc(x_35); if (lean::is_exclusive(x_32)) { - lean::cnstr_release(x_32, 0); + lean::cnstr_set(x_32, 0, lean::box(0)); x_37 = x_32; } else { + lean::inc(x_35); lean::dec(x_32); x_37 = lean::box(0); } @@ -8993,11 +8993,11 @@ else { obj* x_64; obj* x_66; obj* x_67; x_64 = lean::cnstr_get(x_61, 0); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); + lean::cnstr_set(x_61, 0, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -9088,11 +9088,11 @@ else { obj* x_96; obj* x_98; obj* x_99; x_96 = lean::cnstr_get(x_90, 0); -lean::inc(x_96); if (lean::is_exclusive(x_90)) { - lean::cnstr_release(x_90, 0); + lean::cnstr_set(x_90, 0, lean::box(0)); x_98 = x_90; } else { + lean::inc(x_96); lean::dec(x_90); x_98 = lean::box(0); } @@ -9297,11 +9297,11 @@ else { obj* x_48; obj* x_50; obj* x_51; x_48 = lean::cnstr_get(x_45, 0); -lean::inc(x_48); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_50 = x_45; } else { + lean::inc(x_48); lean::dec(x_45); x_50 = lean::box(0); } @@ -9381,11 +9381,11 @@ else { obj* x_77; obj* x_79; obj* x_80; x_77 = lean::cnstr_get(x_74, 0); -lean::inc(x_77); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_79 = x_74; } else { + lean::inc(x_77); lean::dec(x_74); x_79 = lean::box(0); } @@ -9476,11 +9476,11 @@ else { obj* x_109; obj* x_111; obj* x_112; x_109 = lean::cnstr_get(x_103, 0); -lean::inc(x_109); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_111 = x_103; } else { + lean::inc(x_109); lean::dec(x_103); x_111 = lean::box(0); } @@ -14018,14 +14018,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -14128,14 +14128,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -14321,11 +14321,11 @@ else { obj* x_41; obj* x_43; obj* x_44; obj* x_47; x_41 = lean::cnstr_get(x_23, 0); -lean::inc(x_41); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_43 = x_23; } else { + lean::inc(x_41); lean::dec(x_23); x_43 = lean::box(0); } @@ -14563,11 +14563,11 @@ else { obj* x_54; obj* x_56; obj* x_57; obj* x_60; x_54 = lean::cnstr_get(x_36, 0); -lean::inc(x_54); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_56 = x_36; } else { + lean::inc(x_54); lean::dec(x_36); x_56 = lean::box(0); } @@ -18982,14 +18982,14 @@ _start: { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_14; x_6 = lean::cnstr_get(x_0, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 1); -lean::inc(x_8); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_10 = x_0; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_0); x_10 = lean::box(0); } @@ -19003,17 +19003,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 1); -lean::inc(x_19); x_21 = lean::cnstr_get(x_12, 2); -lean::inc(x_21); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_23 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_12); x_23 = lean::box(0); } @@ -19047,12 +19047,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_6); x_33 = lean::cnstr_get(x_12, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_36 = x_12; } else { + lean::inc(x_33); lean::dec(x_12); x_36 = lean::box(0); } @@ -19088,14 +19088,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -19128,17 +19128,17 @@ if (lean::obj_tag(x_16) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_27; obj* x_28; x_21 = lean::cnstr_get(x_16, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_16, 1); -lean::inc(x_23); x_25 = lean::cnstr_get(x_16, 2); -lean::inc(x_25); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); - lean::cnstr_release(x_16, 2); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); + lean::cnstr_set(x_16, 2, lean::box(0)); x_27 = x_16; } else { + lean::inc(x_21); + lean::inc(x_23); + lean::inc(x_25); lean::dec(x_16); x_27 = lean::box(0); } @@ -19279,12 +19279,12 @@ else { obj* x_79; uint8 x_81; obj* x_82; obj* x_83; obj* x_84; x_79 = lean::cnstr_get(x_16, 0); -lean::inc(x_79); x_81 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_82 = x_16; } else { + lean::inc(x_79); lean::dec(x_16); x_82 = lean::box(0); } @@ -19306,13 +19306,13 @@ if (lean::obj_tag(x_8) == 0) { obj* x_85; obj* x_87; obj* x_88; obj* x_89; obj* x_90; x_85 = lean::cnstr_get(x_8, 0); -lean::inc(x_85); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); lean::cnstr_release(x_8, 1); lean::cnstr_release(x_8, 2); x_87 = x_8; } else { + lean::inc(x_85); lean::dec(x_8); x_87 = lean::box(0); } @@ -19354,11 +19354,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_11, 0); -lean::inc(x_95); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_97 = x_11; } else { + lean::inc(x_95); lean::dec(x_11); x_97 = lean::box(0); } @@ -19533,14 +19533,14 @@ lean::inc(x_2); lean::inc(x_0); x_26 = l_list_mfoldr___main___at_lean_parser_term_bracketed__binder_parser_lean_parser_has__tokens___spec__5(x_0, x_19, x_2, x_3, x_4, x_5, x_6); x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_26, 1); -lean::inc(x_29); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); x_31 = x_26; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_26); x_31 = lean::box(0); } @@ -19579,12 +19579,12 @@ lean::dec(x_0); lean::dec(x_2); lean::dec(x_17); x_52 = lean::cnstr_get(x_27, 0); -lean::inc(x_52); x_54 = lean::cnstr_get_scalar(x_27, sizeof(void*)*1); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_55 = x_27; } else { + lean::inc(x_52); lean::dec(x_27); x_55 = lean::box(0); } @@ -19618,14 +19618,14 @@ x_8 = l_list_map___main___at_lean_parser_term_bracketed__binder_parser_lean_pars lean::inc(x_4); x_10 = l_list_mfoldr___main___at_lean_parser_term_bracketed__binder_parser_lean_parser_has__tokens___spec__5(x_4, x_8, x_1, x_2, x_3, x_4, x_5); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -19653,12 +19653,12 @@ else { obj* x_25; uint8 x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_25 = lean::cnstr_get(x_11, 0); -lean::inc(x_25); x_27 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_28 = x_11; } else { + lean::inc(x_25); lean::dec(x_11); x_28 = lean::box(0); } @@ -19692,14 +19692,14 @@ lean::inc(x_2); lean::inc(x_1); x_9 = l_lean_parser_monad__parsec_longest__match___at_lean_parser_term_bracketed__binder_parser_lean_parser_has__tokens___spec__3(x_0, x_1, x_2, x_3, x_4, x_5); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -19707,17 +19707,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_21 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_10); x_21 = lean::box(0); } @@ -19780,12 +19780,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_47 = lean::cnstr_get(x_10, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_50 = x_10; } else { + lean::inc(x_47); lean::dec(x_10); x_50 = lean::box(0); } @@ -20790,11 +20790,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -21773,11 +21773,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -21885,11 +21885,11 @@ else { obj* x_12; obj* x_14; obj* x_15; x_12 = lean::cnstr_get(x_10, 0); -lean::inc(x_12); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_14 = x_10; } else { + lean::inc(x_12); lean::dec(x_10); x_14 = lean::box(0); } @@ -21948,11 +21948,11 @@ else { obj* x_37; obj* x_39; obj* x_40; obj* x_43; obj* x_44; x_37 = lean::cnstr_get(x_5, 0); -lean::inc(x_37); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_39 = x_5; } else { + lean::inc(x_37); lean::dec(x_5); x_39 = lean::box(0); } @@ -22189,11 +22189,11 @@ else { obj* x_25; obj* x_27; obj* x_28; x_25 = lean::cnstr_get(x_23, 0); -lean::inc(x_25); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_27 = x_23; } else { + lean::inc(x_25); lean::dec(x_23); x_27 = lean::box(0); } @@ -22252,11 +22252,11 @@ else { obj* x_50; obj* x_52; obj* x_53; obj* x_56; obj* x_57; x_50 = lean::cnstr_get(x_18, 0); -lean::inc(x_50); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_52 = x_18; } else { + lean::inc(x_50); lean::dec(x_18); x_52 = lean::box(0); } @@ -24323,11 +24323,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -26974,11 +26974,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -27348,11 +27348,11 @@ else { obj* x_28; obj* x_30; obj* x_31; x_28 = lean::cnstr_get(x_24, 0); -lean::inc(x_28); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_30 = x_24; } else { + lean::inc(x_28); lean::dec(x_24); x_30 = lean::box(0); } @@ -27439,11 +27439,11 @@ else { obj* x_64; obj* x_66; obj* x_67; x_64 = lean::cnstr_get(x_60, 0); -lean::inc(x_64); if (lean::is_exclusive(x_60)) { - lean::cnstr_release(x_60, 0); + lean::cnstr_set(x_60, 0, lean::box(0)); x_66 = x_60; } else { + lean::inc(x_64); lean::dec(x_60); x_66 = lean::box(0); } @@ -27513,11 +27513,11 @@ else { obj* x_93; obj* x_95; obj* x_96; obj* x_99; obj* x_100; x_93 = lean::cnstr_get(x_22, 0); -lean::inc(x_93); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_95 = x_22; } else { + lean::inc(x_93); lean::dec(x_22); x_95 = lean::box(0); } @@ -27813,11 +27813,11 @@ else { obj* x_41; obj* x_43; obj* x_44; x_41 = lean::cnstr_get(x_37, 0); -lean::inc(x_41); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); + lean::cnstr_set(x_37, 0, lean::box(0)); x_43 = x_37; } else { + lean::inc(x_41); lean::dec(x_37); x_43 = lean::box(0); } @@ -27904,11 +27904,11 @@ else { obj* x_77; obj* x_79; obj* x_80; x_77 = lean::cnstr_get(x_73, 0); -lean::inc(x_77); if (lean::is_exclusive(x_73)) { - lean::cnstr_release(x_73, 0); + lean::cnstr_set(x_73, 0, lean::box(0)); x_79 = x_73; } else { + lean::inc(x_77); lean::dec(x_73); x_79 = lean::box(0); } @@ -27978,11 +27978,11 @@ else { obj* x_106; obj* x_108; obj* x_109; obj* x_112; obj* x_113; x_106 = lean::cnstr_get(x_35, 0); -lean::inc(x_106); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); + lean::cnstr_set(x_35, 0, lean::box(0)); x_108 = x_35; } else { + lean::inc(x_106); lean::dec(x_35); x_108 = lean::box(0); } @@ -29926,14 +29926,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = l_lean_parser_term_opt__ident; x_7 = l_lean_parser_combinators_node___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__1(x_6, x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -30068,11 +30068,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -31014,11 +31014,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_25, 0); -lean::inc(x_27); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_29 = x_25; } else { + lean::inc(x_27); lean::dec(x_25); x_29 = lean::box(0); } @@ -31390,11 +31390,11 @@ else { obj* x_40; obj* x_42; obj* x_43; x_40 = lean::cnstr_get(x_38, 0); -lean::inc(x_40); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_42 = x_38; } else { + lean::inc(x_40); lean::dec(x_38); x_42 = lean::box(0); } @@ -32667,14 +32667,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -32881,11 +32881,11 @@ else { obj* x_43; obj* x_45; obj* x_46; obj* x_49; x_43 = lean::cnstr_get(x_5, 0); -lean::inc(x_43); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_45 = x_5; } else { + lean::inc(x_43); lean::dec(x_5); x_45 = lean::box(0); } @@ -33193,11 +33193,11 @@ else { obj* x_56; obj* x_58; obj* x_59; obj* x_62; x_56 = lean::cnstr_get(x_18, 0); -lean::inc(x_56); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_58 = x_18; } else { + lean::inc(x_56); lean::dec(x_18); x_58 = lean::box(0); } @@ -33422,14 +33422,14 @@ lean::dec(x_8); x_13 = 0; x_14 = l___private_init_lean_parser_combinators_2__sep__by__aux___main___at_lean_parser_term_paren_parser_lean_parser_has__tokens___spec__2(x_0, x_1, x_2, x_13, x_9, x_11, x_3, x_4, x_5, x_6, x_7); x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_14, 1); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } @@ -33458,14 +33458,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -33578,14 +33578,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -33653,14 +33653,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -33870,11 +33870,11 @@ else { obj* x_47; obj* x_49; obj* x_50; x_47 = lean::cnstr_get(x_45, 0); -lean::inc(x_47); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_49 = x_45; } else { + lean::inc(x_47); lean::dec(x_45); x_49 = lean::box(0); } @@ -34018,11 +34018,11 @@ else { obj* x_101; obj* x_103; obj* x_104; x_101 = lean::cnstr_get(x_99, 0); -lean::inc(x_101); if (lean::is_exclusive(x_99)) { - lean::cnstr_release(x_99, 0); + lean::cnstr_set(x_99, 0, lean::box(0)); x_103 = x_99; } else { + lean::inc(x_101); lean::dec(x_99); x_103 = lean::box(0); } @@ -34321,11 +34321,11 @@ else { obj* x_60; obj* x_62; obj* x_63; x_60 = lean::cnstr_get(x_58, 0); -lean::inc(x_60); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); + lean::cnstr_set(x_58, 0, lean::box(0)); x_62 = x_58; } else { + lean::inc(x_60); lean::dec(x_58); x_62 = lean::box(0); } @@ -34469,11 +34469,11 @@ else { obj* x_114; obj* x_116; obj* x_117; x_114 = lean::cnstr_get(x_112, 0); -lean::inc(x_114); if (lean::is_exclusive(x_112)) { - lean::cnstr_release(x_112, 0); + lean::cnstr_set(x_112, 0, lean::box(0)); x_116 = x_112; } else { + lean::inc(x_114); lean::dec(x_112); x_116 = lean::box(0); } @@ -35164,11 +35164,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_25, 0); -lean::inc(x_27); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_29 = x_25; } else { + lean::inc(x_27); lean::dec(x_25); x_29 = lean::box(0); } @@ -35598,11 +35598,11 @@ else { obj* x_40; obj* x_42; obj* x_43; x_40 = lean::cnstr_get(x_38, 0); -lean::inc(x_40); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_42 = x_38; } else { + lean::inc(x_40); lean::dec(x_38); x_42 = lean::box(0); } @@ -36622,11 +36622,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -37533,11 +37533,11 @@ else { obj* x_7; obj* x_9; obj* x_10; x_7 = lean::cnstr_get(x_4, 0); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -37608,11 +37608,11 @@ else { obj* x_8; obj* x_10; obj* x_11; x_8 = lean::cnstr_get(x_6, 0); -lean::inc(x_8); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_10 = x_6; } else { + lean::inc(x_8); lean::dec(x_6); x_10 = lean::box(0); } @@ -37741,11 +37741,11 @@ else { obj* x_49; obj* x_51; obj* x_52; x_49 = lean::cnstr_get(x_46, 0); -lean::inc(x_49); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_51 = x_46; } else { + lean::inc(x_49); lean::dec(x_46); x_51 = lean::box(0); } @@ -37816,11 +37816,11 @@ else { obj* x_73; obj* x_75; obj* x_76; x_73 = lean::cnstr_get(x_70, 0); -lean::inc(x_73); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_75 = x_70; } else { + lean::inc(x_73); lean::dec(x_70); x_75 = lean::box(0); } @@ -38306,14 +38306,14 @@ else { obj* x_2; obj* x_4; obj* x_6; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -38426,14 +38426,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_9; obj* x_12; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -38626,11 +38626,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_25, 0); -lean::inc(x_27); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); + lean::cnstr_set(x_25, 0, lean::box(0)); x_29 = x_25; } else { + lean::inc(x_27); lean::dec(x_25); x_29 = lean::box(0); } @@ -38720,11 +38720,11 @@ else { obj* x_63; obj* x_65; obj* x_66; x_63 = lean::cnstr_get(x_61, 0); -lean::inc(x_63); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); + lean::cnstr_set(x_61, 0, lean::box(0)); x_65 = x_61; } else { + lean::inc(x_63); lean::dec(x_61); x_65 = lean::box(0); } @@ -38875,11 +38875,11 @@ else { obj* x_113; obj* x_115; obj* x_116; obj* x_119; x_113 = lean::cnstr_get(x_95, 0); -lean::inc(x_113); if (lean::is_exclusive(x_95)) { - lean::cnstr_release(x_95, 0); + lean::cnstr_set(x_95, 0, lean::box(0)); x_115 = x_95; } else { + lean::inc(x_113); lean::dec(x_95); x_115 = lean::box(0); } @@ -39076,11 +39076,11 @@ else { obj* x_40; obj* x_42; obj* x_43; x_40 = lean::cnstr_get(x_38, 0); -lean::inc(x_40); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_42 = x_38; } else { + lean::inc(x_40); lean::dec(x_38); x_42 = lean::box(0); } @@ -39170,11 +39170,11 @@ else { obj* x_76; obj* x_78; obj* x_79; x_76 = lean::cnstr_get(x_74, 0); -lean::inc(x_76); if (lean::is_exclusive(x_74)) { - lean::cnstr_release(x_74, 0); + lean::cnstr_set(x_74, 0, lean::box(0)); x_78 = x_74; } else { + lean::inc(x_76); lean::dec(x_74); x_78 = lean::box(0); } @@ -39325,11 +39325,11 @@ else { obj* x_126; obj* x_128; obj* x_129; obj* x_132; x_126 = lean::cnstr_get(x_108, 0); -lean::inc(x_126); if (lean::is_exclusive(x_108)) { - lean::cnstr_release(x_108, 0); + lean::cnstr_set(x_108, 0, lean::box(0)); x_128 = x_108; } else { + lean::inc(x_126); lean::dec(x_108); x_128 = lean::box(0); } @@ -39642,14 +39642,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = l_lean_parser_term_struct__inst__type; x_7 = l_lean_parser_combinators_node___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__1(x_6, x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -39671,14 +39671,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; x_6 = l_lean_parser_term_struct__inst__with; x_7 = l_lean_parser_combinators_node___at_lean_parser_command_notation__spec_precedence__lit_parser___spec__1(x_6, x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -40178,11 +40178,11 @@ else { obj* x_44; obj* x_46; obj* x_47; x_44 = lean::cnstr_get(x_42, 0); -lean::inc(x_44); if (lean::is_exclusive(x_42)) { - lean::cnstr_release(x_42, 0); + lean::cnstr_set(x_42, 0, lean::box(0)); x_46 = x_42; } else { + lean::inc(x_44); lean::dec(x_42); x_46 = lean::box(0); } @@ -40649,11 +40649,11 @@ else { obj* x_57; obj* x_59; obj* x_60; x_57 = lean::cnstr_get(x_55, 0); -lean::inc(x_57); if (lean::is_exclusive(x_55)) { - lean::cnstr_release(x_55, 0); + lean::cnstr_set(x_55, 0, lean::box(0)); x_59 = x_55; } else { + lean::inc(x_57); lean::dec(x_55); x_59 = lean::box(0); } @@ -42148,11 +42148,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -42423,14 +42423,14 @@ lean::inc(x_2); lean::inc(x_0); x_7 = l_lean_parser_token(x_0, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -42438,17 +42438,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -42522,12 +42522,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_0); lean::dec(x_2); x_55 = lean::cnstr_get(x_8, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_58 = x_8; } else { + lean::inc(x_55); lean::dec(x_8); x_58 = lean::box(0); } @@ -43029,14 +43029,14 @@ lean::inc(x_3); lean::inc(x_2); x_12 = lean::apply_6(x_0, x_2, x_3, x_4, x_5, x_6, x_7); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -43075,12 +43075,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_38 = lean::cnstr_get(x_13, 0); -lean::inc(x_38); x_40 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_41 = x_13; } else { + lean::inc(x_38); lean::dec(x_13); x_41 = lean::box(0); } @@ -43156,14 +43156,14 @@ else { obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_29; obj* x_30; obj* x_32; x_17 = lean::cnstr_get(x_2, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_2, 1); -lean::inc(x_19); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_21 = x_2; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_2); x_21 = lean::box(0); } @@ -43187,12 +43187,12 @@ else { obj* x_35; uint8 x_37; obj* x_38; x_35 = lean::cnstr_get(x_30, 0); -lean::inc(x_35); x_37 = lean::cnstr_get_scalar(x_30, sizeof(void*)*1); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_38 = x_30; } else { + lean::inc(x_35); lean::dec(x_30); x_38 = lean::box(0); } @@ -43296,17 +43296,17 @@ if (lean::obj_tag(x_22) == 0) { obj* x_66; obj* x_68; obj* x_70; obj* x_72; obj* x_73; obj* x_74; obj* x_75; obj* x_76; x_66 = lean::cnstr_get(x_22, 0); -lean::inc(x_66); x_68 = lean::cnstr_get(x_22, 1); -lean::inc(x_68); x_70 = lean::cnstr_get(x_22, 2); -lean::inc(x_70); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); - lean::cnstr_release(x_22, 1); - lean::cnstr_release(x_22, 2); + lean::cnstr_set(x_22, 0, lean::box(0)); + lean::cnstr_set(x_22, 1, lean::box(0)); + lean::cnstr_set(x_22, 2, lean::box(0)); x_72 = x_22; } else { + lean::inc(x_66); + lean::inc(x_68); + lean::inc(x_70); lean::dec(x_22); x_72 = lean::box(0); } @@ -43339,14 +43339,14 @@ lean::inc(x_81); lean::dec(x_76); x_84 = l_list_mfoldl___main___at_lean_parser_term_sort__app_parser_lean_parser_has__tokens___spec__4(x_0, x_77, x_19, x_3, x_4, x_5, x_6, x_79, x_23); x_85 = lean::cnstr_get(x_84, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_84, 1); -lean::inc(x_87); if (lean::is_exclusive(x_84)) { - lean::cnstr_release(x_84, 0); - lean::cnstr_release(x_84, 1); + lean::cnstr_set(x_84, 0, lean::box(0)); + lean::cnstr_set(x_84, 1, lean::box(0)); x_89 = x_84; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_84); x_89 = lean::box(0); } @@ -43370,12 +43370,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_19); x_98 = lean::cnstr_get(x_76, 0); -lean::inc(x_98); x_100 = lean::cnstr_get_scalar(x_76, sizeof(void*)*1); if (lean::is_exclusive(x_76)) { - lean::cnstr_release(x_76, 0); + lean::cnstr_set(x_76, 0, lean::box(0)); x_101 = x_76; } else { + lean::inc(x_98); lean::dec(x_76); x_101 = lean::box(0); } @@ -43405,12 +43405,12 @@ lean::dec(x_0); lean::dec(x_19); lean::dec(x_21); x_113 = lean::cnstr_get(x_22, 0); -lean::inc(x_113); x_115 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_116 = x_22; } else { + lean::inc(x_113); lean::dec(x_22); x_116 = lean::box(0); } @@ -43439,14 +43439,14 @@ x_8 = lean::box(0); lean::inc(x_0); x_10 = l_list_mfoldl___main___at_lean_parser_term_sort__app_parser_lean_parser_has__tokens___spec__4(x_0, x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -43454,17 +43454,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -43494,12 +43494,12 @@ else obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_0); x_30 = lean::cnstr_get(x_11, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_33 = x_11; } else { + lean::inc(x_30); lean::dec(x_11); x_33 = lean::box(0); } @@ -43657,14 +43657,14 @@ lean::inc(x_1); lean::inc(x_0); x_10 = l_lean_parser_term_get__leading(x_0, x_1, x_2, x_3, x_4, x_5); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -43672,17 +43672,17 @@ if (lean::obj_tag(x_11) == 0) { obj* x_16; obj* x_18; obj* x_20; obj* x_22; obj* x_23; uint8 x_24; uint8 x_25; x_16 = lean::cnstr_get(x_11, 0); -lean::inc(x_16); x_18 = lean::cnstr_get(x_11, 1); -lean::inc(x_18); x_20 = lean::cnstr_get(x_11, 2); -lean::inc(x_20); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); - lean::cnstr_release(x_11, 2); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); + lean::cnstr_set(x_11, 2, lean::box(0)); x_22 = x_11; } else { + lean::inc(x_16); + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_11); x_22 = lean::box(0); } @@ -43749,12 +43749,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_56 = lean::cnstr_get(x_36, 0); -lean::inc(x_56); x_58 = lean::cnstr_get_scalar(x_36, sizeof(void*)*1); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); + lean::cnstr_set(x_36, 0, lean::box(0)); x_59 = x_36; } else { + lean::inc(x_56); lean::dec(x_36); x_59 = lean::box(0); } @@ -43824,12 +43824,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_86 = lean::cnstr_get(x_66, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_66, sizeof(void*)*1); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_89 = x_66; } else { + lean::inc(x_86); lean::dec(x_66); x_89 = lean::box(0); } @@ -43861,12 +43861,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_97 = lean::cnstr_get(x_11, 0); -lean::inc(x_97); x_99 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_100 = x_11; } else { + lean::inc(x_97); lean::dec(x_11); x_100 = lean::box(0); } @@ -44114,14 +44114,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_10; obj* x_11; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); } @@ -45378,14 +45378,14 @@ lean::inc(x_2); lean::inc(x_0); x_7 = l_lean_parser_token(x_0, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -45393,17 +45393,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -45487,12 +45487,12 @@ obj* x_57; uint8 x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; ob lean::dec(x_0); lean::dec(x_2); x_57 = lean::cnstr_get(x_8, 0); -lean::inc(x_57); x_59 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_60 = x_8; } else { + lean::inc(x_57); lean::dec(x_8); x_60 = lean::box(0); } @@ -45539,14 +45539,14 @@ lean::inc(x_2); lean::inc(x_0); x_7 = l_lean_parser_token(x_0, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -45554,17 +45554,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_21; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -45638,12 +45638,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_0); lean::dec(x_2); x_55 = lean::cnstr_get(x_8, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_58 = x_8; } else { + lean::inc(x_55); lean::dec(x_8); x_58 = lean::box(0); } @@ -45732,14 +45732,14 @@ else { obj* x_13; obj* x_15; obj* x_17; obj* x_23; obj* x_24; obj* x_26; obj* x_28; obj* x_29; obj* x_30; x_13 = lean::cnstr_get(x_0, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_0, 1); -lean::inc(x_15); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_17 = x_0; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_0); x_17 = lean::box(0); } @@ -45750,14 +45750,14 @@ lean::inc(x_3); lean::inc(x_2); x_23 = lean::apply_6(x_13, x_2, x_3, x_4, x_5, x_6, x_7); x_24 = lean::cnstr_get(x_23, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_23, 1); -lean::inc(x_26); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); - lean::cnstr_release(x_23, 1); + lean::cnstr_set(x_23, 0, lean::box(0)); + lean::cnstr_set(x_23, 1, lean::box(0)); x_28 = x_23; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_23); x_28 = lean::box(0); } @@ -45767,17 +45767,17 @@ if (lean::obj_tag(x_24) == 0) { obj* x_31; obj* x_33; obj* x_35; obj* x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; obj* x_43; obj* x_44; x_31 = lean::cnstr_get(x_24, 0); -lean::inc(x_31); x_33 = lean::cnstr_get(x_24, 1); -lean::inc(x_33); x_35 = lean::cnstr_get(x_24, 2); -lean::inc(x_35); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); - lean::cnstr_release(x_24, 1); - lean::cnstr_release(x_24, 2); + lean::cnstr_set(x_24, 0, lean::box(0)); + lean::cnstr_set(x_24, 1, lean::box(0)); + lean::cnstr_set(x_24, 2, lean::box(0)); x_37 = x_24; } else { + lean::inc(x_31); + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_24); x_37 = lean::box(0); } @@ -45874,12 +45874,12 @@ obj* x_76; uint8 x_78; obj* x_79; lean::dec(x_1); lean::dec(x_17); x_76 = lean::cnstr_get(x_24, 0); -lean::inc(x_76); x_78 = lean::cnstr_get_scalar(x_24, sizeof(void*)*1); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_79 = x_24; } else { + lean::inc(x_76); lean::dec(x_24); x_79 = lean::box(0); } @@ -45941,14 +45941,14 @@ obj* x_8; obj* x_9; obj* x_10; obj* x_12; obj* x_14; x_8 = l_lean_name_to__string___closed__1; x_9 = l_lean_parser_monad__parsec_str__core___at_lean_parser_term_projection_parser_lean_parser_has__view___spec__1(x_8, x_0, x_2, x_3, x_4, x_5, x_6, x_7); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -45956,15 +45956,15 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 2); -lean::inc(x_17); if (lean::is_exclusive(x_10)) { lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_19 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_10); x_19 = lean::box(0); } @@ -45994,12 +45994,12 @@ else obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_1); x_27 = lean::cnstr_get(x_10, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_30 = x_10; } else { + lean::inc(x_27); lean::dec(x_10); x_30 = lean::box(0); } @@ -46152,14 +46152,14 @@ x_6 = l_lean_parser_term_projection; x_7 = l_lean_parser_term_projection_parser___closed__1; x_8 = l_lean_parser_combinators_node___at_lean_parser_term_sort__app_parser_lean_parser_has__tokens___spec__3(x_6, x_7, x_0, x_1, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -46320,14 +46320,14 @@ lean::dec(x_1); lean::inc(x_3); x_11 = l_lean_parser_monad__parsec_observing___at_lean_parser_peek__token___spec__2(x_3, x_5, x_6); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -46501,12 +46501,12 @@ obj* x_118; uint8 x_120; obj* x_121; obj* x_122; obj* x_123; obj* x_124; obj* x_ lean::dec(x_3); lean::dec(x_0); x_118 = lean::cnstr_get(x_94, 0); -lean::inc(x_118); x_120 = lean::cnstr_get_scalar(x_94, sizeof(void*)*1); if (lean::is_exclusive(x_94)) { - lean::cnstr_release(x_94, 0); + lean::cnstr_set(x_94, 0, lean::box(0)); x_121 = x_94; } else { + lean::inc(x_118); lean::dec(x_94); x_121 = lean::box(0); } @@ -46538,12 +46538,12 @@ obj* x_128; uint8 x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; lean::dec(x_3); lean::dec(x_0); x_128 = lean::cnstr_get(x_12, 0); -lean::inc(x_128); x_130 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_131 = x_12; } else { + lean::inc(x_128); lean::dec(x_12); x_131 = lean::box(0); } @@ -46590,17 +46590,17 @@ if (lean::obj_tag(x_17) == 0) { obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_29; x_22 = lean::cnstr_get(x_17, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_17, 1); -lean::inc(x_24); x_26 = lean::cnstr_get(x_17, 2); -lean::inc(x_26); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); - lean::cnstr_release(x_17, 1); - lean::cnstr_release(x_17, 2); + lean::cnstr_set(x_17, 0, lean::box(0)); + lean::cnstr_set(x_17, 1, lean::box(0)); + lean::cnstr_set(x_17, 2, lean::box(0)); x_28 = x_17; } else { + lean::inc(x_22); + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_17); x_28 = lean::box(0); } @@ -46741,12 +46741,12 @@ else { obj* x_80; uint8 x_82; obj* x_83; obj* x_84; obj* x_85; x_80 = lean::cnstr_get(x_17, 0); -lean::inc(x_80); x_82 = lean::cnstr_get_scalar(x_17, sizeof(void*)*1); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); + lean::cnstr_set(x_17, 0, lean::box(0)); x_83 = x_17; } else { + lean::inc(x_80); lean::dec(x_17); x_83 = lean::box(0); } @@ -46768,13 +46768,13 @@ if (lean::obj_tag(x_9) == 0) { obj* x_86; obj* x_88; obj* x_89; obj* x_90; obj* x_91; x_86 = lean::cnstr_get(x_9, 0); -lean::inc(x_86); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); lean::cnstr_release(x_9, 1); lean::cnstr_release(x_9, 2); x_88 = x_9; } else { + lean::inc(x_86); lean::dec(x_9); x_88 = lean::box(0); } @@ -46816,11 +46816,11 @@ else { obj* x_96; obj* x_98; obj* x_99; x_96 = lean::cnstr_get(x_12, 0); -lean::inc(x_96); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_98 = x_12; } else { + lean::inc(x_96); lean::dec(x_12); x_98 = lean::box(0); } @@ -46997,14 +46997,14 @@ lean::inc(x_2); lean::inc(x_0); x_29 = l_list_mfoldr___main___at___private_init_lean_parser_term_1__trailing___spec__9(x_0, x_21, x_2, x_3, x_4, x_5, x_6, x_7); x_30 = lean::cnstr_get(x_29, 0); -lean::inc(x_30); x_32 = lean::cnstr_get(x_29, 1); -lean::inc(x_32); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); - lean::cnstr_release(x_29, 1); + lean::cnstr_set(x_29, 0, lean::box(0)); + lean::cnstr_set(x_29, 1, lean::box(0)); x_34 = x_29; } else { + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_29); x_34 = lean::box(0); } @@ -47044,12 +47044,12 @@ lean::dec(x_0); lean::dec(x_2); lean::dec(x_19); x_56 = lean::cnstr_get(x_30, 0); -lean::inc(x_56); x_58 = lean::cnstr_get_scalar(x_30, sizeof(void*)*1); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_59 = x_30; } else { + lean::inc(x_56); lean::dec(x_30); x_59 = lean::box(0); } @@ -47080,14 +47080,14 @@ obj* x_8; obj* x_9; obj* x_11; obj* x_13; lean::inc(x_5); x_8 = l_list_mfoldr___main___at___private_init_lean_parser_term_1__trailing___spec__9(x_5, x_0, x_1, x_2, x_3, x_4, x_5, x_6); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -47115,12 +47115,12 @@ else { obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -47151,14 +47151,14 @@ _start: obj* x_7; obj* x_8; obj* x_10; obj* x_12; x_7 = l_lean_parser_monad__parsec_longest__match___at___private_init_lean_parser_term_1__trailing___spec__7(x_0, x_1, x_2, x_3, x_4, x_5, x_6); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -47166,17 +47166,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -47251,12 +47251,12 @@ else { obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; obj* x_50; x_44 = lean::cnstr_get(x_8, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_47 = x_8; } else { + lean::inc(x_44); lean::dec(x_8); x_47 = lean::box(0); } @@ -47290,14 +47290,14 @@ lean::inc(x_3); lean::inc(x_2); x_13 = lean::apply_6(x_0, x_2, x_3, x_4, x_5, x_6, x_7); x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_13, 1); -lean::inc(x_16); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); - lean::cnstr_release(x_13, 1); + lean::cnstr_set(x_13, 0, lean::box(0)); + lean::cnstr_set(x_13, 1, lean::box(0)); x_18 = x_13; } else { + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_13); x_18 = lean::box(0); } @@ -47519,12 +47519,12 @@ else { obj* x_44; uint8 x_46; obj* x_47; obj* x_48; obj* x_49; x_44 = lean::cnstr_get(x_21, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_21, sizeof(void*)*1); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_47 = x_21; } else { + lean::inc(x_44); lean::dec(x_21); x_47 = lean::box(0); } @@ -47573,14 +47573,14 @@ lean::inc(x_2); lean::inc(x_1); x_66 = l_lean_parser_indexed___at___private_init_lean_parser_term_1__trailing___spec__1___rarg(x_9, x_1, x_2, x_3, x_4, x_5, x_13); x_67 = lean::cnstr_get(x_66, 0); -lean::inc(x_67); x_69 = lean::cnstr_get(x_66, 1); -lean::inc(x_69); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); - lean::cnstr_release(x_66, 1); + lean::cnstr_set(x_66, 0, lean::box(0)); + lean::cnstr_set(x_66, 1, lean::box(0)); x_71 = x_66; } else { + lean::inc(x_67); + lean::inc(x_69); lean::dec(x_66); x_71 = lean::box(0); } @@ -47676,12 +47676,12 @@ else { obj* x_119; uint8 x_121; obj* x_122; x_119 = lean::cnstr_get(x_67, 0); -lean::inc(x_119); x_121 = lean::cnstr_get_scalar(x_67, sizeof(void*)*1); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_122 = x_67; } else { + lean::inc(x_119); lean::dec(x_67); x_122 = lean::box(0); } @@ -47831,14 +47831,14 @@ lean::dec(x_1); lean::inc(x_2); x_9 = l_lean_parser_monad__parsec_observing___at_lean_parser_peek__token___spec__2(x_2, x_4, x_5); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -48012,12 +48012,12 @@ obj* x_116; uint8 x_118; obj* x_119; obj* x_120; obj* x_121; obj* x_122; obj* x_ lean::dec(x_0); lean::dec(x_2); x_116 = lean::cnstr_get(x_92, 0); -lean::inc(x_116); x_118 = lean::cnstr_get_scalar(x_92, sizeof(void*)*1); if (lean::is_exclusive(x_92)) { - lean::cnstr_release(x_92, 0); + lean::cnstr_set(x_92, 0, lean::box(0)); x_119 = x_92; } else { + lean::inc(x_116); lean::dec(x_92); x_119 = lean::box(0); } @@ -48049,12 +48049,12 @@ obj* x_126; uint8 x_128; obj* x_129; obj* x_130; obj* x_131; obj* x_132; lean::dec(x_0); lean::dec(x_2); x_126 = lean::cnstr_get(x_10, 0); -lean::inc(x_126); x_128 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_129 = x_10; } else { + lean::inc(x_126); lean::dec(x_10); x_129 = lean::box(0); } @@ -48128,17 +48128,17 @@ if (lean::obj_tag(x_16) == 0) { obj* x_21; obj* x_23; obj* x_25; obj* x_27; obj* x_28; x_21 = lean::cnstr_get(x_16, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_16, 1); -lean::inc(x_23); x_25 = lean::cnstr_get(x_16, 2); -lean::inc(x_25); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); - lean::cnstr_release(x_16, 2); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); + lean::cnstr_set(x_16, 2, lean::box(0)); x_27 = x_16; } else { + lean::inc(x_21); + lean::inc(x_23); + lean::inc(x_25); lean::dec(x_16); x_27 = lean::box(0); } @@ -48279,12 +48279,12 @@ else { obj* x_79; uint8 x_81; obj* x_82; obj* x_83; obj* x_84; x_79 = lean::cnstr_get(x_16, 0); -lean::inc(x_79); x_81 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_82 = x_16; } else { + lean::inc(x_79); lean::dec(x_16); x_82 = lean::box(0); } @@ -48306,13 +48306,13 @@ if (lean::obj_tag(x_8) == 0) { obj* x_85; obj* x_87; obj* x_88; obj* x_89; obj* x_90; x_85 = lean::cnstr_get(x_8, 0); -lean::inc(x_85); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); lean::cnstr_release(x_8, 1); lean::cnstr_release(x_8, 2); x_87 = x_8; } else { + lean::inc(x_85); lean::dec(x_8); x_87 = lean::box(0); } @@ -48354,11 +48354,11 @@ else { obj* x_95; obj* x_97; obj* x_98; x_95 = lean::cnstr_get(x_11, 0); -lean::inc(x_95); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_97 = x_11; } else { + lean::inc(x_95); lean::dec(x_11); x_97 = lean::box(0); } @@ -48533,14 +48533,14 @@ lean::inc(x_2); lean::inc(x_0); x_26 = l_list_mfoldr___main___at___private_init_lean_parser_term_2__leading___spec__10(x_0, x_19, x_2, x_3, x_4, x_5, x_6); x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_26, 1); -lean::inc(x_29); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); x_31 = x_26; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_26); x_31 = lean::box(0); } @@ -48579,12 +48579,12 @@ lean::dec(x_0); lean::dec(x_2); lean::dec(x_17); x_52 = lean::cnstr_get(x_27, 0); -lean::inc(x_52); x_54 = lean::cnstr_get_scalar(x_27, sizeof(void*)*1); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_55 = x_27; } else { + lean::inc(x_52); lean::dec(x_27); x_55 = lean::box(0); } @@ -48615,14 +48615,14 @@ obj* x_7; obj* x_8; obj* x_10; obj* x_12; lean::inc(x_4); x_7 = l_list_mfoldr___main___at___private_init_lean_parser_term_2__leading___spec__10(x_4, x_0, x_1, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -48650,12 +48650,12 @@ else { obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; x_22 = lean::cnstr_get(x_8, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_25 = x_8; } else { + lean::inc(x_22); lean::dec(x_8); x_25 = lean::box(0); } @@ -48686,14 +48686,14 @@ _start: obj* x_6; obj* x_7; obj* x_9; obj* x_11; x_6 = l_lean_parser_monad__parsec_longest__match___at___private_init_lean_parser_term_2__leading___spec__8(x_0, x_1, x_2, x_3, x_4, x_5); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -48701,17 +48701,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -48786,12 +48786,12 @@ else { obj* x_43; uint8 x_45; obj* x_46; obj* x_47; obj* x_48; obj* x_49; x_43 = lean::cnstr_get(x_7, 0); -lean::inc(x_43); x_45 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_46 = x_7; } else { + lean::inc(x_43); lean::dec(x_7); x_46 = lean::box(0); } @@ -48826,14 +48826,14 @@ lean::inc(x_2); lean::inc(x_1); x_12 = l_lean_parser_indexed___at___private_init_lean_parser_term_2__leading___spec__1___rarg(x_6, x_1, x_2, x_3, x_4, x_5); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } @@ -48930,12 +48930,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_76 = lean::cnstr_get(x_52, 0); -lean::inc(x_76); x_78 = lean::cnstr_get_scalar(x_52, sizeof(void*)*1); if (lean::is_exclusive(x_52)) { - lean::cnstr_release(x_52, 0); + lean::cnstr_set(x_52, 0, lean::box(0)); x_79 = x_52; } else { + lean::inc(x_76); lean::dec(x_52); x_79 = lean::box(0); } @@ -48982,12 +48982,12 @@ else { obj* x_91; uint8 x_93; obj* x_94; x_91 = lean::cnstr_get(x_13, 0); -lean::inc(x_91); x_93 = lean::cnstr_get_scalar(x_13, sizeof(void*)*1); if (lean::is_exclusive(x_13)) { - lean::cnstr_release(x_13, 0); + lean::cnstr_set(x_13, 0, lean::box(0)); x_94 = x_13; } else { + lean::inc(x_91); lean::dec(x_13); x_94 = lean::box(0); } @@ -49128,14 +49128,14 @@ obj* x_6; obj* x_7; obj* x_9; obj* x_11; lean::inc(x_1); x_6 = l_lean_parser_monad__parsec_observing___at_lean_parser_peek__token___spec__2(x_1, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -49143,17 +49143,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -49420,12 +49420,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_136 = lean::cnstr_get(x_7, 0); -lean::inc(x_136); x_138 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_139 = x_7; } else { + lean::inc(x_136); lean::dec(x_7); x_139 = lean::box(0); } @@ -49462,14 +49462,14 @@ lean::inc(x_5); lean::inc(x_4); x_14 = l_lean_parser_curr__lbp___at_lean_parser_term__parser_run___spec__4(x_4, x_5, x_6, x_7, x_8); x_15 = lean::cnstr_get(x_14, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_14, 1); -lean::inc(x_17); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); x_19 = x_14; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_14); x_19 = lean::box(0); } @@ -49477,17 +49477,17 @@ if (lean::obj_tag(x_15) == 0) { obj* x_20; obj* x_22; obj* x_24; obj* x_26; uint8 x_27; x_20 = lean::cnstr_get(x_15, 0); -lean::inc(x_20); x_22 = lean::cnstr_get(x_15, 1); -lean::inc(x_22); x_24 = lean::cnstr_get(x_15, 2); -lean::inc(x_24); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); - lean::cnstr_release(x_15, 1); - lean::cnstr_release(x_15, 2); + lean::cnstr_set(x_15, 0, lean::box(0)); + lean::cnstr_set(x_15, 1, lean::box(0)); + lean::cnstr_set(x_15, 2, lean::box(0)); x_26 = x_15; } else { + lean::inc(x_20); + lean::inc(x_22); + lean::inc(x_24); lean::dec(x_15); x_26 = lean::box(0); } @@ -49575,12 +49575,12 @@ lean::dec(x_6); lean::dec(x_0); lean::dec(x_41); x_75 = lean::cnstr_get(x_48, 0); -lean::inc(x_75); x_77 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_78 = x_48; } else { + lean::inc(x_75); lean::dec(x_48); x_78 = lean::box(0); } @@ -49615,12 +49615,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_90 = lean::cnstr_get(x_15, 0); -lean::inc(x_90); x_92 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_93 = x_15; } else { + lean::inc(x_90); lean::dec(x_15); x_93 = lean::box(0); } @@ -49741,14 +49741,14 @@ lean::dec(x_6); x_10 = l_lean_parser_rec__t_run__parsec___at_lean_parser_term__parser_run___spec__5___closed__1; x_11 = l_lean_parser_rec__t_run___at_lean_parser_term__parser_run___spec__7(x_0, x_10, x_1, x_8, x_2, x_3, x_4, x_5); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -49773,14 +49773,14 @@ lean::inc(x_4); lean::inc(x_3); x_11 = lean::apply_5(x_0, x_3, x_4, x_5, x_6, x_7); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -49825,12 +49825,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_43 = lean::cnstr_get(x_12, 0); -lean::inc(x_43); x_45 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_46 = x_12; } else { + lean::inc(x_43); lean::dec(x_12); x_46 = lean::box(0); } @@ -49879,14 +49879,14 @@ lean::inc(x_9); lean::dec(x_1); x_12 = l_lean_parser_pratt__parser___at_lean_parser_term__parser_run___spec__1(x_6, x_8, x_0, x_9, x_2, x_3, x_4); x_13 = lean::cnstr_get(x_12, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_12, 1); -lean::inc(x_15); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); x_17 = x_12; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_12); x_17 = lean::box(0); } diff --git a/src/boot/init/lean/parser/token.cpp b/src/boot/init/lean/parser/token.cpp index e9ab1c9a99..b4951ac9a1 100644 --- a/src/boot/init/lean/parser/token.cpp +++ b/src/boot/init/lean/parser/token.cpp @@ -703,14 +703,14 @@ x_5 = l_lean_parser_monad__parsec_eoi__error___rarg___closed__1; x_6 = l_mjoin___rarg___closed__1; x_7 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -742,14 +742,14 @@ x_23 = lean::box(0); x_24 = l_mjoin___rarg___closed__1; x_25 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_22, x_24, x_23, x_23, x_0, x_1, x_2); x_26 = lean::cnstr_get(x_25, 0); -lean::inc(x_26); x_28 = lean::cnstr_get(x_25, 1); -lean::inc(x_28); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); x_30 = x_25; } else { + lean::inc(x_26); + lean::inc(x_28); lean::dec(x_25); x_30 = lean::box(0); } @@ -943,12 +943,12 @@ else { obj* x_39; uint8 x_41; obj* x_42; obj* x_43; obj* x_44; x_39 = lean::cnstr_get(x_19, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_42 = x_19; } else { + lean::inc(x_39); lean::dec(x_19); x_42 = lean::box(0); } @@ -1002,15 +1002,15 @@ if (lean::obj_tag(x_62) == 0) { obj* x_67; obj* x_69; obj* x_71; x_67 = lean::cnstr_get(x_62, 1); -lean::inc(x_67); x_69 = lean::cnstr_get(x_62, 2); -lean::inc(x_69); if (lean::is_exclusive(x_62)) { lean::cnstr_release(x_62, 0); - lean::cnstr_release(x_62, 1); - lean::cnstr_release(x_62, 2); + lean::cnstr_set(x_62, 1, lean::box(0)); + lean::cnstr_set(x_62, 2, lean::box(0)); x_71 = x_62; } else { + lean::inc(x_67); + lean::inc(x_69); lean::dec(x_62); x_71 = lean::box(0); } @@ -1055,12 +1055,12 @@ else { obj* x_87; uint8 x_89; obj* x_90; obj* x_91; obj* x_92; x_87 = lean::cnstr_get(x_62, 0); -lean::inc(x_87); x_89 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_90 = x_62; } else { + lean::inc(x_87); lean::dec(x_62); x_90 = lean::box(0); } @@ -1118,14 +1118,14 @@ lean::dec(x_53); lean::inc(x_2); x_110 = l_lean_parser_monad__parsec_any___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__2(x_2, x_3, x_54); x_111 = lean::cnstr_get(x_110, 0); -lean::inc(x_111); x_113 = lean::cnstr_get(x_110, 1); -lean::inc(x_113); if (lean::is_exclusive(x_110)) { - lean::cnstr_release(x_110, 0); - lean::cnstr_release(x_110, 1); + lean::cnstr_set(x_110, 0, lean::box(0)); + lean::cnstr_set(x_110, 1, lean::box(0)); x_115 = x_110; } else { + lean::inc(x_111); + lean::inc(x_113); lean::dec(x_110); x_115 = lean::box(0); } @@ -1162,12 +1162,12 @@ lean::dec(x_8); lean::dec(x_0); lean::dec(x_2); x_134 = lean::cnstr_get(x_111, 0); -lean::inc(x_134); x_136 = lean::cnstr_get_scalar(x_111, sizeof(void*)*1); if (lean::is_exclusive(x_111)) { - lean::cnstr_release(x_111, 0); + lean::cnstr_set(x_111, 0, lean::box(0)); x_137 = x_111; } else { + lean::inc(x_134); lean::dec(x_111); x_137 = lean::box(0); } @@ -1265,14 +1265,14 @@ x_6 = lean::nat_add(x_4, x_5); lean::dec(x_4); x_8 = l___private_init_lean_parser_token_1__finish__comment__block__aux___main(x_0, x_6, x_1, x_2, x_3); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -1402,14 +1402,14 @@ x_4 = l_lean_parser_parsec__t_lookahead___at___private_init_lean_parser_token_2_ lean::inc(x_1); x_6 = l_lean_parser_monad__parsec_str__core___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__3(x_3, x_4, x_0, x_1, x_2); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -1417,15 +1417,15 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; uint8 x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; x_12 = lean::cnstr_get(x_7, 1); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 2); -lean::inc(x_14); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_16 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_7); x_16 = lean::box(0); } @@ -1447,13 +1447,13 @@ if (lean::obj_tag(x_21) == 0) { obj* x_22; obj* x_24; obj* x_25; obj* x_26; x_22 = lean::cnstr_get(x_21, 0); -lean::inc(x_22); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); lean::cnstr_release(x_21, 1); lean::cnstr_release(x_21, 2); x_24 = x_21; } else { + lean::inc(x_22); lean::dec(x_21); x_24 = lean::box(0); } @@ -1645,14 +1645,14 @@ obj* x_7; obj* x_8; obj* x_10; obj* x_12; lean::inc(x_1); x_7 = l_lean_parser_monad__parsec_whitespace___at___private_init_lean_parser_token_2__whitespace__aux___main___spec__1(x_1, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -1660,15 +1660,15 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_21; obj* x_22; obj* x_24; obj* x_25; obj* x_28; obj* x_29; obj* x_31; x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 2); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } @@ -1725,12 +1725,12 @@ else { obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; x_60 = lean::cnstr_get(x_45, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_45, sizeof(void*)*1); if (lean::is_exclusive(x_45)) { - lean::cnstr_release(x_45, 0); + lean::cnstr_set(x_45, 0, lean::box(0)); x_63 = x_45; } else { + lean::inc(x_60); lean::dec(x_45); x_63 = lean::box(0); } @@ -1751,12 +1751,12 @@ else { obj* x_66; uint8 x_68; obj* x_69; obj* x_70; obj* x_71; x_66 = lean::cnstr_get(x_29, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_29, sizeof(void*)*1); if (lean::is_exclusive(x_29)) { - lean::cnstr_release(x_29, 0); + lean::cnstr_set(x_29, 0, lean::box(0)); x_69 = x_29; } else { + lean::inc(x_66); lean::dec(x_29); x_69 = lean::box(0); } @@ -1815,15 +1815,15 @@ if (lean::obj_tag(x_90) == 0) { obj* x_95; obj* x_97; obj* x_99; obj* x_102; obj* x_103; obj* x_105; x_95 = lean::cnstr_get(x_90, 1); -lean::inc(x_95); x_97 = lean::cnstr_get(x_90, 2); -lean::inc(x_97); if (lean::is_exclusive(x_90)) { lean::cnstr_release(x_90, 0); - lean::cnstr_release(x_90, 1); - lean::cnstr_release(x_90, 2); + lean::cnstr_set(x_90, 1, lean::box(0)); + lean::cnstr_set(x_90, 2, lean::box(0)); x_99 = x_90; } else { + lean::inc(x_95); + lean::inc(x_97); lean::dec(x_90); x_99 = lean::box(0); } @@ -1900,12 +1900,12 @@ obj* x_143; uint8 x_145; obj* x_146; obj* x_147; obj* x_148; obj* x_149; obj* x_ lean::dec(x_95); lean::dec(x_99); x_143 = lean::cnstr_get(x_103, 0); -lean::inc(x_143); x_145 = lean::cnstr_get_scalar(x_103, sizeof(void*)*1); if (lean::is_exclusive(x_103)) { - lean::cnstr_release(x_103, 0); + lean::cnstr_set(x_103, 0, lean::box(0)); x_146 = x_103; } else { + lean::inc(x_143); lean::dec(x_103); x_146 = lean::box(0); } @@ -1930,11 +1930,11 @@ else { obj* x_153; obj* x_155; uint8 x_156; obj* x_157; obj* x_158; x_153 = lean::cnstr_get(x_90, 0); -lean::inc(x_153); if (lean::is_exclusive(x_90)) { - lean::cnstr_release(x_90, 0); + lean::cnstr_set(x_90, 0, lean::box(0)); x_155 = x_90; } else { + lean::inc(x_153); lean::dec(x_90); x_155 = lean::box(0); } @@ -2085,12 +2085,12 @@ obj* x_223; uint8 x_225; obj* x_226; lean::dec(x_19); lean::dec(x_1); x_223 = lean::cnstr_get(x_179, 0); -lean::inc(x_223); x_225 = lean::cnstr_get_scalar(x_179, sizeof(void*)*1); if (lean::is_exclusive(x_179)) { - lean::cnstr_release(x_179, 0); + lean::cnstr_set(x_179, 0, lean::box(0)); x_226 = x_179; } else { + lean::inc(x_223); lean::dec(x_179); x_226 = lean::box(0); } @@ -2164,12 +2164,12 @@ obj* x_251; uint8 x_253; obj* x_254; lean::dec(x_19); lean::dec(x_1); x_251 = lean::cnstr_get(x_81, 0); -lean::inc(x_251); x_253 = lean::cnstr_get_scalar(x_81, sizeof(void*)*1); if (lean::is_exclusive(x_81)) { - lean::cnstr_release(x_81, 0); + lean::cnstr_set(x_81, 0, lean::box(0)); x_254 = x_81; } else { + lean::inc(x_251); lean::dec(x_81); x_254 = lean::box(0); } @@ -2246,12 +2246,12 @@ obj* x_279; uint8 x_281; obj* x_282; obj* x_283; obj* x_284; obj* x_285; lean::dec(x_1); lean::dec(x_0); x_279 = lean::cnstr_get(x_8, 0); -lean::inc(x_279); x_281 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_282 = x_8; } else { + lean::inc(x_279); lean::dec(x_8); x_282 = lean::box(0); } @@ -2321,14 +2321,14 @@ x_5 = lean::nat_add(x_3, x_4); lean::dec(x_3); x_7 = l___private_init_lean_parser_token_2__whitespace__aux___main(x_5, x_0, x_1, x_2); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -2431,14 +2431,14 @@ obj* x_2; obj* x_4; obj* x_6; obj* x_8; x_2 = lean::cnstr_get(x_1, 0); lean::inc(x_2); x_4 = lean::cnstr_get(x_2, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_2, 1); -lean::inc(x_6); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_8 = x_2; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_2); x_8 = lean::box(0); } @@ -2454,11 +2454,11 @@ else obj* x_13; obj* x_15; obj* x_16; obj* x_18; obj* x_21; obj* x_22; obj* x_23; obj* x_24; lean::dec(x_1); x_13 = lean::cnstr_get(x_4, 0); -lean::inc(x_13); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_15 = x_4; } else { + lean::inc(x_13); lean::dec(x_4); x_15 = lean::box(0); } @@ -2495,23 +2495,23 @@ obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_33; obj* x_35; obj* x_37; x_25 = lean::cnstr_get(x_1, 0); lean::inc(x_25); x_27 = lean::cnstr_get(x_25, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_25, 1); -lean::inc(x_29); x_31 = lean::cnstr_get(x_25, 2); -lean::inc(x_31); x_33 = lean::cnstr_get(x_25, 3); -lean::inc(x_33); x_35 = lean::cnstr_get(x_25, 4); -lean::inc(x_35); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); - lean::cnstr_release(x_25, 2); - lean::cnstr_release(x_25, 3); - lean::cnstr_release(x_25, 4); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); + lean::cnstr_set(x_25, 2, lean::box(0)); + lean::cnstr_set(x_25, 3, lean::box(0)); + lean::cnstr_set(x_25, 4, lean::box(0)); x_37 = x_25; } else { + lean::inc(x_27); + lean::inc(x_29); + lean::inc(x_31); + lean::inc(x_33); + lean::inc(x_35); lean::dec(x_25); x_37 = lean::box(0); } @@ -2530,11 +2530,11 @@ else obj* x_45; obj* x_47; obj* x_48; obj* x_50; obj* x_53; obj* x_54; obj* x_55; obj* x_56; lean::dec(x_1); x_45 = lean::cnstr_get(x_27, 0); -lean::inc(x_45); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); + lean::cnstr_set(x_27, 0, lean::box(0)); x_47 = x_27; } else { + lean::inc(x_45); lean::dec(x_27); x_47 = lean::box(0); } @@ -2572,11 +2572,11 @@ case 2: { obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_68; obj* x_69; x_57 = lean::cnstr_get(x_1, 0); -lean::inc(x_57); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_59 = x_1; } else { + lean::inc(x_57); lean::dec(x_1); x_59 = lean::box(0); } @@ -2620,14 +2620,14 @@ else { obj* x_3; obj* x_5; obj* x_7; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_1, 1); -lean::inc(x_5); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_7 = x_1; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_1); x_7 = lean::box(0); } @@ -2701,14 +2701,14 @@ obj* x_6; obj* x_7; obj* x_9; obj* x_11; lean::inc(x_2); x_6 = lean::apply_3(x_0, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -2744,12 +2744,12 @@ obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_1); lean::dec(x_2); x_29 = lean::cnstr_get(x_7, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_32 = x_7; } else { + lean::inc(x_29); lean::dec(x_7); x_32 = lean::box(0); } @@ -2804,14 +2804,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_whitespace(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -2819,15 +2819,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -2859,12 +2859,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -4469,14 +4469,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -4514,12 +4514,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -4553,14 +4553,14 @@ lean::inc(x_1); x_43 = lean::string_iterator_next(x_1); x_44 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__4(x_1, x_0, x_43, x_2); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -4588,14 +4588,14 @@ x_59 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_61 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_57, x_59, x_58, x_58, x_0, x_1, x_2); x_62 = lean::cnstr_get(x_61, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_61, 1); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); - lean::cnstr_release(x_61, 1); + lean::cnstr_set(x_61, 0, lean::box(0)); + lean::cnstr_set(x_61, 1, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -4633,12 +4633,12 @@ else obj* x_86; uint8 x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_0); x_86 = lean::cnstr_get(x_68, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_68, sizeof(void*)*1); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_89 = x_68; } else { + lean::inc(x_86); lean::dec(x_68); x_89 = lean::box(0); } @@ -4883,14 +4883,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -4928,12 +4928,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -4967,14 +4967,14 @@ lean::inc(x_1); x_43 = lean::string_iterator_next(x_1); x_44 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__11(x_1, x_0, x_43, x_2); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -5002,14 +5002,14 @@ x_59 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_61 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_57, x_59, x_58, x_58, x_0, x_1, x_2); x_62 = lean::cnstr_get(x_61, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_61, 1); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); - lean::cnstr_release(x_61, 1); + lean::cnstr_set(x_61, 0, lean::box(0)); + lean::cnstr_set(x_61, 1, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -5047,12 +5047,12 @@ else obj* x_86; uint8 x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_0); x_86 = lean::cnstr_get(x_68, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_68, sizeof(void*)*1); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_89 = x_68; } else { + lean::inc(x_86); lean::dec(x_68); x_89 = lean::box(0); } @@ -5099,14 +5099,14 @@ else { obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_20; obj* x_21; obj* x_23; x_11 = lean::cnstr_get(x_2, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_2, 1); -lean::inc(x_13); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_15 = x_2; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_2); x_15 = lean::box(0); } @@ -5127,12 +5127,12 @@ else { obj* x_26; uint8 x_28; obj* x_29; x_26 = lean::cnstr_get(x_21, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_21, sizeof(void*)*1); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_29 = x_21; } else { + lean::inc(x_26); lean::dec(x_21); x_29 = lean::box(0); } @@ -5236,17 +5236,17 @@ if (lean::obj_tag(x_16) == 0) { obj* x_57; obj* x_59; obj* x_61; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; x_57 = lean::cnstr_get(x_16, 0); -lean::inc(x_57); x_59 = lean::cnstr_get(x_16, 1); -lean::inc(x_59); x_61 = lean::cnstr_get(x_16, 2); -lean::inc(x_61); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); - lean::cnstr_release(x_16, 1); - lean::cnstr_release(x_16, 2); + lean::cnstr_set(x_16, 0, lean::box(0)); + lean::cnstr_set(x_16, 1, lean::box(0)); + lean::cnstr_set(x_16, 2, lean::box(0)); x_63 = x_16; } else { + lean::inc(x_57); + lean::inc(x_59); + lean::inc(x_61); lean::dec(x_16); x_63 = lean::box(0); } @@ -5279,14 +5279,14 @@ lean::inc(x_72); lean::dec(x_67); x_75 = l_list_mfoldl___main___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__16(x_0, x_68, x_13, x_3, x_70, x_17); x_76 = lean::cnstr_get(x_75, 0); -lean::inc(x_76); x_78 = lean::cnstr_get(x_75, 1); -lean::inc(x_78); if (lean::is_exclusive(x_75)) { - lean::cnstr_release(x_75, 0); - lean::cnstr_release(x_75, 1); + lean::cnstr_set(x_75, 0, lean::box(0)); + lean::cnstr_set(x_75, 1, lean::box(0)); x_80 = x_75; } else { + lean::inc(x_76); + lean::inc(x_78); lean::dec(x_75); x_80 = lean::box(0); } @@ -5307,12 +5307,12 @@ lean::dec(x_13); lean::dec(x_3); lean::dec(x_0); x_86 = lean::cnstr_get(x_67, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_67, sizeof(void*)*1); if (lean::is_exclusive(x_67)) { - lean::cnstr_release(x_67, 0); + lean::cnstr_set(x_67, 0, lean::box(0)); x_89 = x_67; } else { + lean::inc(x_86); lean::dec(x_67); x_89 = lean::box(0); } @@ -5339,12 +5339,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); x_98 = lean::cnstr_get(x_16, 0); -lean::inc(x_98); x_100 = lean::cnstr_get_scalar(x_16, sizeof(void*)*1); if (lean::is_exclusive(x_16)) { - lean::cnstr_release(x_16, 0); + lean::cnstr_set(x_16, 0, lean::box(0)); x_101 = x_16; } else { + lean::inc(x_98); lean::dec(x_16); x_101 = lean::box(0); } @@ -5373,14 +5373,14 @@ x_5 = lean::box(0); lean::inc(x_0); x_7 = l_list_mfoldl___main___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__16(x_0, x_5, x_1, x_2, x_3, x_4); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -5388,17 +5388,17 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; x_13 = lean::cnstr_get(x_8, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_8, 2); -lean::inc(x_17); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_19 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_8); x_19 = lean::box(0); } @@ -5428,12 +5428,12 @@ else obj* x_27; uint8 x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; lean::dec(x_0); x_27 = lean::cnstr_get(x_8, 0); -lean::inc(x_27); x_29 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_30 = x_8; } else { + lean::inc(x_27); lean::dec(x_8); x_30 = lean::box(0); } @@ -5923,14 +5923,14 @@ else { obj* x_10; obj* x_12; obj* x_14; obj* x_17; obj* x_18; obj* x_20; obj* x_22; obj* x_23; obj* x_24; x_10 = lean::cnstr_get(x_0, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_0, 1); -lean::inc(x_12); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_14 = x_0; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_0); x_14 = lean::box(0); } @@ -5938,14 +5938,14 @@ lean::inc(x_3); lean::inc(x_2); x_17 = lean::apply_3(x_10, x_2, x_3, x_4); x_18 = lean::cnstr_get(x_17, 0); -lean::inc(x_18); x_20 = lean::cnstr_get(x_17, 1); -lean::inc(x_20); if (lean::is_exclusive(x_17)) { - lean::cnstr_release(x_17, 0); - lean::cnstr_release(x_17, 1); + lean::cnstr_set(x_17, 0, lean::box(0)); + lean::cnstr_set(x_17, 1, lean::box(0)); x_22 = x_17; } else { + lean::inc(x_18); + lean::inc(x_20); lean::dec(x_17); x_22 = lean::box(0); } @@ -5955,17 +5955,17 @@ if (lean::obj_tag(x_18) == 0) { obj* x_25; obj* x_27; obj* x_29; obj* x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; obj* x_38; x_25 = lean::cnstr_get(x_18, 0); -lean::inc(x_25); x_27 = lean::cnstr_get(x_18, 1); -lean::inc(x_27); x_29 = lean::cnstr_get(x_18, 2); -lean::inc(x_29); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); - lean::cnstr_release(x_18, 2); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); + lean::cnstr_set(x_18, 2, lean::box(0)); x_31 = x_18; } else { + lean::inc(x_25); + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_18); x_31 = lean::box(0); } @@ -6056,12 +6056,12 @@ obj* x_64; uint8 x_66; obj* x_67; lean::dec(x_14); lean::dec(x_1); x_64 = lean::cnstr_get(x_18, 0); -lean::inc(x_64); x_66 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_67 = x_18; } else { + lean::inc(x_64); lean::dec(x_18); x_67 = lean::box(0); } @@ -6386,14 +6386,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -6431,12 +6431,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -6470,14 +6470,14 @@ lean::inc(x_1); x_43 = lean::string_iterator_next(x_1); x_44 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_detail__ident__part_parser_lean_parser_has__view___spec__4(x_1, x_0, x_43, x_2); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -6505,14 +6505,14 @@ x_59 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_61 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_57, x_59, x_58, x_58, x_0, x_1, x_2); x_62 = lean::cnstr_get(x_61, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_61, 1); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); - lean::cnstr_release(x_61, 1); + lean::cnstr_set(x_61, 0, lean::box(0)); + lean::cnstr_set(x_61, 1, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -6550,12 +6550,12 @@ else obj* x_86; uint8 x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_0); x_86 = lean::cnstr_get(x_68, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_68, sizeof(void*)*1); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_89 = x_68; } else { + lean::inc(x_86); lean::dec(x_68); x_89 = lean::box(0); } @@ -6811,14 +6811,14 @@ _start: obj* x_6; obj* x_7; obj* x_9; obj* x_11; x_6 = l_lean_parser_monad__parsec_str__core___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__3(x_0, x_1, x_3, x_4, x_5); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -6826,15 +6826,15 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_12 = lean::cnstr_get(x_7, 1); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 2); -lean::inc(x_14); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_16 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_7); x_16 = lean::box(0); } @@ -6864,12 +6864,12 @@ else obj* x_24; uint8 x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; lean::dec(x_2); x_24 = lean::cnstr_get(x_7, 0); -lean::inc(x_24); x_26 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_27 = x_7; } else { + lean::inc(x_24); lean::dec(x_7); x_27 = lean::box(0); } @@ -6898,14 +6898,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_monad__parsec_take__while1___at_lean_parser_detail__ident__part_parser_lean_parser_has__view___spec__1(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -6913,15 +6913,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -6951,12 +6951,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -7021,12 +7021,12 @@ else { obj* x_31; uint8 x_33; obj* x_34; obj* x_35; obj* x_36; x_31 = lean::cnstr_get(x_18, 0); -lean::inc(x_31); x_33 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_34 = x_18; } else { + lean::inc(x_31); lean::dec(x_18); x_34 = lean::box(0); } @@ -7089,12 +7089,12 @@ else { obj* x_66; uint8 x_68; obj* x_69; obj* x_70; obj* x_71; x_66 = lean::cnstr_get(x_53, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_53, sizeof(void*)*1); if (lean::is_exclusive(x_53)) { - lean::cnstr_release(x_53, 0); + lean::cnstr_set(x_53, 0, lean::box(0)); x_69 = x_53; } else { + lean::inc(x_66); lean::dec(x_53); x_69 = lean::box(0); } @@ -7135,15 +7135,15 @@ if (lean::obj_tag(x_4) == 0) { obj* x_82; obj* x_84; obj* x_86; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; x_82 = lean::cnstr_get(x_4, 1); -lean::inc(x_82); x_84 = lean::cnstr_get(x_4, 2); -lean::inc(x_84); if (lean::is_exclusive(x_4)) { lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_86 = x_4; } else { + lean::inc(x_82); + lean::inc(x_84); lean::dec(x_4); x_86 = lean::box(0); } @@ -7169,12 +7169,12 @@ else obj* x_94; uint8 x_96; obj* x_97; obj* x_98; obj* x_99; obj* x_100; lean::dec(x_0); x_94 = lean::cnstr_get(x_4, 0); -lean::inc(x_94); x_96 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_97 = x_4; } else { + lean::inc(x_94); lean::dec(x_4); x_97 = lean::box(0); } @@ -7513,14 +7513,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -7558,12 +7558,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -7597,14 +7597,14 @@ lean::inc(x_1); x_43 = lean::string_iterator_next(x_1); x_44 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_detail__ident__part_parser___spec__4(x_1, x_0, x_43, x_2); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -7632,14 +7632,14 @@ x_59 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_61 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_57, x_59, x_58, x_58, x_0, x_1, x_2); x_62 = lean::cnstr_get(x_61, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_61, 1); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); - lean::cnstr_release(x_61, 1); + lean::cnstr_set(x_61, 0, lean::box(0)); + lean::cnstr_set(x_61, 1, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -7677,12 +7677,12 @@ else obj* x_86; uint8 x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_0); x_86 = lean::cnstr_get(x_68, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_68, sizeof(void*)*1); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_89 = x_68; } else { + lean::inc(x_86); lean::dec(x_68); x_89 = lean::box(0); } @@ -7938,14 +7938,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_monad__parsec_take__while1___at_lean_parser_detail__ident__part_parser___spec__1(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -7953,15 +7953,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -7991,12 +7991,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -8061,12 +8061,12 @@ else { obj* x_31; uint8 x_33; obj* x_34; obj* x_35; obj* x_36; x_31 = lean::cnstr_get(x_18, 0); -lean::inc(x_31); x_33 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_34 = x_18; } else { + lean::inc(x_31); lean::dec(x_18); x_34 = lean::box(0); } @@ -8129,12 +8129,12 @@ else { obj* x_66; uint8 x_68; obj* x_69; obj* x_70; obj* x_71; x_66 = lean::cnstr_get(x_53, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_53, sizeof(void*)*1); if (lean::is_exclusive(x_53)) { - lean::cnstr_release(x_53, 0); + lean::cnstr_set(x_53, 0, lean::box(0)); x_69 = x_53; } else { + lean::inc(x_66); lean::dec(x_53); x_69 = lean::box(0); } @@ -8175,15 +8175,15 @@ if (lean::obj_tag(x_4) == 0) { obj* x_82; obj* x_84; obj* x_86; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; x_82 = lean::cnstr_get(x_4, 1); -lean::inc(x_82); x_84 = lean::cnstr_get(x_4, 2); -lean::inc(x_84); if (lean::is_exclusive(x_4)) { lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_86 = x_4; } else { + lean::inc(x_82); + lean::inc(x_84); lean::dec(x_4); x_86 = lean::box(0); } @@ -8209,12 +8209,12 @@ else obj* x_94; uint8 x_96; obj* x_97; obj* x_98; obj* x_99; obj* x_100; lean::dec(x_0); x_94 = lean::cnstr_get(x_4, 0); -lean::inc(x_94); x_96 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_97 = x_4; } else { + lean::inc(x_94); lean::dec(x_4); x_97 = lean::box(0); } @@ -8377,11 +8377,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -8592,14 +8592,14 @@ x_7 = l_lean_parser_monad__parsec_eoi__error___rarg___closed__1; x_8 = l_mjoin___rarg___closed__1; x_9 = l_lean_parser_monad__parsec_error___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__tokens___spec__2___rarg(x_7, x_8, x_6, x_6, x_1, x_2, x_3, x_4); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -8631,14 +8631,14 @@ x_25 = lean::box(0); x_26 = l_mjoin___rarg___closed__1; x_27 = l_lean_parser_monad__parsec_error___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__tokens___spec__2___rarg(x_24, x_26, x_25, x_25, x_1, x_2, x_3, x_4); x_28 = lean::cnstr_get(x_27, 0); -lean::inc(x_28); x_30 = lean::cnstr_get(x_27, 1); -lean::inc(x_30); if (lean::is_exclusive(x_27)) { - lean::cnstr_release(x_27, 0); - lean::cnstr_release(x_27, 1); + lean::cnstr_set(x_27, 0, lean::box(0)); + lean::cnstr_set(x_27, 1, lean::box(0)); x_32 = x_27; } else { + lean::inc(x_28); + lean::inc(x_30); lean::dec(x_27); x_32 = lean::box(0); } @@ -8723,15 +8723,15 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; uint32 x_22; obj* x_26; obj* x_27; obj* x_29; x_17 = lean::cnstr_get(x_12, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 2); -lean::inc(x_19); if (lean::is_exclusive(x_12)) { lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_21 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_12); x_21 = lean::box(0); } @@ -8864,12 +8864,12 @@ obj* x_92; uint8 x_94; obj* x_95; obj* x_96; obj* x_97; lean::dec(x_1); lean::dec(x_0); x_92 = lean::cnstr_get(x_12, 0); -lean::inc(x_92); x_94 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_95 = x_12; } else { + lean::inc(x_92); lean::dec(x_12); x_95 = lean::box(0); } @@ -8891,13 +8891,13 @@ if (lean::obj_tag(x_4) == 0) { obj* x_98; obj* x_100; obj* x_101; obj* x_102; obj* x_103; x_98 = lean::cnstr_get(x_4, 0); -lean::inc(x_98); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); lean::cnstr_release(x_4, 1); lean::cnstr_release(x_4, 2); x_100 = x_4; } else { + lean::inc(x_98); lean::dec(x_4); x_100 = lean::box(0); } @@ -9027,14 +9027,14 @@ lean::inc(x_3); lean::inc(x_2); x_8 = lean::apply_4(x_0, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -9071,12 +9071,12 @@ lean::dec(x_1); lean::dec(x_3); lean::dec(x_2); x_32 = lean::cnstr_get(x_9, 0); -lean::inc(x_32); x_34 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_35 = x_9; } else { + lean::inc(x_32); lean::dec(x_9); x_35 = lean::box(0); } @@ -9115,14 +9115,14 @@ _start: obj* x_5; obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_5 = lean::apply_4(x_1, x_0, x_2, x_3, x_4); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -9161,14 +9161,14 @@ else { obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_23; obj* x_24; obj* x_26; x_13 = lean::cnstr_get(x_2, 0); -lean::inc(x_13); x_15 = lean::cnstr_get(x_2, 1); -lean::inc(x_15); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_17 = x_2; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_2); x_17 = lean::box(0); } @@ -9190,12 +9190,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; x_29 = lean::cnstr_get(x_24, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_24, sizeof(void*)*1); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_32 = x_24; } else { + lean::inc(x_29); lean::dec(x_24); x_32 = lean::box(0); } @@ -9299,17 +9299,17 @@ if (lean::obj_tag(x_18) == 0) { obj* x_60; obj* x_62; obj* x_64; obj* x_66; obj* x_67; obj* x_68; obj* x_69; obj* x_70; x_60 = lean::cnstr_get(x_18, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_18, 1); -lean::inc(x_62); x_64 = lean::cnstr_get(x_18, 2); -lean::inc(x_64); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); - lean::cnstr_release(x_18, 1); - lean::cnstr_release(x_18, 2); + lean::cnstr_set(x_18, 0, lean::box(0)); + lean::cnstr_set(x_18, 1, lean::box(0)); + lean::cnstr_set(x_18, 2, lean::box(0)); x_66 = x_18; } else { + lean::inc(x_60); + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_18); x_66 = lean::box(0); } @@ -9342,14 +9342,14 @@ lean::inc(x_75); lean::dec(x_70); x_78 = l_list_mfoldl___main___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__tokens___spec__10(x_0, x_71, x_15, x_3, x_4, x_73, x_19); x_79 = lean::cnstr_get(x_78, 0); -lean::inc(x_79); x_81 = lean::cnstr_get(x_78, 1); -lean::inc(x_81); if (lean::is_exclusive(x_78)) { - lean::cnstr_release(x_78, 0); - lean::cnstr_release(x_78, 1); + lean::cnstr_set(x_78, 0, lean::box(0)); + lean::cnstr_set(x_78, 1, lean::box(0)); x_83 = x_78; } else { + lean::inc(x_79); + lean::inc(x_81); lean::dec(x_78); x_83 = lean::box(0); } @@ -9371,12 +9371,12 @@ lean::dec(x_4); lean::dec(x_3); lean::dec(x_0); x_90 = lean::cnstr_get(x_70, 0); -lean::inc(x_90); x_92 = lean::cnstr_get_scalar(x_70, sizeof(void*)*1); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); + lean::cnstr_set(x_70, 0, lean::box(0)); x_93 = x_70; } else { + lean::inc(x_90); lean::dec(x_70); x_93 = lean::box(0); } @@ -9404,12 +9404,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_17); x_103 = lean::cnstr_get(x_18, 0); -lean::inc(x_103); x_105 = lean::cnstr_get_scalar(x_18, sizeof(void*)*1); if (lean::is_exclusive(x_18)) { - lean::cnstr_release(x_18, 0); + lean::cnstr_set(x_18, 0, lean::box(0)); x_106 = x_18; } else { + lean::inc(x_103); lean::dec(x_18); x_106 = lean::box(0); } @@ -9438,14 +9438,14 @@ x_6 = lean::box(0); lean::inc(x_0); x_8 = l_list_mfoldl___main___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__tokens___spec__10(x_0, x_6, x_1, x_2, x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -9453,17 +9453,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -9493,12 +9493,12 @@ else obj* x_28; uint8 x_30; obj* x_31; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_0); x_28 = lean::cnstr_get(x_9, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_31 = x_9; } else { + lean::inc(x_28); lean::dec(x_9); x_31 = lean::box(0); } @@ -9560,15 +9560,15 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; uint32 x_22; obj* x_26; obj* x_27; obj* x_29; x_17 = lean::cnstr_get(x_12, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 2); -lean::inc(x_19); if (lean::is_exclusive(x_12)) { lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_21 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_12); x_21 = lean::box(0); } @@ -9701,12 +9701,12 @@ obj* x_92; uint8 x_94; obj* x_95; obj* x_96; obj* x_97; lean::dec(x_1); lean::dec(x_0); x_92 = lean::cnstr_get(x_12, 0); -lean::inc(x_92); x_94 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_95 = x_12; } else { + lean::inc(x_92); lean::dec(x_12); x_95 = lean::box(0); } @@ -9728,13 +9728,13 @@ if (lean::obj_tag(x_4) == 0) { obj* x_98; obj* x_100; obj* x_101; obj* x_102; obj* x_103; x_98 = lean::cnstr_get(x_4, 0); -lean::inc(x_98); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); lean::cnstr_release(x_4, 1); lean::cnstr_release(x_4, 2); x_100 = x_4; } else { + lean::inc(x_98); lean::dec(x_4); x_100 = lean::box(0); } @@ -9770,14 +9770,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; x_4 = l_lean_parser_parsec__t_lookahead___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__view___spec__1(x_0, x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -9799,14 +9799,14 @@ obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; x_6 = l_lean_name_to__string___closed__1; x_7 = l_lean_parser_monad__parsec_str__core___at_lean_parser_detail__ident__suffix_parser_lean_parser_has__tokens___spec__6(x_6, x_0, x_2, x_3, x_4, x_5); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -9814,15 +9814,15 @@ if (lean::obj_tag(x_8) == 0) { obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_22; obj* x_23; x_13 = lean::cnstr_get(x_8, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_8, 2); -lean::inc(x_15); if (lean::is_exclusive(x_8)) { lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); - lean::cnstr_release(x_8, 2); + lean::cnstr_set(x_8, 1, lean::box(0)); + lean::cnstr_set(x_8, 2, lean::box(0)); x_17 = x_8; } else { + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_8); x_17 = lean::box(0); } @@ -9852,12 +9852,12 @@ else obj* x_25; uint8 x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; lean::dec(x_1); x_25 = lean::cnstr_get(x_8, 0); -lean::inc(x_25); x_27 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); + lean::cnstr_set(x_8, 0, lean::box(0)); x_28 = x_8; } else { + lean::inc(x_25); lean::dec(x_8); x_28 = lean::box(0); } @@ -9946,15 +9946,15 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; uint32 x_22; obj* x_26; obj* x_27; obj* x_29; x_17 = lean::cnstr_get(x_12, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 2); -lean::inc(x_19); if (lean::is_exclusive(x_12)) { lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_21 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_12); x_21 = lean::box(0); } @@ -10087,12 +10087,12 @@ obj* x_92; uint8 x_94; obj* x_95; obj* x_96; obj* x_97; lean::dec(x_1); lean::dec(x_0); x_92 = lean::cnstr_get(x_12, 0); -lean::inc(x_92); x_94 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_95 = x_12; } else { + lean::inc(x_92); lean::dec(x_12); x_95 = lean::box(0); } @@ -10114,13 +10114,13 @@ if (lean::obj_tag(x_4) == 0) { obj* x_98; obj* x_100; obj* x_101; obj* x_102; obj* x_103; x_98 = lean::cnstr_get(x_4, 0); -lean::inc(x_98); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); lean::cnstr_release(x_4, 1); lean::cnstr_release(x_4, 2); x_100 = x_4; } else { + lean::inc(x_98); lean::dec(x_4); x_100 = lean::box(0); } @@ -10188,14 +10188,14 @@ lean::inc(x_1); lean::inc(x_0); x_6 = l_lean_parser_parsec__t_lookahead___at_lean_parser_detail__ident__suffix_parser___spec__1(x_0, x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -10232,12 +10232,12 @@ obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; obj* x_36; lean::dec(x_1); lean::dec(x_0); x_30 = lean::cnstr_get(x_12, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_33 = x_12; } else { + lean::inc(x_30); lean::dec(x_12); x_33 = lean::box(0); } @@ -10324,11 +10324,11 @@ else { obj* x_14; obj* x_16; obj* x_17; x_14 = lean::cnstr_get(x_11, 0); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); + lean::cnstr_set(x_11, 0, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -10407,11 +10407,11 @@ else { obj* x_46; obj* x_48; obj* x_49; x_46 = lean::cnstr_get(x_43, 0); -lean::inc(x_46); if (lean::is_exclusive(x_43)) { - lean::cnstr_release(x_43, 0); + lean::cnstr_set(x_43, 0, lean::box(0)); x_48 = x_43; } else { + lean::inc(x_46); lean::dec(x_43); x_48 = lean::box(0); } @@ -10540,11 +10540,11 @@ else { obj* x_27; obj* x_29; obj* x_30; x_27 = lean::cnstr_get(x_24, 0); -lean::inc(x_27); if (lean::is_exclusive(x_24)) { - lean::cnstr_release(x_24, 0); + lean::cnstr_set(x_24, 0, lean::box(0)); x_29 = x_24; } else { + lean::inc(x_27); lean::dec(x_24); x_29 = lean::box(0); } @@ -10623,11 +10623,11 @@ else { obj* x_59; obj* x_61; obj* x_62; x_59 = lean::cnstr_get(x_56, 0); -lean::inc(x_59); if (lean::is_exclusive(x_56)) { - lean::cnstr_release(x_56, 0); + lean::cnstr_set(x_56, 0, lean::box(0)); x_61 = x_56; } else { + lean::inc(x_59); lean::dec(x_56); x_61 = lean::box(0); } @@ -10812,17 +10812,17 @@ if (lean::obj_tag(x_14) == 0) { obj* x_19; obj* x_21; obj* x_23; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_19 = lean::cnstr_get(x_14, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_14, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_14, 2); -lean::inc(x_23); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); - lean::cnstr_release(x_14, 2); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); + lean::cnstr_set(x_14, 2, lean::box(0)); x_25 = x_14; } else { + lean::inc(x_19); + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_14); x_25 = lean::box(0); } @@ -10846,12 +10846,12 @@ else { obj* x_30; uint8 x_32; obj* x_33; obj* x_34; obj* x_35; x_30 = lean::cnstr_get(x_14, 0); -lean::inc(x_30); x_32 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_33 = x_14; } else { + lean::inc(x_30); lean::dec(x_14); x_33 = lean::box(0); } @@ -10872,12 +10872,12 @@ else { obj* x_36; uint8 x_38; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_46; obj* x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; obj* x_54; x_36 = lean::cnstr_get(x_14, 0); -lean::inc(x_36); x_38 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_39 = x_14; } else { + lean::inc(x_36); lean::dec(x_14); x_39 = lean::box(0); } @@ -10941,17 +10941,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_60; obj* x_62; obj* x_64; obj* x_66; x_60 = lean::cnstr_get(x_5, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_5, 1); -lean::inc(x_62); x_64 = lean::cnstr_get(x_5, 2); -lean::inc(x_64); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_66 = x_5; } else { + lean::inc(x_60); + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_5); x_66 = lean::box(0); } @@ -11006,12 +11006,12 @@ else { obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; x_83 = lean::cnstr_get(x_5, 0); -lean::inc(x_83); x_85 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_86 = x_5; } else { + lean::inc(x_83); lean::dec(x_5); x_86 = lean::box(0); } @@ -11159,14 +11159,14 @@ lean::dec(x_5); x_9 = l_lean_parser_rec__t_run__parsec___at_lean_parser_detail__ident_parser___spec__1___closed__1; x_10 = l_lean_parser_rec__t_run___at_lean_parser_detail__ident_parser___spec__2(x_0, x_9, x_1, x_7, x_2, x_3, x_4); x_11 = lean::cnstr_get(x_10, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_10, 1); -lean::inc(x_13); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); x_15 = x_10; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_10); x_15 = lean::box(0); } @@ -11465,14 +11465,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -11510,12 +11510,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -11555,14 +11555,14 @@ x_48 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_50 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_46, x_48, x_47, x_47, x_0, x_1, x_2); x_51 = lean::cnstr_get(x_50, 0); -lean::inc(x_51); x_53 = lean::cnstr_get(x_50, 1); -lean::inc(x_53); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); - lean::cnstr_release(x_50, 1); + lean::cnstr_set(x_50, 0, lean::box(0)); + lean::cnstr_set(x_50, 1, lean::box(0)); x_55 = x_50; } else { + lean::inc(x_51); + lean::inc(x_53); lean::dec(x_50); x_55 = lean::box(0); } @@ -11600,12 +11600,12 @@ else obj* x_75; uint8 x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; lean::dec(x_0); x_75 = lean::cnstr_get(x_57, 0); -lean::inc(x_75); x_77 = lean::cnstr_get_scalar(x_57, sizeof(void*)*1); if (lean::is_exclusive(x_57)) { - lean::cnstr_release(x_57, 0); + lean::cnstr_set(x_57, 0, lean::box(0)); x_78 = x_57; } else { + lean::inc(x_75); lean::dec(x_57); x_78 = lean::box(0); } @@ -11634,14 +11634,14 @@ lean::inc(x_1); x_83 = lean::string_iterator_next(x_1); x_84 = l_lean_parser_monad__parsec_take__while__cont___at___private_init_lean_parser_token_4__ident_x_27___spec__8(x_1, x_0, x_83, x_2); x_85 = lean::cnstr_get(x_84, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_84, 1); -lean::inc(x_87); if (lean::is_exclusive(x_84)) { - lean::cnstr_release(x_84, 0); - lean::cnstr_release(x_84, 1); + lean::cnstr_set(x_84, 0, lean::box(0)); + lean::cnstr_set(x_84, 1, lean::box(0)); x_89 = x_84; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_84); x_89 = lean::box(0); } @@ -11672,14 +11672,14 @@ x_6 = l_lean_parser_monad__parsec_eoi__error___rarg___closed__1; x_7 = l_mjoin___rarg___closed__1; x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_6, x_7, x_5, x_5, x_1, x_2, x_3); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -11711,14 +11711,14 @@ x_24 = lean::box(0); x_25 = l_mjoin___rarg___closed__1; x_26 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_23, x_25, x_24, x_24, x_1, x_2, x_3); x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); x_29 = lean::cnstr_get(x_26, 1); -lean::inc(x_29); if (lean::is_exclusive(x_26)) { - lean::cnstr_release(x_26, 0); - lean::cnstr_release(x_26, 1); + lean::cnstr_set(x_26, 0, lean::box(0)); + lean::cnstr_set(x_26, 1, lean::box(0)); x_31 = x_26; } else { + lean::inc(x_27); + lean::inc(x_29); lean::dec(x_26); x_31 = lean::box(0); } @@ -11972,14 +11972,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -12017,12 +12017,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -12056,14 +12056,14 @@ lean::inc(x_1); x_43 = lean::string_iterator_next(x_1); x_44 = l_lean_parser_monad__parsec_take__while__cont___at___private_init_lean_parser_token_4__ident_x_27___spec__15(x_1, x_0, x_43, x_2); x_45 = lean::cnstr_get(x_44, 0); -lean::inc(x_45); x_47 = lean::cnstr_get(x_44, 1); -lean::inc(x_47); if (lean::is_exclusive(x_44)) { - lean::cnstr_release(x_44, 0); - lean::cnstr_release(x_44, 1); + lean::cnstr_set(x_44, 0, lean::box(0)); + lean::cnstr_set(x_44, 1, lean::box(0)); x_49 = x_44; } else { + lean::inc(x_45); + lean::inc(x_47); lean::dec(x_44); x_49 = lean::box(0); } @@ -12091,14 +12091,14 @@ x_59 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_61 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_57, x_59, x_58, x_58, x_0, x_1, x_2); x_62 = lean::cnstr_get(x_61, 0); -lean::inc(x_62); x_64 = lean::cnstr_get(x_61, 1); -lean::inc(x_64); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); - lean::cnstr_release(x_61, 1); + lean::cnstr_set(x_61, 0, lean::box(0)); + lean::cnstr_set(x_61, 1, lean::box(0)); x_66 = x_61; } else { + lean::inc(x_62); + lean::inc(x_64); lean::dec(x_61); x_66 = lean::box(0); } @@ -12136,12 +12136,12 @@ else obj* x_86; uint8 x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_0); x_86 = lean::cnstr_get(x_68, 0); -lean::inc(x_86); x_88 = lean::cnstr_get_scalar(x_68, sizeof(void*)*1); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); + lean::cnstr_set(x_68, 0, lean::box(0)); x_89 = x_68; } else { + lean::inc(x_86); lean::dec(x_68); x_89 = lean::box(0); } @@ -12174,14 +12174,14 @@ x_3 = l_lean_id__begin__escape; lean::inc(x_0); x_5 = l_lean_parser_monad__parsec_ch___at___private_init_lean_parser_token_4__ident_x_27___spec__11(x_3, x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -12189,15 +12189,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_23; x_11 = lean::cnstr_get(x_6, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 2); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -12260,12 +12260,12 @@ obj* x_50; uint8 x_52; obj* x_53; obj* x_54; obj* x_55; obj* x_56; obj* x_57; lean::dec(x_15); lean::dec(x_24); x_50 = lean::cnstr_get(x_33, 0); -lean::inc(x_50); x_52 = lean::cnstr_get_scalar(x_33, sizeof(void*)*1); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); + lean::cnstr_set(x_33, 0, lean::box(0)); x_53 = x_33; } else { + lean::inc(x_50); lean::dec(x_33); x_53 = lean::box(0); } @@ -12294,12 +12294,12 @@ obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; lean::dec(x_15); lean::dec(x_0); x_60 = lean::cnstr_get(x_23, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_23, sizeof(void*)*1); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); + lean::cnstr_set(x_23, 0, lean::box(0)); x_63 = x_23; } else { + lean::inc(x_60); lean::dec(x_23); x_63 = lean::box(0); } @@ -12326,12 +12326,12 @@ else obj* x_68; uint8 x_70; obj* x_71; obj* x_72; obj* x_73; obj* x_74; lean::dec(x_0); x_68 = lean::cnstr_get(x_6, 0); -lean::inc(x_68); x_70 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_71 = x_6; } else { + lean::inc(x_68); lean::dec(x_6); x_71 = lean::box(0); } @@ -12360,14 +12360,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; x_3 = l_lean_parser_monad__parsec_curr___at___private_init_lean_parser_token_4__ident_x_27___spec__2___rarg(x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -12375,17 +12375,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_9; obj* x_11; obj* x_13; obj* x_15; uint32 x_16; uint8 x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_4, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_4, 2); -lean::inc(x_13); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_15 = x_4; } else { + lean::inc(x_9); + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_4); x_15 = lean::box(0); } @@ -12457,12 +12457,12 @@ else obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; obj* x_53; lean::dec(x_0); x_47 = lean::cnstr_get(x_21, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_21, sizeof(void*)*1); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_50 = x_21; } else { + lean::inc(x_47); lean::dec(x_21); x_50 = lean::box(0); } @@ -12489,12 +12489,12 @@ else obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_0); x_55 = lean::cnstr_get(x_4, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_58 = x_4; } else { + lean::inc(x_55); lean::dec(x_4); x_58 = lean::box(0); } @@ -12534,15 +12534,15 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; uint32 x_20; obj* x_23; obj* x_24; obj* x_26; x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 2); -lean::inc(x_17); if (lean::is_exclusive(x_10)) { lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_19 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_10); x_19 = lean::box(0); } @@ -12670,12 +12670,12 @@ else obj* x_85; uint8 x_87; obj* x_88; obj* x_89; obj* x_90; lean::dec(x_0); x_85 = lean::cnstr_get(x_10, 0); -lean::inc(x_85); x_87 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_88 = x_10; } else { + lean::inc(x_85); lean::dec(x_10); x_88 = lean::box(0); } @@ -12697,13 +12697,13 @@ if (lean::obj_tag(x_3) == 0) { obj* x_91; obj* x_93; obj* x_94; obj* x_95; obj* x_96; x_91 = lean::cnstr_get(x_3, 0); -lean::inc(x_91); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); lean::cnstr_release(x_3, 1); lean::cnstr_release(x_3, 2); x_93 = x_3; } else { + lean::inc(x_91); lean::dec(x_3); x_93 = lean::box(0); } @@ -12739,14 +12739,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; x_3 = l_lean_parser_parsec__t_lookahead___at___private_init_lean_parser_token_4__ident_x_27___spec__19(x_0, x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -12768,14 +12768,14 @@ obj* x_6; obj* x_7; obj* x_9; obj* x_11; lean::inc(x_2); x_6 = l_lean_parser_monad__parsec_ch___at___private_init_lean_parser_token_4__ident_x_27___spec__11(x_0, x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -12808,12 +12808,12 @@ else obj* x_26; uint8 x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; lean::dec(x_2); x_26 = lean::cnstr_get(x_7, 0); -lean::inc(x_26); x_28 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_29 = x_7; } else { + lean::inc(x_26); lean::dec(x_7); x_29 = lean::box(0); } @@ -12870,14 +12870,14 @@ lean::inc(x_3); lean::inc(x_2); x_11 = l_reader__t_bind___at_lean_parser_with__trailing___spec__2___rarg(x_7, x_8, x_2, x_3, x_4); x_12 = lean::cnstr_get(x_11, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); if (lean::is_exclusive(x_11)) { - lean::cnstr_release(x_11, 0); - lean::cnstr_release(x_11, 1); + lean::cnstr_set(x_11, 0, lean::box(0)); + lean::cnstr_set(x_11, 1, lean::box(0)); x_16 = x_11; } else { + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_11); x_16 = lean::box(0); } @@ -12885,17 +12885,17 @@ if (lean::obj_tag(x_12) == 0) { obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_24; obj* x_25; obj* x_28; obj* x_29; obj* x_30; obj* x_32; obj* x_35; x_17 = lean::cnstr_get(x_12, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_12, 1); -lean::inc(x_19); x_21 = lean::cnstr_get(x_12, 2); -lean::inc(x_21); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); - lean::cnstr_release(x_12, 1); - lean::cnstr_release(x_12, 2); + lean::cnstr_set(x_12, 0, lean::box(0)); + lean::cnstr_set(x_12, 1, lean::box(0)); + lean::cnstr_set(x_12, 2, lean::box(0)); x_23 = x_12; } else { + lean::inc(x_17); + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_12); x_23 = lean::box(0); } @@ -12986,12 +12986,12 @@ obj* x_59; uint8 x_61; obj* x_62; lean::dec(x_1); lean::dec(x_2); x_59 = lean::cnstr_get(x_12, 0); -lean::inc(x_59); x_61 = lean::cnstr_get_scalar(x_12, sizeof(void*)*1); if (lean::is_exclusive(x_12)) { - lean::cnstr_release(x_12, 0); + lean::cnstr_set(x_12, 0, lean::box(0)); x_62 = x_12; } else { + lean::inc(x_59); lean::dec(x_12); x_62 = lean::box(0); } @@ -13071,14 +13071,14 @@ x_5 = lean_name_mk_string(x_4, x_0); x_6 = lean::string_iterator_remaining(x_2); x_7 = l_lean_parser_monad__parsec_foldl__aux___main___at___private_init_lean_parser_token_4__ident_x_27___spec__21(x_5, x_6, x_1, x_2, x_3); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -13102,14 +13102,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_id__part___at___private_init_lean_parser_token_4__ident_x_27___spec__1(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -13117,17 +13117,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_21; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -13205,12 +13205,12 @@ obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; ob lean::dec(x_17); lean::dec(x_1); x_54 = lean::cnstr_get(x_19, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); if (lean::is_exclusive(x_19)) { - lean::cnstr_release(x_19, 0); + lean::cnstr_set(x_19, 0, lean::box(0)); x_57 = x_19; } else { + lean::inc(x_54); lean::dec(x_19); x_57 = lean::box(0); } @@ -13241,12 +13241,12 @@ obj* x_66; uint8 x_68; obj* x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; ob lean::dec(x_1); lean::dec(x_0); x_66 = lean::cnstr_get(x_6, 0); -lean::inc(x_66); x_68 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_69 = x_6; } else { + lean::inc(x_66); lean::dec(x_6); x_69 = lean::box(0); } @@ -13334,14 +13334,14 @@ lean::inc(x_3); lean::inc(x_2); x_7 = lean::apply_3(x_0, x_2, x_3, x_4); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -13450,14 +13450,14 @@ x_7 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_parse_ lean::inc(x_1); x_9 = l_reader__t_orelse___at_lean_parser_parse__bin__lit___spec__1___rarg(x_6, x_7, x_1, x_2, x_3); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -13465,15 +13465,15 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_21; obj* x_24; obj* x_25; obj* x_27; x_15 = lean::cnstr_get(x_10, 1); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 2); -lean::inc(x_17); if (lean::is_exclusive(x_10)) { lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_19 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); lean::dec(x_10); x_19 = lean::box(0); } @@ -13564,12 +13564,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; lean::dec(x_1); lean::dec(x_0); x_55 = lean::cnstr_get(x_10, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_58 = x_10; } else { + lean::inc(x_55); lean::dec(x_10); x_58 = lean::box(0); } @@ -13599,14 +13599,14 @@ x_63 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_parse x_64 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_parse__bin__lit___spec__2___closed__2; x_65 = l_reader__t_orelse___at_lean_parser_parse__bin__lit___spec__1___rarg(x_63, x_64, x_1, x_2, x_3); x_66 = lean::cnstr_get(x_65, 0); -lean::inc(x_66); x_68 = lean::cnstr_get(x_65, 1); -lean::inc(x_68); if (lean::is_exclusive(x_65)) { - lean::cnstr_release(x_65, 0); - lean::cnstr_release(x_65, 1); + lean::cnstr_set(x_65, 0, lean::box(0)); + lean::cnstr_set(x_65, 1, lean::box(0)); x_70 = x_65; } else { + lean::inc(x_66); + lean::inc(x_68); lean::dec(x_65); x_70 = lean::box(0); } @@ -13614,15 +13614,15 @@ if (lean::obj_tag(x_66) == 0) { obj* x_71; obj* x_73; obj* x_75; obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; x_71 = lean::cnstr_get(x_66, 1); -lean::inc(x_71); x_73 = lean::cnstr_get(x_66, 2); -lean::inc(x_73); if (lean::is_exclusive(x_66)) { lean::cnstr_release(x_66, 0); - lean::cnstr_release(x_66, 1); - lean::cnstr_release(x_66, 2); + lean::cnstr_set(x_66, 1, lean::box(0)); + lean::cnstr_set(x_66, 2, lean::box(0)); x_75 = x_66; } else { + lean::inc(x_71); + lean::inc(x_73); lean::dec(x_66); x_75 = lean::box(0); } @@ -13650,12 +13650,12 @@ else { obj* x_81; uint8 x_83; obj* x_84; obj* x_85; obj* x_86; obj* x_87; x_81 = lean::cnstr_get(x_66, 0); -lean::inc(x_81); x_83 = lean::cnstr_get_scalar(x_66, sizeof(void*)*1); if (lean::is_exclusive(x_66)) { - lean::cnstr_release(x_66, 0); + lean::cnstr_set(x_66, 0, lean::box(0)); x_84 = x_66; } else { + lean::inc(x_81); lean::dec(x_66); x_84 = lean::box(0); } @@ -13757,12 +13757,12 @@ else { obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; x_47 = lean::cnstr_get(x_9, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_50 = x_9; } else { + lean::inc(x_47); lean::dec(x_9); x_50 = lean::box(0); } @@ -13791,14 +13791,14 @@ lean::dec(x_4); x_58 = lean::string_iterator_remaining(x_53); x_59 = l_lean_parser_monad__parsec_many1__aux_x_27___main___at_lean_parser_parse__bin__lit___spec__2(x_58, x_0, x_53, x_5); x_60 = lean::cnstr_get(x_59, 0); -lean::inc(x_60); x_62 = lean::cnstr_get(x_59, 1); -lean::inc(x_62); if (lean::is_exclusive(x_59)) { - lean::cnstr_release(x_59, 0); - lean::cnstr_release(x_59, 1); + lean::cnstr_set(x_59, 0, lean::box(0)); + lean::cnstr_set(x_59, 1, lean::box(0)); x_64 = x_59; } else { + lean::inc(x_60); + lean::inc(x_62); lean::dec(x_59); x_64 = lean::box(0); } @@ -13819,12 +13819,12 @@ else obj* x_70; uint8 x_72; obj* x_73; obj* x_74; obj* x_75; obj* x_76; lean::dec(x_0); x_70 = lean::cnstr_get(x_4, 0); -lean::inc(x_70); x_72 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_73 = x_4; } else { + lean::inc(x_70); lean::dec(x_4); x_73 = lean::box(0); } @@ -14038,14 +14038,14 @@ lean::dec(x_3); x_67 = lean::unbox_uint32(x_60); x_68 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_parse__oct__lit___spec__2(x_67, x_0, x_62, x_4); x_69 = lean::cnstr_get(x_68, 0); -lean::inc(x_69); x_71 = lean::cnstr_get(x_68, 1); -lean::inc(x_71); if (lean::is_exclusive(x_68)) { - lean::cnstr_release(x_68, 0); - lean::cnstr_release(x_68, 1); + lean::cnstr_set(x_68, 0, lean::box(0)); + lean::cnstr_set(x_68, 1, lean::box(0)); x_73 = x_68; } else { + lean::inc(x_69); + lean::inc(x_71); lean::dec(x_68); x_73 = lean::box(0); } @@ -14064,12 +14064,12 @@ else obj* x_77; uint8 x_79; obj* x_80; obj* x_81; obj* x_82; obj* x_83; lean::dec(x_0); x_77 = lean::cnstr_get(x_3, 0); -lean::inc(x_77); x_79 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_80 = x_3; } else { + lean::inc(x_77); lean::dec(x_3); x_80 = lean::box(0); } @@ -14167,12 +14167,12 @@ else { obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; x_47 = lean::cnstr_get(x_9, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_50 = x_9; } else { + lean::inc(x_47); lean::dec(x_9); x_50 = lean::box(0); } @@ -14200,14 +14200,14 @@ lean::inc(x_55); lean::dec(x_4); x_58 = l_lean_parser_monad__parsec_take__while1___at_lean_parser_parse__oct__lit___spec__1(x_0, x_53, x_5); x_59 = lean::cnstr_get(x_58, 0); -lean::inc(x_59); x_61 = lean::cnstr_get(x_58, 1); -lean::inc(x_61); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); - lean::cnstr_release(x_58, 1); + lean::cnstr_set(x_58, 0, lean::box(0)); + lean::cnstr_set(x_58, 1, lean::box(0)); x_63 = x_58; } else { + lean::inc(x_59); + lean::inc(x_61); lean::dec(x_58); x_63 = lean::box(0); } @@ -14226,12 +14226,12 @@ else obj* x_67; uint8 x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; lean::dec(x_0); x_67 = lean::cnstr_get(x_4, 0); -lean::inc(x_67); x_69 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_70 = x_4; } else { + lean::inc(x_67); lean::dec(x_4); x_70 = lean::box(0); } @@ -14480,14 +14480,14 @@ lean::dec(x_3); x_69 = lean::unbox_uint32(x_62); x_70 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_parse__hex__lit___spec__2(x_69, x_0, x_64, x_4); x_71 = lean::cnstr_get(x_70, 0); -lean::inc(x_71); x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); if (lean::is_exclusive(x_70)) { - lean::cnstr_release(x_70, 0); - lean::cnstr_release(x_70, 1); + lean::cnstr_set(x_70, 0, lean::box(0)); + lean::cnstr_set(x_70, 1, lean::box(0)); x_75 = x_70; } else { + lean::inc(x_71); + lean::inc(x_73); lean::dec(x_70); x_75 = lean::box(0); } @@ -14506,12 +14506,12 @@ else obj* x_79; uint8 x_81; obj* x_82; obj* x_83; obj* x_84; obj* x_85; lean::dec(x_0); x_79 = lean::cnstr_get(x_3, 0); -lean::inc(x_79); x_81 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_82 = x_3; } else { + lean::inc(x_79); lean::dec(x_3); x_82 = lean::box(0); } @@ -14609,12 +14609,12 @@ else { obj* x_47; uint8 x_49; obj* x_50; obj* x_51; obj* x_52; x_47 = lean::cnstr_get(x_9, 0); -lean::inc(x_47); x_49 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_50 = x_9; } else { + lean::inc(x_47); lean::dec(x_9); x_50 = lean::box(0); } @@ -14642,14 +14642,14 @@ lean::inc(x_55); lean::dec(x_4); x_58 = l_lean_parser_monad__parsec_take__while1___at_lean_parser_parse__hex__lit___spec__1(x_0, x_53, x_5); x_59 = lean::cnstr_get(x_58, 0); -lean::inc(x_59); x_61 = lean::cnstr_get(x_58, 1); -lean::inc(x_61); if (lean::is_exclusive(x_58)) { - lean::cnstr_release(x_58, 0); - lean::cnstr_release(x_58, 1); + lean::cnstr_set(x_58, 0, lean::box(0)); + lean::cnstr_set(x_58, 1, lean::box(0)); x_63 = x_58; } else { + lean::inc(x_59); + lean::inc(x_61); lean::dec(x_58); x_63 = lean::box(0); } @@ -14668,12 +14668,12 @@ else obj* x_67; uint8 x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; lean::dec(x_0); x_67 = lean::cnstr_get(x_4, 0); -lean::inc(x_67); x_69 = lean::cnstr_get_scalar(x_4, sizeof(void*)*1); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); + lean::cnstr_set(x_4, 0, lean::box(0)); x_70 = x_4; } else { + lean::inc(x_67); lean::dec(x_4); x_70 = lean::box(0); } @@ -15575,14 +15575,14 @@ x_6 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_8 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -15620,12 +15620,12 @@ else obj* x_33; uint8 x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_39; lean::dec(x_0); x_33 = lean::cnstr_get(x_15, 0); -lean::inc(x_33); x_35 = lean::cnstr_get_scalar(x_15, sizeof(void*)*1); if (lean::is_exclusive(x_15)) { - lean::cnstr_release(x_15, 0); + lean::cnstr_set(x_15, 0, lean::box(0)); x_36 = x_15; } else { + lean::inc(x_33); lean::dec(x_15); x_36 = lean::box(0); } @@ -15665,14 +15665,14 @@ x_48 = l_mjoin___rarg___closed__1; lean::inc(x_0); x_50 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_46, x_48, x_47, x_47, x_0, x_1, x_2); x_51 = lean::cnstr_get(x_50, 0); -lean::inc(x_51); x_53 = lean::cnstr_get(x_50, 1); -lean::inc(x_53); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); - lean::cnstr_release(x_50, 1); + lean::cnstr_set(x_50, 0, lean::box(0)); + lean::cnstr_set(x_50, 1, lean::box(0)); x_55 = x_50; } else { + lean::inc(x_51); + lean::inc(x_53); lean::dec(x_50); x_55 = lean::box(0); } @@ -15710,12 +15710,12 @@ else obj* x_75; uint8 x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; lean::dec(x_0); x_75 = lean::cnstr_get(x_57, 0); -lean::inc(x_75); x_77 = lean::cnstr_get_scalar(x_57, sizeof(void*)*1); if (lean::is_exclusive(x_57)) { - lean::cnstr_release(x_57, 0); + lean::cnstr_set(x_57, 0, lean::box(0)); x_78 = x_57; } else { + lean::inc(x_75); lean::dec(x_57); x_78 = lean::box(0); } @@ -15744,14 +15744,14 @@ lean::inc(x_1); x_83 = lean::string_iterator_next(x_1); x_84 = l_lean_parser_monad__parsec_take__while__cont___at_lean_parser_number_x_27___spec__6(x_1, x_0, x_83, x_2); x_85 = lean::cnstr_get(x_84, 0); -lean::inc(x_85); x_87 = lean::cnstr_get(x_84, 1); -lean::inc(x_87); if (lean::is_exclusive(x_84)) { - lean::cnstr_release(x_84, 0); - lean::cnstr_release(x_84, 1); + lean::cnstr_set(x_84, 0, lean::box(0)); + lean::cnstr_set(x_84, 1, lean::box(0)); x_89 = x_84; } else { + lean::inc(x_85); + lean::inc(x_87); lean::dec(x_84); x_89 = lean::box(0); } @@ -15774,14 +15774,14 @@ _start: { obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_12; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_8 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_0); x_8 = lean::box(0); } @@ -15795,17 +15795,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_15; obj* x_17; obj* x_19; obj* x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; x_15 = lean::cnstr_get(x_10, 0); -lean::inc(x_15); x_17 = lean::cnstr_get(x_10, 1); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 2); -lean::inc(x_19); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_21 = x_10; } else { + lean::inc(x_15); + lean::inc(x_17); + lean::inc(x_19); lean::dec(x_10); x_21 = lean::box(0); } @@ -15839,12 +15839,12 @@ else obj* x_31; uint8 x_33; obj* x_34; obj* x_35; obj* x_36; obj* x_37; lean::dec(x_4); x_31 = lean::cnstr_get(x_10, 0); -lean::inc(x_31); x_33 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_34 = x_10; } else { + lean::inc(x_31); lean::dec(x_10); x_34 = lean::box(0); } @@ -15880,14 +15880,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_8; obj* x_9; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -15920,17 +15920,17 @@ if (lean::obj_tag(x_14) == 0) { obj* x_19; obj* x_21; obj* x_23; obj* x_25; obj* x_26; x_19 = lean::cnstr_get(x_14, 0); -lean::inc(x_19); x_21 = lean::cnstr_get(x_14, 1); -lean::inc(x_21); x_23 = lean::cnstr_get(x_14, 2); -lean::inc(x_23); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); - lean::cnstr_release(x_14, 1); - lean::cnstr_release(x_14, 2); + lean::cnstr_set(x_14, 0, lean::box(0)); + lean::cnstr_set(x_14, 1, lean::box(0)); + lean::cnstr_set(x_14, 2, lean::box(0)); x_25 = x_14; } else { + lean::inc(x_19); + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_14); x_25 = lean::box(0); } @@ -16071,12 +16071,12 @@ else { obj* x_77; uint8 x_79; obj* x_80; obj* x_81; obj* x_82; x_77 = lean::cnstr_get(x_14, 0); -lean::inc(x_77); x_79 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); if (lean::is_exclusive(x_14)) { - lean::cnstr_release(x_14, 0); + lean::cnstr_set(x_14, 0, lean::box(0)); x_80 = x_14; } else { + lean::inc(x_77); lean::dec(x_14); x_80 = lean::box(0); } @@ -16098,13 +16098,13 @@ if (lean::obj_tag(x_6) == 0) { obj* x_83; obj* x_85; obj* x_86; obj* x_87; obj* x_88; x_83 = lean::cnstr_get(x_6, 0); -lean::inc(x_83); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); lean::cnstr_release(x_6, 1); lean::cnstr_release(x_6, 2); x_85 = x_6; } else { + lean::inc(x_83); lean::dec(x_6); x_85 = lean::box(0); } @@ -16146,11 +16146,11 @@ else { obj* x_93; obj* x_95; obj* x_96; x_93 = lean::cnstr_get(x_9, 0); -lean::inc(x_93); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_95 = x_9; } else { + lean::inc(x_93); lean::dec(x_9); x_95 = lean::box(0); } @@ -16348,14 +16348,14 @@ lean::inc(x_2); lean::inc(x_0); x_20 = l_list_mfoldr___main___at_lean_parser_number_x_27___spec__13(x_0, x_15, x_2, x_3, x_4); x_21 = lean::cnstr_get(x_20, 0); -lean::inc(x_21); x_23 = lean::cnstr_get(x_20, 1); -lean::inc(x_23); if (lean::is_exclusive(x_20)) { - lean::cnstr_release(x_20, 0); - lean::cnstr_release(x_20, 1); + lean::cnstr_set(x_20, 0, lean::box(0)); + lean::cnstr_set(x_20, 1, lean::box(0)); x_25 = x_20; } else { + lean::inc(x_21); + lean::inc(x_23); lean::dec(x_20); x_25 = lean::box(0); } @@ -16392,12 +16392,12 @@ lean::dec(x_0); lean::dec(x_2); lean::dec(x_13); x_44 = lean::cnstr_get(x_21, 0); -lean::inc(x_44); x_46 = lean::cnstr_get_scalar(x_21, sizeof(void*)*1); if (lean::is_exclusive(x_21)) { - lean::cnstr_release(x_21, 0); + lean::cnstr_set(x_21, 0, lean::box(0)); x_47 = x_21; } else { + lean::inc(x_44); lean::dec(x_21); x_47 = lean::box(0); } @@ -16431,14 +16431,14 @@ x_6 = l_list_map___main___at_lean_parser_number_x_27___spec__9(x_5); lean::inc(x_2); x_8 = l_list_mfoldr___main___at_lean_parser_number_x_27___spec__13(x_2, x_6, x_1, x_2, x_3); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -16466,12 +16466,12 @@ else { obj* x_23; uint8 x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; x_23 = lean::cnstr_get(x_9, 0); -lean::inc(x_23); x_25 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_26 = x_9; } else { + lean::inc(x_23); lean::dec(x_9); x_26 = lean::box(0); } @@ -16503,14 +16503,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_1); x_5 = l_lean_parser_monad__parsec_longest__match___at_lean_parser_number_x_27___spec__10(x_0, x_1, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -16518,17 +16518,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -16587,12 +16587,12 @@ else obj* x_39; uint8 x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; lean::dec(x_1); x_39 = lean::cnstr_get(x_6, 0); -lean::inc(x_39); x_41 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_42 = x_6; } else { + lean::inc(x_39); lean::dec(x_6); x_42 = lean::box(0); } @@ -16621,14 +16621,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_monad__parsec_take__while1___at_lean_parser_number_x_27___spec__1(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -16636,15 +16636,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -16674,12 +16674,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -16708,14 +16708,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_parse__bin__lit(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -16723,15 +16723,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -16761,12 +16761,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -16795,14 +16795,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_parse__oct__lit(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -16810,15 +16810,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -16848,12 +16848,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -16882,14 +16882,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_parse__hex__lit(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -16897,15 +16897,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -16935,12 +16935,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -17067,11 +17067,11 @@ else { obj* x_3; obj* x_5; obj* x_6; x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); + lean::cnstr_set(x_1, 0, lean::box(0)); x_5 = x_1; } else { + lean::inc(x_3); lean::dec(x_1); x_5 = lean::box(0); } @@ -17197,14 +17197,14 @@ x_5 = l_lean_parser_monad__parsec_eoi__error___rarg___closed__1; x_6 = l_mjoin___rarg___closed__1; x_7 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_5, x_6, x_4, x_4, x_0, x_1, x_2); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -17236,14 +17236,14 @@ x_23 = lean::box(0); x_24 = l_mjoin___rarg___closed__1; x_25 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_22, x_24, x_23, x_23, x_0, x_1, x_2); x_26 = lean::cnstr_get(x_25, 0); -lean::inc(x_26); x_28 = lean::cnstr_get(x_25, 1); -lean::inc(x_28); if (lean::is_exclusive(x_25)) { - lean::cnstr_release(x_25, 0); - lean::cnstr_release(x_25, 1); + lean::cnstr_set(x_25, 0, lean::box(0)); + lean::cnstr_set(x_25, 1, lean::box(0)); x_30 = x_25; } else { + lean::inc(x_26); + lean::inc(x_28); lean::dec(x_25); x_30 = lean::box(0); } @@ -17303,17 +17303,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; uint32 x_21; obj* x_22; obj* x_23; obj* x_24; obj* x_26; obj* x_27; obj* x_28; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -17340,12 +17340,12 @@ else { obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; x_29 = lean::cnstr_get(x_9, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_32 = x_9; } else { + lean::inc(x_29); lean::dec(x_9); x_32 = lean::box(0); } @@ -17699,17 +17699,17 @@ if (lean::obj_tag(x_143) == 0) { obj* x_224; obj* x_226; obj* x_228; obj* x_230; uint32 x_231; obj* x_232; obj* x_233; obj* x_234; obj* x_236; obj* x_237; obj* x_239; obj* x_240; obj* x_241; obj* x_242; obj* x_243; obj* x_244; obj* x_245; obj* x_246; x_224 = lean::cnstr_get(x_143, 0); -lean::inc(x_224); x_226 = lean::cnstr_get(x_143, 1); -lean::inc(x_226); x_228 = lean::cnstr_get(x_143, 2); -lean::inc(x_228); if (lean::is_exclusive(x_143)) { - lean::cnstr_release(x_143, 0); - lean::cnstr_release(x_143, 1); - lean::cnstr_release(x_143, 2); + lean::cnstr_set(x_143, 0, lean::box(0)); + lean::cnstr_set(x_143, 1, lean::box(0)); + lean::cnstr_set(x_143, 2, lean::box(0)); x_230 = x_143; } else { + lean::inc(x_224); + lean::inc(x_226); + lean::inc(x_228); lean::dec(x_143); x_230 = lean::box(0); } @@ -17744,12 +17744,12 @@ else { obj* x_247; uint8 x_249; obj* x_250; obj* x_251; obj* x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_257; x_247 = lean::cnstr_get(x_143, 0); -lean::inc(x_247); x_249 = lean::cnstr_get_scalar(x_143, sizeof(void*)*1); if (lean::is_exclusive(x_143)) { - lean::cnstr_release(x_143, 0); + lean::cnstr_set(x_143, 0, lean::box(0)); x_250 = x_143; } else { + lean::inc(x_247); lean::dec(x_143); x_250 = lean::box(0); } @@ -17779,17 +17779,17 @@ if (lean::obj_tag(x_46) == 0) { obj* x_258; obj* x_260; obj* x_262; obj* x_264; uint32 x_265; obj* x_266; obj* x_267; obj* x_268; obj* x_270; obj* x_271; obj* x_273; obj* x_274; obj* x_275; x_258 = lean::cnstr_get(x_46, 0); -lean::inc(x_258); x_260 = lean::cnstr_get(x_46, 1); -lean::inc(x_260); x_262 = lean::cnstr_get(x_46, 2); -lean::inc(x_262); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); - lean::cnstr_release(x_46, 1); - lean::cnstr_release(x_46, 2); + lean::cnstr_set(x_46, 0, lean::box(0)); + lean::cnstr_set(x_46, 1, lean::box(0)); + lean::cnstr_set(x_46, 2, lean::box(0)); x_264 = x_46; } else { + lean::inc(x_258); + lean::inc(x_260); + lean::inc(x_262); lean::dec(x_46); x_264 = lean::box(0); } @@ -17819,12 +17819,12 @@ else { obj* x_276; uint8 x_278; obj* x_279; obj* x_280; obj* x_281; x_276 = lean::cnstr_get(x_46, 0); -lean::inc(x_276); x_278 = lean::cnstr_get_scalar(x_46, sizeof(void*)*1); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_279 = x_46; } else { + lean::inc(x_276); lean::dec(x_46); x_279 = lean::box(0); } @@ -17853,14 +17853,14 @@ lean::inc(x_1); lean::inc(x_0); x_5 = l_lean_parser_monad__parsec_any___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__2(x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -17868,17 +17868,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_20; obj* x_22; uint32 x_24; uint32 x_25; uint8 x_26; x_11 = lean::cnstr_get(x_6, 0); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 1); -lean::inc(x_13); x_15 = lean::cnstr_get(x_6, 2); -lean::inc(x_15); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_17 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); + lean::inc(x_15); lean::dec(x_6); x_17 = lean::box(0); } @@ -18063,12 +18063,12 @@ lean::dec(x_90); lean::dec(x_17); lean::dec(x_76); x_141 = lean::cnstr_get(x_98, 0); -lean::inc(x_141); x_143 = lean::cnstr_get_scalar(x_98, sizeof(void*)*1); if (lean::is_exclusive(x_98)) { - lean::cnstr_release(x_98, 0); + lean::cnstr_set(x_98, 0, lean::box(0)); x_144 = x_98; } else { + lean::inc(x_141); lean::dec(x_98); x_144 = lean::box(0); } @@ -18104,12 +18104,12 @@ lean::dec(x_17); lean::dec(x_0); lean::dec(x_76); x_158 = lean::cnstr_get(x_85, 0); -lean::inc(x_158); x_160 = lean::cnstr_get_scalar(x_85, sizeof(void*)*1); if (lean::is_exclusive(x_85)) { - lean::cnstr_release(x_85, 0); + lean::cnstr_set(x_85, 0, lean::box(0)); x_161 = x_85; } else { + lean::inc(x_158); lean::dec(x_85); x_161 = lean::box(0); } @@ -18143,12 +18143,12 @@ lean::dec(x_62); lean::dec(x_17); lean::dec(x_0); x_173 = lean::cnstr_get(x_71, 0); -lean::inc(x_173); x_175 = lean::cnstr_get_scalar(x_71, sizeof(void*)*1); if (lean::is_exclusive(x_71)) { - lean::cnstr_release(x_71, 0); + lean::cnstr_set(x_71, 0, lean::box(0)); x_176 = x_71; } else { + lean::inc(x_173); lean::dec(x_71); x_176 = lean::box(0); } @@ -18180,12 +18180,12 @@ obj* x_186; uint8 x_188; obj* x_189; obj* x_190; obj* x_191; obj* x_192; obj* x_ lean::dec(x_17); lean::dec(x_0); x_186 = lean::cnstr_get(x_57, 0); -lean::inc(x_186); x_188 = lean::cnstr_get_scalar(x_57, sizeof(void*)*1); if (lean::is_exclusive(x_57)) { - lean::cnstr_release(x_57, 0); + lean::cnstr_set(x_57, 0, lean::box(0)); x_189 = x_57; } else { + lean::inc(x_186); lean::dec(x_57); x_189 = lean::box(0); } @@ -18239,14 +18239,14 @@ lean::dec(x_10); lean::inc(x_0); x_207 = l_lean_parser_parse__hex__digit___at_lean_parser_string__lit_x_27___spec__5(x_0, x_13, x_8); x_208 = lean::cnstr_get(x_207, 0); -lean::inc(x_208); x_210 = lean::cnstr_get(x_207, 1); -lean::inc(x_210); if (lean::is_exclusive(x_207)) { - lean::cnstr_release(x_207, 0); - lean::cnstr_release(x_207, 1); + lean::cnstr_set(x_207, 0, lean::box(0)); + lean::cnstr_set(x_207, 1, lean::box(0)); x_212 = x_207; } else { + lean::inc(x_208); + lean::inc(x_210); lean::dec(x_207); x_212 = lean::box(0); } @@ -18254,17 +18254,17 @@ if (lean::obj_tag(x_208) == 0) { obj* x_213; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_221; obj* x_223; x_213 = lean::cnstr_get(x_208, 0); -lean::inc(x_213); x_215 = lean::cnstr_get(x_208, 1); -lean::inc(x_215); x_217 = lean::cnstr_get(x_208, 2); -lean::inc(x_217); if (lean::is_exclusive(x_208)) { - lean::cnstr_release(x_208, 0); - lean::cnstr_release(x_208, 1); - lean::cnstr_release(x_208, 2); + lean::cnstr_set(x_208, 0, lean::box(0)); + lean::cnstr_set(x_208, 1, lean::box(0)); + lean::cnstr_set(x_208, 2, lean::box(0)); x_219 = x_208; } else { + lean::inc(x_213); + lean::inc(x_215); + lean::inc(x_217); lean::dec(x_208); x_219 = lean::box(0); } @@ -18320,12 +18320,12 @@ obj* x_250; uint8 x_252; obj* x_253; obj* x_254; obj* x_255; obj* x_256; obj* x_ lean::dec(x_219); lean::dec(x_213); x_250 = lean::cnstr_get(x_221, 0); -lean::inc(x_250); x_252 = lean::cnstr_get_scalar(x_221, sizeof(void*)*1); if (lean::is_exclusive(x_221)) { - lean::cnstr_release(x_221, 0); + lean::cnstr_set(x_221, 0, lean::box(0)); x_253 = x_221; } else { + lean::inc(x_250); lean::dec(x_221); x_253 = lean::box(0); } @@ -18356,12 +18356,12 @@ else obj* x_262; uint8 x_264; obj* x_265; obj* x_266; obj* x_267; obj* x_268; obj* x_269; obj* x_270; obj* x_271; lean::dec(x_0); x_262 = lean::cnstr_get(x_208, 0); -lean::inc(x_262); x_264 = lean::cnstr_get_scalar(x_208, sizeof(void*)*1); if (lean::is_exclusive(x_208)) { - lean::cnstr_release(x_208, 0); + lean::cnstr_set(x_208, 0, lean::box(0)); x_265 = x_208; } else { + lean::inc(x_262); lean::dec(x_208); x_265 = lean::box(0); } @@ -18504,12 +18504,12 @@ obj* x_325; uint8 x_327; obj* x_328; obj* x_329; obj* x_330; obj* x_331; obj* x_ lean::dec(x_1); lean::dec(x_0); x_325 = lean::cnstr_get(x_6, 0); -lean::inc(x_325); x_327 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_328 = x_6; } else { + lean::inc(x_325); lean::dec(x_6); x_328 = lean::box(0); } @@ -18546,14 +18546,14 @@ obj* x_8; obj* x_9; obj* x_11; obj* x_13; lean::inc(x_2); x_8 = l_lean_parser_monad__parsec_any___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__2(x_2, x_3, x_4); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -18561,17 +18561,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; obj* x_22; uint32 x_24; uint32 x_25; uint8 x_26; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -18679,12 +18679,12 @@ lean::dec(x_1); lean::dec(x_2); lean::dec(x_22); x_74 = lean::cnstr_get(x_48, 0); -lean::inc(x_74); x_76 = lean::cnstr_get_scalar(x_48, sizeof(void*)*1); if (lean::is_exclusive(x_48)) { - lean::cnstr_release(x_48, 0); + lean::cnstr_set(x_48, 0, lean::box(0)); x_77 = x_48; } else { + lean::inc(x_74); lean::dec(x_48); x_77 = lean::box(0); } @@ -18715,12 +18715,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_85 = lean::cnstr_get(x_9, 0); -lean::inc(x_85); x_87 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_88 = x_9; } else { + lean::inc(x_85); lean::dec(x_9); x_88 = lean::box(0); } @@ -18749,14 +18749,14 @@ lean::dec(x_0); x_93 = 34; x_94 = l_lean_parser_monad__parsec_ch___at___private_init_lean_parser_token_4__ident_x_27___spec__11(x_93, x_2, x_3, x_4); x_95 = lean::cnstr_get(x_94, 0); -lean::inc(x_95); x_97 = lean::cnstr_get(x_94, 1); -lean::inc(x_97); if (lean::is_exclusive(x_94)) { - lean::cnstr_release(x_94, 0); - lean::cnstr_release(x_94, 1); + lean::cnstr_set(x_94, 0, lean::box(0)); + lean::cnstr_set(x_94, 1, lean::box(0)); x_99 = x_94; } else { + lean::inc(x_95); + lean::inc(x_97); lean::dec(x_94); x_99 = lean::box(0); } @@ -18764,15 +18764,15 @@ if (lean::obj_tag(x_95) == 0) { obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_106; obj* x_107; obj* x_108; x_100 = lean::cnstr_get(x_95, 1); -lean::inc(x_100); x_102 = lean::cnstr_get(x_95, 2); -lean::inc(x_102); if (lean::is_exclusive(x_95)) { lean::cnstr_release(x_95, 0); - lean::cnstr_release(x_95, 1); - lean::cnstr_release(x_95, 2); + lean::cnstr_set(x_95, 1, lean::box(0)); + lean::cnstr_set(x_95, 2, lean::box(0)); x_104 = x_95; } else { + lean::inc(x_100); + lean::inc(x_102); lean::dec(x_95); x_104 = lean::box(0); } @@ -18800,12 +18800,12 @@ else obj* x_110; uint8 x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; lean::dec(x_1); x_110 = lean::cnstr_get(x_95, 0); -lean::inc(x_110); x_112 = lean::cnstr_get_scalar(x_95, sizeof(void*)*1); if (lean::is_exclusive(x_95)) { - lean::cnstr_release(x_95, 0); + lean::cnstr_set(x_95, 0, lean::box(0)); x_113 = x_95; } else { + lean::inc(x_110); lean::dec(x_95); x_113 = lean::box(0); } @@ -18837,14 +18837,14 @@ x_3 = 34; lean::inc(x_0); x_5 = l_lean_parser_monad__parsec_ch___at___private_init_lean_parser_token_4__ident_x_27___spec__11(x_3, x_0, x_1, x_2); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -18881,12 +18881,12 @@ else obj* x_29; uint8 x_31; obj* x_32; obj* x_33; obj* x_34; obj* x_35; lean::dec(x_0); x_29 = lean::cnstr_get(x_6, 0); -lean::inc(x_29); x_31 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_32 = x_6; } else { + lean::inc(x_29); lean::dec(x_6); x_32 = lean::box(0); } @@ -18915,14 +18915,14 @@ _start: obj* x_4; obj* x_5; obj* x_7; obj* x_9; x_4 = l_lean_parser_parse__string__literal___at_lean_parser_string__lit_x_27___spec__1(x_1, x_2, x_3); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -18930,15 +18930,15 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_5, 1); -lean::inc(x_10); x_12 = lean::cnstr_get(x_5, 2); -lean::inc(x_12); if (lean::is_exclusive(x_5)) { lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_14 = x_5; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_5); x_14 = lean::box(0); } @@ -18968,12 +18968,12 @@ else obj* x_22; uint8 x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; lean::dec(x_0); x_22 = lean::cnstr_get(x_5, 0); -lean::inc(x_22); x_24 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_25 = x_5; } else { + lean::inc(x_22); lean::dec(x_5); x_25 = lean::box(0); } @@ -19060,14 +19060,14 @@ lean::inc(x_1); lean::inc(x_0); x_7 = l_lean_parser_combinators_node___at_lean_parser_detail__ident__part_parser_lean_parser_has__tokens___spec__15(x_3, x_4, x_0, x_1, x_2); x_8 = lean::cnstr_get(x_7, 0); -lean::inc(x_8); x_10 = lean::cnstr_get(x_7, 1); -lean::inc(x_10); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); x_12 = x_7; } else { + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_7); x_12 = lean::box(0); } @@ -19138,14 +19138,14 @@ obj* x_6; obj* x_7; obj* x_9; obj* x_11; lean::inc(x_2); x_6 = l___private_init_lean_parser_token_4__ident_x_27(x_2, x_3, x_4); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -19153,17 +19153,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_23; obj* x_25; uint8 x_28; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -19235,12 +19235,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_53 = lean::cnstr_get(x_7, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_56 = x_7; } else { + lean::inc(x_53); lean::dec(x_7); x_56 = lean::box(0); } @@ -19412,13 +19412,13 @@ if (lean::obj_tag(x_3) == 0) { obj* x_77; obj* x_79; obj* x_80; obj* x_81; obj* x_82; x_77 = lean::cnstr_get(x_3, 0); -lean::inc(x_77); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); lean::cnstr_release(x_3, 1); lean::cnstr_release(x_3, 2); x_79 = x_3; } else { + lean::inc(x_77); lean::dec(x_3); x_79 = lean::box(0); } @@ -19454,14 +19454,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; x_3 = l_lean_parser_parsec__t_lookahead___at_lean_parser_token___spec__1(x_0, x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -19469,17 +19469,17 @@ if (lean::obj_tag(x_4) == 0) { obj* x_9; obj* x_11; obj* x_13; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; x_9 = lean::cnstr_get(x_4, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_4, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_4, 2); -lean::inc(x_13); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); - lean::cnstr_release(x_4, 2); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); + lean::cnstr_set(x_4, 2, lean::box(0)); x_15 = x_4; } else { + lean::inc(x_9); + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_4); x_15 = lean::box(0); } @@ -19564,14 +19564,14 @@ obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::inc(x_2); x_5 = l_lean_parser_whitespace(x_1, x_2, x_3); x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -19579,15 +19579,15 @@ if (lean::obj_tag(x_6) == 0) { obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_11 = lean::cnstr_get(x_6, 1); -lean::inc(x_11); x_13 = lean::cnstr_get(x_6, 2); -lean::inc(x_13); if (lean::is_exclusive(x_6)) { lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_15 = x_6; } else { + lean::inc(x_11); + lean::inc(x_13); lean::dec(x_6); x_15 = lean::box(0); } @@ -19611,17 +19611,17 @@ if (lean::obj_tag(x_22) == 0) { obj* x_23; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_31; obj* x_32; obj* x_33; x_23 = lean::cnstr_get(x_22, 0); -lean::inc(x_23); x_25 = lean::cnstr_get(x_22, 1); -lean::inc(x_25); x_27 = lean::cnstr_get(x_22, 2); -lean::inc(x_27); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); - lean::cnstr_release(x_22, 1); - lean::cnstr_release(x_22, 2); + lean::cnstr_set(x_22, 0, lean::box(0)); + lean::cnstr_set(x_22, 1, lean::box(0)); + lean::cnstr_set(x_22, 2, lean::box(0)); x_29 = x_22; } else { + lean::inc(x_23); + lean::inc(x_25); + lean::inc(x_27); lean::dec(x_22); x_29 = lean::box(0); } @@ -19649,12 +19649,12 @@ else obj* x_35; uint8 x_37; obj* x_38; obj* x_39; obj* x_40; obj* x_41; lean::dec(x_0); x_35 = lean::cnstr_get(x_22, 0); -lean::inc(x_35); x_37 = lean::cnstr_get_scalar(x_22, sizeof(void*)*1); if (lean::is_exclusive(x_22)) { - lean::cnstr_release(x_22, 0); + lean::cnstr_set(x_22, 0, lean::box(0)); x_38 = x_22; } else { + lean::inc(x_35); lean::dec(x_22); x_38 = lean::box(0); } @@ -19681,12 +19681,12 @@ else obj* x_43; uint8 x_45; obj* x_46; obj* x_47; obj* x_48; obj* x_49; obj* x_50; lean::dec(x_2); x_43 = lean::cnstr_get(x_6, 0); -lean::inc(x_43); x_45 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_46 = x_6; } else { + lean::inc(x_43); lean::dec(x_6); x_46 = lean::box(0); } @@ -19704,17 +19704,17 @@ if (lean::obj_tag(x_50) == 0) { obj* x_51; obj* x_53; obj* x_55; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; x_51 = lean::cnstr_get(x_50, 0); -lean::inc(x_51); x_53 = lean::cnstr_get(x_50, 1); -lean::inc(x_53); x_55 = lean::cnstr_get(x_50, 2); -lean::inc(x_55); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); - lean::cnstr_release(x_50, 1); - lean::cnstr_release(x_50, 2); + lean::cnstr_set(x_50, 0, lean::box(0)); + lean::cnstr_set(x_50, 1, lean::box(0)); + lean::cnstr_set(x_50, 2, lean::box(0)); x_57 = x_50; } else { + lean::inc(x_51); + lean::inc(x_53); + lean::inc(x_55); lean::dec(x_50); x_57 = lean::box(0); } @@ -19742,12 +19742,12 @@ else obj* x_63; uint8 x_65; obj* x_66; obj* x_67; obj* x_68; obj* x_69; lean::dec(x_0); x_63 = lean::cnstr_get(x_50, 0); -lean::inc(x_63); x_65 = lean::cnstr_get_scalar(x_50, sizeof(void*)*1); if (lean::is_exclusive(x_50)) { - lean::cnstr_release(x_50, 0); + lean::cnstr_set(x_50, 0, lean::box(0)); x_66 = x_50; } else { + lean::inc(x_63); lean::dec(x_50); x_66 = lean::box(0); } @@ -19864,13 +19864,13 @@ if (lean::obj_tag(x_31) == 0) obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_43; obj* x_45; obj* x_46; obj* x_48; obj* x_50; obj* x_51; obj* x_54; obj* x_55; obj* x_56; obj* x_57; lean::dec(x_33); x_37 = lean::cnstr_get(x_31, 2); -lean::inc(x_37); if (lean::is_exclusive(x_31)) { lean::cnstr_release(x_31, 0); lean::cnstr_release(x_31, 1); - lean::cnstr_release(x_31, 2); + lean::cnstr_set(x_31, 2, lean::box(0)); x_39 = x_31; } else { + lean::inc(x_37); lean::dec(x_31); x_39 = lean::box(0); } @@ -19912,12 +19912,12 @@ obj* x_60; uint8 x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; obj* x_67; lean::dec(x_6); lean::dec(x_18); x_60 = lean::cnstr_get(x_31, 0); -lean::inc(x_60); x_62 = lean::cnstr_get_scalar(x_31, sizeof(void*)*1); if (lean::is_exclusive(x_31)) { - lean::cnstr_release(x_31, 0); + lean::cnstr_set(x_31, 0, lean::box(0)); x_63 = x_31; } else { + lean::inc(x_60); lean::dec(x_31); x_63 = lean::box(0); } @@ -19985,12 +19985,12 @@ else { obj* x_90; uint8 x_92; obj* x_93; obj* x_94; obj* x_95; obj* x_97; obj* x_101; obj* x_102; obj* x_104; x_90 = lean::cnstr_get(x_3, 0); -lean::inc(x_90); x_92 = lean::cnstr_get_scalar(x_3, sizeof(void*)*1); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); + lean::cnstr_set(x_3, 0, lean::box(0)); x_93 = x_3; } else { + lean::inc(x_90); lean::dec(x_3); x_93 = lean::box(0); } @@ -20008,17 +20008,17 @@ if (lean::obj_tag(x_102) == 0) { obj* x_107; obj* x_109; obj* x_111; obj* x_113; obj* x_115; obj* x_116; obj* x_118; x_107 = lean::cnstr_get(x_102, 0); -lean::inc(x_107); x_109 = lean::cnstr_get(x_102, 1); -lean::inc(x_109); x_111 = lean::cnstr_get(x_102, 2); -lean::inc(x_111); if (lean::is_exclusive(x_102)) { - lean::cnstr_release(x_102, 0); - lean::cnstr_release(x_102, 1); - lean::cnstr_release(x_102, 2); + lean::cnstr_set(x_102, 0, lean::box(0)); + lean::cnstr_set(x_102, 1, lean::box(0)); + lean::cnstr_set(x_102, 2, lean::box(0)); x_113 = x_102; } else { + lean::inc(x_107); + lean::inc(x_109); + lean::inc(x_111); lean::dec(x_102); x_113 = lean::box(0); } @@ -20199,12 +20199,12 @@ lean::dec(x_1); lean::dec(x_2); lean::dec(x_113); x_219 = lean::cnstr_get(x_184, 0); -lean::inc(x_219); x_221 = lean::cnstr_get_scalar(x_184, sizeof(void*)*1); if (lean::is_exclusive(x_184)) { - lean::cnstr_release(x_184, 0); + lean::cnstr_set(x_184, 0, lean::box(0)); x_222 = x_184; } else { + lean::inc(x_219); lean::dec(x_184); x_222 = lean::box(0); } @@ -20232,12 +20232,12 @@ lean::dec(x_0); lean::dec(x_2); lean::dec(x_113); x_232 = lean::cnstr_get(x_128, 0); -lean::inc(x_232); x_234 = lean::cnstr_get_scalar(x_128, sizeof(void*)*1); if (lean::is_exclusive(x_128)) { - lean::cnstr_release(x_128, 0); + lean::cnstr_set(x_128, 0, lean::box(0)); x_235 = x_128; } else { + lean::inc(x_232); lean::dec(x_128); x_235 = lean::box(0); } @@ -20284,12 +20284,12 @@ lean::dec(x_2); lean::dec(x_113); lean::dec(x_107); x_256 = lean::cnstr_get(x_116, 0); -lean::inc(x_256); x_258 = lean::cnstr_get_scalar(x_116, sizeof(void*)*1); if (lean::is_exclusive(x_116)) { - lean::cnstr_release(x_116, 0); + lean::cnstr_set(x_116, 0, lean::box(0)); x_259 = x_116; } else { + lean::inc(x_256); lean::dec(x_116); x_259 = lean::box(0); } @@ -20314,12 +20314,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_266 = lean::cnstr_get(x_102, 0); -lean::inc(x_266); x_268 = lean::cnstr_get_scalar(x_102, sizeof(void*)*1); if (lean::is_exclusive(x_102)) { - lean::cnstr_release(x_102, 0); + lean::cnstr_set(x_102, 0, lean::box(0)); x_269 = x_102; } else { + lean::inc(x_266); lean::dec(x_102); x_269 = lean::box(0); } @@ -20407,14 +20407,14 @@ obj* x_4; obj* x_5; obj* x_7; obj* x_9; lean::inc(x_1); x_4 = l_lean_parser_token(x_0, x_1, x_2); x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -20422,13 +20422,13 @@ if (lean::obj_tag(x_5) == 0) { obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; x_10 = lean::cnstr_get(x_5, 0); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); lean::cnstr_release(x_5, 1); lean::cnstr_release(x_5, 2); x_12 = x_5; } else { + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -20471,14 +20471,14 @@ _start: obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; x_3 = l_lean_parser_parsec__t_lookahead___at_lean_parser_peek__token___spec__1(x_0, x_1, x_2); x_4 = lean::cnstr_get(x_3, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_3, 1); -lean::inc(x_6); if (lean::is_exclusive(x_3)) { - lean::cnstr_release(x_3, 0); - lean::cnstr_release(x_3, 1); + lean::cnstr_set(x_3, 0, lean::box(0)); + lean::cnstr_set(x_3, 1, lean::box(0)); x_8 = x_3; } else { + lean::inc(x_4); + lean::inc(x_6); lean::dec(x_3); x_8 = lean::box(0); } @@ -20487,17 +20487,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_10; obj* x_12; obj* x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); x_14 = lean::cnstr_get(x_9, 2); -lean::inc(x_14); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_16 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); + lean::inc(x_14); lean::dec(x_9); x_16 = lean::box(0); } @@ -20591,14 +20591,14 @@ lean::inc(x_4); lean::inc(x_3); x_8 = l_lean_parser_token(x_3, x_4, x_5); x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -20606,17 +20606,17 @@ if (lean::obj_tag(x_9) == 0) { obj* x_14; obj* x_16; obj* x_18; obj* x_20; obj* x_21; x_14 = lean::cnstr_get(x_9, 0); -lean::inc(x_14); x_16 = lean::cnstr_get(x_9, 1); -lean::inc(x_16); x_18 = lean::cnstr_get(x_9, 2); -lean::inc(x_18); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); - lean::cnstr_release(x_9, 2); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); + lean::cnstr_set(x_9, 2, lean::box(0)); x_20 = x_9; } else { + lean::inc(x_14); + lean::inc(x_16); + lean::inc(x_18); lean::dec(x_9); x_20 = lean::box(0); } @@ -20640,14 +20640,14 @@ lean::cnstr_set(x_31, 0, x_4); x_32 = lean::box(0); x_33 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_26, x_0, x_31, x_32, x_3, x_16, x_11); x_34 = lean::cnstr_get(x_33, 0); -lean::inc(x_34); x_36 = lean::cnstr_get(x_33, 1); -lean::inc(x_36); if (lean::is_exclusive(x_33)) { - lean::cnstr_release(x_33, 0); - lean::cnstr_release(x_33, 1); + lean::cnstr_set(x_33, 0, lean::box(0)); + lean::cnstr_set(x_33, 1, lean::box(0)); x_38 = x_33; } else { + lean::inc(x_34); + lean::inc(x_36); lean::dec(x_33); x_38 = lean::box(0); } @@ -20688,12 +20688,12 @@ obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; ob lean::dec(x_14); lean::dec(x_20); x_54 = lean::cnstr_get(x_34, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_34, sizeof(void*)*1); if (lean::is_exclusive(x_34)) { - lean::cnstr_release(x_34, 0); + lean::cnstr_set(x_34, 0, lean::box(0)); x_57 = x_34; } else { + lean::inc(x_54); lean::dec(x_34); x_57 = lean::box(0); } @@ -20804,12 +20804,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_105 = lean::cnstr_get(x_9, 0); -lean::inc(x_105); x_107 = lean::cnstr_get_scalar(x_9, sizeof(void*)*1); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); + lean::cnstr_set(x_9, 0, lean::box(0)); x_108 = x_9; } else { + lean::inc(x_105); lean::dec(x_9); x_108 = lean::box(0); } @@ -20988,14 +20988,14 @@ lean::inc(x_2); lean::inc(x_1); x_6 = l_lean_parser_token(x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -21003,17 +21003,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_20; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -21086,12 +21086,12 @@ obj* x_53; uint8 x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; ob lean::dec(x_1); lean::dec(x_2); x_53 = lean::cnstr_get(x_7, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_56 = x_7; } else { + lean::inc(x_53); lean::dec(x_7); x_56 = lean::box(0); } @@ -21500,14 +21500,14 @@ lean::inc(x_2); lean::inc(x_1); x_6 = l_lean_parser_token(x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -21515,17 +21515,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_20; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -21598,12 +21598,12 @@ obj* x_53; uint8 x_55; obj* x_56; obj* x_57; obj* x_58; obj* x_59; obj* x_60; ob lean::dec(x_1); lean::dec(x_2); x_53 = lean::cnstr_get(x_7, 0); -lean::inc(x_53); x_55 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_56 = x_7; } else { + lean::inc(x_53); lean::dec(x_7); x_56 = lean::box(0); } @@ -21925,17 +21925,17 @@ if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_9; obj* x_11; obj* x_13; uint32 x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_19; obj* x_20; obj* x_21; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); x_11 = lean::cnstr_get(x_6, 2); -lean::inc(x_11); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); - lean::cnstr_release(x_6, 2); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); + lean::cnstr_set(x_6, 2, lean::box(0)); x_13 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_6); x_13 = lean::box(0); } @@ -21978,12 +21978,12 @@ else { obj* x_28; uint8 x_30; obj* x_31; obj* x_33; obj* x_34; x_28 = lean::cnstr_get(x_6, 0); -lean::inc(x_28); x_30 = lean::cnstr_get_scalar(x_6, sizeof(void*)*1); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); + lean::cnstr_set(x_6, 0, lean::box(0)); x_31 = x_6; } else { + lean::inc(x_28); lean::dec(x_6); x_31 = lean::box(0); } @@ -22111,17 +22111,17 @@ if (lean::obj_tag(x_89) == 0) { obj* x_90; obj* x_92; obj* x_94; obj* x_96; uint32 x_97; obj* x_98; obj* x_99; obj* x_100; obj* x_102; obj* x_103; obj* x_105; obj* x_106; x_90 = lean::cnstr_get(x_89, 0); -lean::inc(x_90); x_92 = lean::cnstr_get(x_89, 1); -lean::inc(x_92); x_94 = lean::cnstr_get(x_89, 2); -lean::inc(x_94); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); - lean::cnstr_release(x_89, 1); - lean::cnstr_release(x_89, 2); + lean::cnstr_set(x_89, 0, lean::box(0)); + lean::cnstr_set(x_89, 1, lean::box(0)); + lean::cnstr_set(x_89, 2, lean::box(0)); x_96 = x_89; } else { + lean::inc(x_90); + lean::inc(x_92); + lean::inc(x_94); lean::dec(x_89); x_96 = lean::box(0); } @@ -22167,12 +22167,12 @@ else { obj* x_114; uint8 x_116; obj* x_117; obj* x_119; obj* x_120; x_114 = lean::cnstr_get(x_89, 0); -lean::inc(x_114); x_116 = lean::cnstr_get_scalar(x_89, sizeof(void*)*1); if (lean::is_exclusive(x_89)) { - lean::cnstr_release(x_89, 0); + lean::cnstr_set(x_89, 0, lean::box(0)); x_117 = x_89; } else { + lean::inc(x_114); lean::dec(x_89); x_117 = lean::box(0); } @@ -22305,17 +22305,17 @@ if (lean::obj_tag(x_170) == 0) { obj* x_171; obj* x_173; obj* x_175; obj* x_177; uint32 x_178; obj* x_179; obj* x_180; obj* x_181; obj* x_183; obj* x_184; obj* x_186; obj* x_187; obj* x_188; obj* x_189; obj* x_190; obj* x_191; x_171 = lean::cnstr_get(x_170, 0); -lean::inc(x_171); x_173 = lean::cnstr_get(x_170, 1); -lean::inc(x_173); x_175 = lean::cnstr_get(x_170, 2); -lean::inc(x_175); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); - lean::cnstr_release(x_170, 1); - lean::cnstr_release(x_170, 2); + lean::cnstr_set(x_170, 0, lean::box(0)); + lean::cnstr_set(x_170, 1, lean::box(0)); + lean::cnstr_set(x_170, 2, lean::box(0)); x_177 = x_170; } else { + lean::inc(x_171); + lean::inc(x_173); + lean::inc(x_175); lean::dec(x_170); x_177 = lean::box(0); } @@ -22346,12 +22346,12 @@ else { obj* x_192; uint8 x_194; obj* x_195; obj* x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; obj* x_201; x_192 = lean::cnstr_get(x_170, 0); -lean::inc(x_192); x_194 = lean::cnstr_get_scalar(x_170, sizeof(void*)*1); if (lean::is_exclusive(x_170)) { - lean::cnstr_release(x_170, 0); + lean::cnstr_set(x_170, 0, lean::box(0)); x_195 = x_170; } else { + lean::inc(x_192); lean::dec(x_170); x_195 = lean::box(0); } @@ -22395,17 +22395,17 @@ if (lean::obj_tag(x_2) == 0) { obj* x_3; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; uint32 x_16; uint32 x_17; uint8 x_18; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 2); -lean::inc(x_7); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); - lean::cnstr_release(x_2, 2); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); + lean::cnstr_set(x_2, 2, lean::box(0)); x_9 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_2); x_9 = lean::box(0); } @@ -22543,12 +22543,12 @@ lean::dec(x_47); lean::dec(x_39); lean::dec(x_9); x_100 = lean::cnstr_get(x_62, 0); -lean::inc(x_100); x_102 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_103 = x_62; } else { + lean::inc(x_100); lean::dec(x_62); x_103 = lean::box(0); } @@ -22576,12 +22576,12 @@ lean::dec(x_47); lean::dec(x_39); lean::dec(x_9); x_115 = lean::cnstr_get(x_54, 0); -lean::inc(x_115); x_117 = lean::cnstr_get_scalar(x_54, sizeof(void*)*1); if (lean::is_exclusive(x_54)) { - lean::cnstr_release(x_54, 0); + lean::cnstr_set(x_54, 0, lean::box(0)); x_118 = x_54; } else { + lean::inc(x_115); lean::dec(x_54); x_118 = lean::box(0); } @@ -22607,12 +22607,12 @@ obj* x_128; uint8 x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_ lean::dec(x_39); lean::dec(x_9); x_128 = lean::cnstr_get(x_46, 0); -lean::inc(x_128); x_130 = lean::cnstr_get_scalar(x_46, sizeof(void*)*1); if (lean::is_exclusive(x_46)) { - lean::cnstr_release(x_46, 0); + lean::cnstr_set(x_46, 0, lean::box(0)); x_131 = x_46; } else { + lean::inc(x_128); lean::dec(x_46); x_131 = lean::box(0); } @@ -22636,12 +22636,12 @@ else obj* x_139; uint8 x_141; obj* x_142; obj* x_143; obj* x_144; obj* x_145; obj* x_146; obj* x_147; lean::dec(x_9); x_139 = lean::cnstr_get(x_38, 0); -lean::inc(x_139); x_141 = lean::cnstr_get_scalar(x_38, sizeof(void*)*1); if (lean::is_exclusive(x_38)) { - lean::cnstr_release(x_38, 0); + lean::cnstr_set(x_38, 0, lean::box(0)); x_142 = x_38; } else { + lean::inc(x_139); lean::dec(x_38); x_142 = lean::box(0); } @@ -22689,17 +22689,17 @@ if (lean::obj_tag(x_157) == 0) { obj* x_158; obj* x_160; obj* x_162; obj* x_164; obj* x_165; x_158 = lean::cnstr_get(x_157, 0); -lean::inc(x_158); x_160 = lean::cnstr_get(x_157, 1); -lean::inc(x_160); x_162 = lean::cnstr_get(x_157, 2); -lean::inc(x_162); if (lean::is_exclusive(x_157)) { - lean::cnstr_release(x_157, 0); - lean::cnstr_release(x_157, 1); - lean::cnstr_release(x_157, 2); + lean::cnstr_set(x_157, 0, lean::box(0)); + lean::cnstr_set(x_157, 1, lean::box(0)); + lean::cnstr_set(x_157, 2, lean::box(0)); x_164 = x_157; } else { + lean::inc(x_158); + lean::inc(x_160); + lean::inc(x_162); lean::dec(x_157); x_164 = lean::box(0); } @@ -22743,12 +22743,12 @@ obj* x_189; uint8 x_191; obj* x_192; obj* x_193; obj* x_194; obj* x_195; obj* x_ lean::dec(x_158); lean::dec(x_164); x_189 = lean::cnstr_get(x_165, 0); -lean::inc(x_189); x_191 = lean::cnstr_get_scalar(x_165, sizeof(void*)*1); if (lean::is_exclusive(x_165)) { - lean::cnstr_release(x_165, 0); + lean::cnstr_set(x_165, 0, lean::box(0)); x_192 = x_165; } else { + lean::inc(x_189); lean::dec(x_165); x_192 = lean::box(0); } @@ -22771,12 +22771,12 @@ else { obj* x_199; uint8 x_201; obj* x_202; obj* x_203; obj* x_204; obj* x_205; obj* x_206; obj* x_207; x_199 = lean::cnstr_get(x_157, 0); -lean::inc(x_199); x_201 = lean::cnstr_get_scalar(x_157, sizeof(void*)*1); if (lean::is_exclusive(x_157)) { - lean::cnstr_release(x_157, 0); + lean::cnstr_set(x_157, 0, lean::box(0)); x_202 = x_157; } else { + lean::inc(x_199); lean::dec(x_157); x_202 = lean::box(0); } @@ -22891,12 +22891,12 @@ else obj* x_248; uint8 x_250; obj* x_251; obj* x_252; obj* x_253; obj* x_254; obj* x_255; lean::dec(x_0); x_248 = lean::cnstr_get(x_2, 0); -lean::inc(x_248); x_250 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_251 = x_2; } else { + lean::inc(x_248); lean::dec(x_2); x_251 = lean::box(0); } @@ -22928,17 +22928,17 @@ if (lean::obj_tag(x_5) == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; uint32 x_16; uint32 x_17; uint8 x_18; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); x_10 = lean::cnstr_get(x_5, 2); -lean::inc(x_10); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); - lean::cnstr_release(x_5, 2); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); + lean::cnstr_set(x_5, 2, lean::box(0)); x_12 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_5); x_12 = lean::box(0); } @@ -23007,12 +23007,12 @@ obj* x_45; uint8 x_47; obj* x_48; obj* x_49; obj* x_50; obj* x_51; lean::dec(x_1); lean::dec(x_14); x_45 = lean::cnstr_get(x_30, 0); -lean::inc(x_45); x_47 = lean::cnstr_get_scalar(x_30, sizeof(void*)*1); if (lean::is_exclusive(x_30)) { - lean::cnstr_release(x_30, 0); + lean::cnstr_set(x_30, 0, lean::box(0)); x_48 = x_30; } else { + lean::inc(x_45); lean::dec(x_30); x_48 = lean::box(0); } @@ -23035,12 +23035,12 @@ obj* x_54; uint8 x_56; obj* x_57; obj* x_58; obj* x_59; lean::dec(x_1); lean::dec(x_0); x_54 = lean::cnstr_get(x_5, 0); -lean::inc(x_54); x_56 = lean::cnstr_get_scalar(x_5, sizeof(void*)*1); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); + lean::cnstr_set(x_5, 0, lean::box(0)); x_57 = x_5; } else { + lean::inc(x_54); lean::dec(x_5); x_57 = lean::box(0); } @@ -23065,15 +23065,15 @@ if (lean::obj_tag(x_62) == 0) { obj* x_63; obj* x_65; obj* x_67; obj* x_68; obj* x_69; obj* x_70; x_63 = lean::cnstr_get(x_62, 1); -lean::inc(x_63); x_65 = lean::cnstr_get(x_62, 2); -lean::inc(x_65); if (lean::is_exclusive(x_62)) { lean::cnstr_release(x_62, 0); - lean::cnstr_release(x_62, 1); - lean::cnstr_release(x_62, 2); + lean::cnstr_set(x_62, 1, lean::box(0)); + lean::cnstr_set(x_62, 2, lean::box(0)); x_67 = x_62; } else { + lean::inc(x_63); + lean::inc(x_65); lean::dec(x_62); x_67 = lean::box(0); } @@ -23094,12 +23094,12 @@ else obj* x_72; uint8 x_74; obj* x_75; obj* x_76; obj* x_77; lean::dec(x_1); x_72 = lean::cnstr_get(x_62, 0); -lean::inc(x_72); x_74 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); if (lean::is_exclusive(x_62)) { - lean::cnstr_release(x_62, 0); + lean::cnstr_set(x_62, 0, lean::box(0)); x_75 = x_62; } else { + lean::inc(x_72); lean::dec(x_62); x_75 = lean::box(0); } @@ -23142,12 +23142,12 @@ else { obj* x_14; uint8 x_16; obj* x_17; obj* x_18; obj* x_19; x_14 = lean::cnstr_get(x_2, 0); -lean::inc(x_14); x_16 = lean::cnstr_get_scalar(x_2, sizeof(void*)*1); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); + lean::cnstr_set(x_2, 0, lean::box(0)); x_17 = x_2; } else { + lean::inc(x_14); lean::dec(x_2); x_17 = lean::box(0); } @@ -23184,11 +23184,11 @@ else { obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_9; obj* x_10; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); + lean::cnstr_set(x_0, 0, lean::box(0)); x_4 = x_0; } else { + lean::inc(x_2); lean::dec(x_0); x_4 = lean::box(0); } @@ -23240,14 +23240,14 @@ lean::inc(x_2); lean::inc(x_1); x_6 = l_lean_parser_token(x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -23255,17 +23255,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -23348,12 +23348,12 @@ obj* x_55; uint8 x_57; obj* x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; ob lean::dec(x_1); lean::dec(x_2); x_55 = lean::cnstr_get(x_7, 0); -lean::inc(x_55); x_57 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_58 = x_7; } else { + lean::inc(x_55); lean::dec(x_7); x_58 = lean::box(0); } @@ -23591,14 +23591,14 @@ lean::inc(x_2); lean::inc(x_1); x_6 = l_lean_parser_token(x_1, x_2, x_3); x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -23606,17 +23606,17 @@ if (lean::obj_tag(x_7) == 0) { obj* x_12; obj* x_14; obj* x_16; obj* x_18; obj* x_19; x_12 = lean::cnstr_get(x_7, 0); -lean::inc(x_12); x_14 = lean::cnstr_get(x_7, 1); -lean::inc(x_14); x_16 = lean::cnstr_get(x_7, 2); -lean::inc(x_16); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); - lean::cnstr_release(x_7, 1); - lean::cnstr_release(x_7, 2); + lean::cnstr_set(x_7, 0, lean::box(0)); + lean::cnstr_set(x_7, 1, lean::box(0)); + lean::cnstr_set(x_7, 2, lean::box(0)); x_18 = x_7; } else { + lean::inc(x_12); + lean::inc(x_14); + lean::inc(x_16); lean::dec(x_7); x_18 = lean::box(0); } @@ -23771,12 +23771,12 @@ obj* x_80; uint8 x_82; obj* x_83; obj* x_84; obj* x_85; obj* x_86; obj* x_87; ob lean::dec(x_12); lean::dec(x_18); x_80 = lean::cnstr_get(x_61, 0); -lean::inc(x_80); x_82 = lean::cnstr_get_scalar(x_61, sizeof(void*)*1); if (lean::is_exclusive(x_61)) { - lean::cnstr_release(x_61, 0); + lean::cnstr_set(x_61, 0, lean::box(0)); x_83 = x_61; } else { + lean::inc(x_80); lean::dec(x_61); x_83 = lean::box(0); } @@ -23812,12 +23812,12 @@ lean::dec(x_1); lean::dec(x_0); lean::dec(x_2); x_94 = lean::cnstr_get(x_7, 0); -lean::inc(x_94); x_96 = lean::cnstr_get_scalar(x_7, sizeof(void*)*1); if (lean::is_exclusive(x_7)) { - lean::cnstr_release(x_7, 0); + lean::cnstr_set(x_7, 0, lean::box(0)); x_97 = x_7; } else { + lean::inc(x_94); lean::dec(x_7); x_97 = lean::box(0); } @@ -23904,14 +23904,14 @@ lean::inc(x_4); lean::inc(x_3); x_9 = l_lean_parser_token(x_3, x_4, x_5); x_10 = lean::cnstr_get(x_9, 0); -lean::inc(x_10); x_12 = lean::cnstr_get(x_9, 1); -lean::inc(x_12); if (lean::is_exclusive(x_9)) { - lean::cnstr_release(x_9, 0); - lean::cnstr_release(x_9, 1); + lean::cnstr_set(x_9, 0, lean::box(0)); + lean::cnstr_set(x_9, 1, lean::box(0)); x_14 = x_9; } else { + lean::inc(x_10); + lean::inc(x_12); lean::dec(x_9); x_14 = lean::box(0); } @@ -23922,17 +23922,17 @@ if (lean::obj_tag(x_10) == 0) { obj* x_17; obj* x_19; obj* x_21; obj* x_23; obj* x_24; x_17 = lean::cnstr_get(x_10, 0); -lean::inc(x_17); x_19 = lean::cnstr_get(x_10, 1); -lean::inc(x_19); x_21 = lean::cnstr_get(x_10, 2); -lean::inc(x_21); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); - lean::cnstr_release(x_10, 1); - lean::cnstr_release(x_10, 2); + lean::cnstr_set(x_10, 0, lean::box(0)); + lean::cnstr_set(x_10, 1, lean::box(0)); + lean::cnstr_set(x_10, 2, lean::box(0)); x_23 = x_10; } else { + lean::inc(x_17); + lean::inc(x_19); + lean::inc(x_21); lean::dec(x_10); x_23 = lean::box(0); } @@ -23956,14 +23956,14 @@ lean::cnstr_set(x_34, 0, x_4); x_35 = lean::box(0); x_36 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_29, x_2, x_34, x_35, x_3, x_19, x_12); x_37 = lean::cnstr_get(x_36, 0); -lean::inc(x_37); x_39 = lean::cnstr_get(x_36, 1); -lean::inc(x_39); if (lean::is_exclusive(x_36)) { - lean::cnstr_release(x_36, 0); - lean::cnstr_release(x_36, 1); + lean::cnstr_set(x_36, 0, lean::box(0)); + lean::cnstr_set(x_36, 1, lean::box(0)); x_41 = x_36; } else { + lean::inc(x_37); + lean::inc(x_39); lean::dec(x_36); x_41 = lean::box(0); } @@ -24004,12 +24004,12 @@ obj* x_57; uint8 x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; ob lean::dec(x_17); lean::dec(x_23); x_57 = lean::cnstr_get(x_37, 0); -lean::inc(x_57); x_59 = lean::cnstr_get_scalar(x_37, sizeof(void*)*1); if (lean::is_exclusive(x_37)) { - lean::cnstr_release(x_37, 0); + lean::cnstr_set(x_37, 0, lean::box(0)); x_60 = x_37; } else { + lean::inc(x_57); lean::dec(x_37); x_60 = lean::box(0); } @@ -24120,12 +24120,12 @@ lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); x_108 = lean::cnstr_get(x_10, 0); -lean::inc(x_108); x_110 = lean::cnstr_get_scalar(x_10, sizeof(void*)*1); if (lean::is_exclusive(x_10)) { - lean::cnstr_release(x_10, 0); + lean::cnstr_set(x_10, 0, lean::box(0)); x_111 = x_10; } else { + lean::inc(x_108); lean::dec(x_10); x_111 = lean::box(0); } @@ -24491,14 +24491,14 @@ x_21 = lean_name_mk_string(x_20, x_17); x_22 = l_rbnode_find___main___at_lean_parser_token__map_insert___spec__2___rarg(x_0, x_21); x_23 = l_option_to__monad___main___at_lean_parser_indexed___spec__2___rarg(x_22, x_2, x_3, x_4); x_24 = lean::cnstr_get(x_23, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_23, 1); -lean::inc(x_26); if (lean::is_exclusive(x_23)) { - lean::cnstr_release(x_23, 0); - lean::cnstr_release(x_23, 1); + lean::cnstr_set(x_23, 0, lean::box(0)); + lean::cnstr_set(x_23, 1, lean::box(0)); x_28 = x_23; } else { + lean::inc(x_24); + lean::inc(x_26); lean::dec(x_23); x_28 = lean::box(0); } @@ -24521,14 +24521,14 @@ x_33 = l_lean_parser_indexed___rarg___lambda__1___closed__1; x_34 = l_rbnode_find___main___at_lean_parser_token__map_insert___spec__2___rarg(x_0, x_33); x_35 = l_option_to__monad___main___at_lean_parser_indexed___spec__2___rarg(x_34, x_2, x_3, x_4); x_36 = lean::cnstr_get(x_35, 0); -lean::inc(x_36); x_38 = lean::cnstr_get(x_35, 1); -lean::inc(x_38); if (lean::is_exclusive(x_35)) { - lean::cnstr_release(x_35, 0); - lean::cnstr_release(x_35, 1); + lean::cnstr_set(x_35, 0, lean::box(0)); + lean::cnstr_set(x_35, 1, lean::box(0)); x_40 = x_35; } else { + lean::inc(x_36); + lean::inc(x_38); lean::dec(x_35); x_40 = lean::box(0); } @@ -24555,14 +24555,14 @@ lean::dec(x_44); x_50 = l_rbnode_find___main___at_lean_parser_token__map_insert___spec__2___rarg(x_0, x_47); x_51 = l_option_to__monad___main___at_lean_parser_indexed___spec__2___rarg(x_50, x_2, x_3, x_4); x_52 = lean::cnstr_get(x_51, 0); -lean::inc(x_52); x_54 = lean::cnstr_get(x_51, 1); -lean::inc(x_54); if (lean::is_exclusive(x_51)) { - lean::cnstr_release(x_51, 0); - lean::cnstr_release(x_51, 1); + lean::cnstr_set(x_51, 0, lean::box(0)); + lean::cnstr_set(x_51, 1, lean::box(0)); x_56 = x_51; } else { + lean::inc(x_52); + lean::inc(x_54); lean::dec(x_51); x_56 = lean::box(0); } @@ -24586,14 +24586,14 @@ x_62 = l_mjoin___rarg___closed__1; lean::inc(x_2); x_64 = l_lean_parser_monad__parsec_error___at___private_init_lean_parser_token_1__finish__comment__block__aux___main___spec__1___rarg(x_61, x_62, x_60, x_60, x_2, x_3, x_4); x_65 = lean::cnstr_get(x_64, 0); -lean::inc(x_65); x_67 = lean::cnstr_get(x_64, 1); -lean::inc(x_67); if (lean::is_exclusive(x_64)) { - lean::cnstr_release(x_64, 0); - lean::cnstr_release(x_64, 1); + lean::cnstr_set(x_64, 0, lean::box(0)); + lean::cnstr_set(x_64, 1, lean::box(0)); x_69 = x_64; } else { + lean::inc(x_65); + lean::inc(x_67); lean::dec(x_64); x_69 = lean::box(0); } @@ -24630,12 +24630,12 @@ obj* x_88; uint8 x_90; obj* x_91; obj* x_92; obj* x_93; obj* x_94; lean::dec(x_0); lean::dec(x_2); x_88 = lean::cnstr_get(x_65, 0); -lean::inc(x_88); x_90 = lean::cnstr_get_scalar(x_65, sizeof(void*)*1); if (lean::is_exclusive(x_65)) { - lean::cnstr_release(x_65, 0); + lean::cnstr_set(x_65, 0, lean::box(0)); x_91 = x_65; } else { + lean::inc(x_88); lean::dec(x_65); x_91 = lean::box(0); } diff --git a/src/boot/init/lean/parser/trie.cpp b/src/boot/init/lean/parser/trie.cpp index da3b81c9ec..06a4271cc3 100644 --- a/src/boot/init/lean/parser/trie.cpp +++ b/src/boot/init/lean/parser/trie.cpp @@ -192,20 +192,20 @@ case 1: { obj* x_5; obj* x_7; obj* x_9; obj* x_11; obj* x_13; uint32 x_14; uint8 x_15; x_5 = lean::cnstr_get(x_0, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_0, 1); -lean::inc(x_7); x_9 = lean::cnstr_get(x_0, 2); -lean::inc(x_9); x_11 = lean::cnstr_get(x_0, 3); -lean::inc(x_11); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_13 = x_0; } else { + lean::inc(x_5); + lean::inc(x_7); + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_0); x_13 = lean::box(0); } @@ -267,20 +267,20 @@ default: { obj* x_24; obj* x_26; obj* x_28; obj* x_30; obj* x_32; uint32 x_33; uint8 x_34; x_24 = lean::cnstr_get(x_0, 0); -lean::inc(x_24); x_26 = lean::cnstr_get(x_0, 1); -lean::inc(x_26); x_28 = lean::cnstr_get(x_0, 2); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 3); -lean::inc(x_30); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_32 = x_0; } else { + lean::inc(x_24); + lean::inc(x_26); + lean::inc(x_28); + lean::inc(x_30); lean::dec(x_0); x_32 = lean::box(0); } @@ -408,14 +408,14 @@ if (x_5 == 0) { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_12; uint32 x_14; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; obj* x_21; obj* x_22; x_6 = lean::cnstr_get(x_2, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_2, 1); -lean::inc(x_8); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_10 = x_2; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_2); x_10 = lean::box(0); } @@ -445,12 +445,12 @@ obj* x_25; obj* x_27; obj* x_28; obj* x_29; lean::dec(x_1); lean::dec(x_3); x_25 = lean::cnstr_get(x_2, 1); -lean::inc(x_25); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 1, lean::box(0)); x_27 = x_2; } else { + lean::inc(x_25); lean::dec(x_2); x_27 = lean::box(0); } diff --git a/src/boot/init/lean/position.cpp b/src/boot/init/lean/position.cpp index 830189368d..07e4637e2e 100644 --- a/src/boot/init/lean/position.cpp +++ b/src/boot/init/lean/position.cpp @@ -411,20 +411,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; uint8 x_13; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -485,20 +485,20 @@ default: { obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_30; uint8 x_31; x_22 = lean::cnstr_get(x_0, 0); -lean::inc(x_22); x_24 = lean::cnstr_get(x_0, 1); -lean::inc(x_24); x_26 = lean::cnstr_get(x_0, 2); -lean::inc(x_26); x_28 = lean::cnstr_get(x_0, 3); -lean::inc(x_28); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_30 = x_0; } else { + lean::inc(x_22); + lean::inc(x_24); + lean::inc(x_26); + lean::inc(x_28); lean::dec(x_0); x_30 = lean::box(0); } diff --git a/src/boot/init/lean/trace.cpp b/src/boot/init/lean/trace.cpp index 46a7457fff..4eea94b8db 100644 --- a/src/boot/init/lean/trace.cpp +++ b/src/boot/init/lean/trace.cpp @@ -77,14 +77,14 @@ else { obj* x_2; obj* x_4; obj* x_6; obj* x_7; uint8 x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_0, 1); -lean::inc(x_4); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); x_6 = x_0; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_0); x_6 = lean::box(0); } @@ -231,20 +231,20 @@ case 1: { obj* x_4; obj* x_6; obj* x_8; obj* x_10; obj* x_12; uint8 x_15; x_4 = lean::cnstr_get(x_0, 0); -lean::inc(x_4); x_6 = lean::cnstr_get(x_0, 1); -lean::inc(x_6); x_8 = lean::cnstr_get(x_0, 2); -lean::inc(x_8); x_10 = lean::cnstr_get(x_0, 3); -lean::inc(x_10); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_12 = x_0; } else { + lean::inc(x_4); + lean::inc(x_6); + lean::inc(x_8); + lean::inc(x_10); lean::dec(x_0); x_12 = lean::box(0); } @@ -309,20 +309,20 @@ default: { obj* x_26; obj* x_28; obj* x_30; obj* x_32; obj* x_34; uint8 x_37; x_26 = lean::cnstr_get(x_0, 0); -lean::inc(x_26); x_28 = lean::cnstr_get(x_0, 1); -lean::inc(x_28); x_30 = lean::cnstr_get(x_0, 2); -lean::inc(x_30); x_32 = lean::cnstr_get(x_0, 3); -lean::inc(x_32); if (lean::is_exclusive(x_0)) { - lean::cnstr_release(x_0, 0); - lean::cnstr_release(x_0, 1); - lean::cnstr_release(x_0, 2); - lean::cnstr_release(x_0, 3); + lean::cnstr_set(x_0, 0, lean::box(0)); + lean::cnstr_set(x_0, 1, lean::box(0)); + lean::cnstr_set(x_0, 2, lean::box(0)); + lean::cnstr_set(x_0, 3, lean::box(0)); x_34 = x_0; } else { + lean::inc(x_26); + lean::inc(x_28); + lean::inc(x_30); + lean::inc(x_32); lean::dec(x_0); x_34 = lean::box(0); } @@ -438,14 +438,14 @@ _start: { obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_11; obj* x_14; obj* x_15; obj* x_16; x_3 = lean::cnstr_get(x_2, 0); -lean::inc(x_3); x_5 = lean::cnstr_get(x_2, 1); -lean::inc(x_5); if (lean::is_exclusive(x_2)) { - lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 0, lean::box(0)); + lean::cnstr_set(x_2, 1, lean::box(0)); x_7 = x_2; } else { + lean::inc(x_3); + lean::inc(x_5); lean::dec(x_2); x_7 = lean::box(0); } @@ -497,12 +497,12 @@ _start: { obj* x_3; obj* x_5; obj* x_6; obj* x_7; x_3 = lean::cnstr_get(x_2, 1); -lean::inc(x_3); if (lean::is_exclusive(x_2)) { lean::cnstr_release(x_2, 0); - lean::cnstr_release(x_2, 1); + lean::cnstr_set(x_2, 1, lean::box(0)); x_5 = x_2; } else { + lean::inc(x_3); lean::dec(x_2); x_5 = lean::box(0); } @@ -522,14 +522,14 @@ _start: { obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_17; obj* x_18; obj* x_19; obj* x_22; obj* x_23; obj* x_24; obj* x_26; obj* x_27; obj* x_28; x_5 = lean::cnstr_get(x_4, 0); -lean::inc(x_5); x_7 = lean::cnstr_get(x_4, 1); -lean::inc(x_7); if (lean::is_exclusive(x_4)) { - lean::cnstr_release(x_4, 0); - lean::cnstr_release(x_4, 1); + lean::cnstr_set(x_4, 0, lean::box(0)); + lean::cnstr_set(x_4, 1, lean::box(0)); x_9 = x_4; } else { + lean::inc(x_5); + lean::inc(x_7); lean::dec(x_4); x_9 = lean::box(0); } @@ -594,14 +594,14 @@ _start: { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_14; obj* x_17; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -763,14 +763,14 @@ _start: { obj* x_6; obj* x_8; obj* x_10; obj* x_11; obj* x_13; obj* x_15; obj* x_17; obj* x_20; obj* x_23; obj* x_24; obj* x_25; obj* x_26; obj* x_27; obj* x_28; obj* x_30; obj* x_31; obj* x_32; x_6 = lean::cnstr_get(x_5, 0); -lean::inc(x_6); x_8 = lean::cnstr_get(x_5, 1); -lean::inc(x_8); if (lean::is_exclusive(x_5)) { - lean::cnstr_release(x_5, 0); - lean::cnstr_release(x_5, 1); + lean::cnstr_set(x_5, 0, lean::box(0)); + lean::cnstr_set(x_5, 1, lean::box(0)); x_10 = x_5; } else { + lean::inc(x_6); + lean::inc(x_8); lean::dec(x_5); x_10 = lean::box(0); } @@ -841,14 +841,14 @@ _start: { obj* x_9; obj* x_11; obj* x_13; x_9 = lean::cnstr_get(x_8, 0); -lean::inc(x_9); x_11 = lean::cnstr_get(x_8, 1); -lean::inc(x_11); if (lean::is_exclusive(x_8)) { - lean::cnstr_release(x_8, 0); - lean::cnstr_release(x_8, 1); + lean::cnstr_set(x_8, 0, lean::box(0)); + lean::cnstr_set(x_8, 1, lean::box(0)); x_13 = x_8; } else { + lean::inc(x_9); + lean::inc(x_11); lean::dec(x_8); x_13 = lean::box(0); } @@ -969,14 +969,14 @@ _start: { obj* x_7; obj* x_9; obj* x_11; obj* x_12; obj* x_15; obj* x_17; obj* x_19; obj* x_20; x_7 = lean::cnstr_get(x_6, 0); -lean::inc(x_7); x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); if (lean::is_exclusive(x_6)) { - lean::cnstr_release(x_6, 0); - lean::cnstr_release(x_6, 1); + lean::cnstr_set(x_6, 0, lean::box(0)); + lean::cnstr_set(x_6, 1, lean::box(0)); x_11 = x_6; } else { + lean::inc(x_7); + lean::inc(x_9); lean::dec(x_6); x_11 = lean::box(0); } @@ -1065,14 +1065,14 @@ _start: { obj* x_2; obj* x_4; obj* x_6; obj* x_7; obj* x_10; obj* x_13; obj* x_16; obj* x_17; x_2 = lean::cnstr_get(x_1, 0); -lean::inc(x_2); x_4 = lean::cnstr_get(x_1, 1); -lean::inc(x_4); if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - lean::cnstr_release(x_1, 1); + lean::cnstr_set(x_1, 0, lean::box(0)); + lean::cnstr_set(x_1, 1, lean::box(0)); x_6 = x_1; } else { + lean::inc(x_2); + lean::inc(x_4); lean::dec(x_1); x_6 = lean::box(0); }