From fc4af7ae4863fafcb0182d3431a3ba037c9d206f Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Mon, 25 Mar 2019 14:18:51 -0700 Subject: [PATCH] chore(stage0): update --- src/stage0/init/lean/elaborator.cpp | 825 +----- src/stage0/init/lean/expander.cpp | 1283 ++++------ src/stage0/init/lean/parser/command.cpp | 432 +--- src/stage0/init/lean/parser/declaration.cpp | 26 +- src/stage0/init/lean/parser/module.cpp | 2528 ++++++++----------- src/stage0/init/lean/parser/term.cpp | 1804 +++++-------- 6 files changed, 2348 insertions(+), 4550 deletions(-) diff --git a/src/stage0/init/lean/elaborator.cpp b/src/stage0/init/lean/elaborator.cpp index d03b5c1b4e..b4c88a983a 100644 --- a/src/stage0/init/lean/elaborator.cpp +++ b/src/stage0/init/lean/elaborator.cpp @@ -727,7 +727,6 @@ obj* l_List_decidableMem___main___at_Lean_Elaborator_isOpenNamespace___main___sp obj* l_List_mmap___main___at_Lean_Elaborator_Declaration_elaborate___spec__2(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Elaborator_OrderedRBMap_find___at_Lean_Elaborator_variables_elaborate___spec__1(obj*, obj*); obj* l_List_mmap___main___at_Lean_Elaborator_toPexpr___main___spec__5___closed__1; -obj* l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__2(obj*); obj* l_List_mmap___main___at_Lean_Elaborator_toPexpr___main___spec__14(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Elaborator_universe_elaborate(obj*, obj*, obj*, obj*); obj* l_Lean_Elaborator_CommandParserConfig_registerNotationParser(obj*, obj*, obj*); @@ -26827,687 +26826,6 @@ return x_267; } } } -obj* l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__2(obj* x_0) { -_start: -{ -if (lean::obj_tag(x_0) == 0) -{ -obj* x_1; -x_1 = l_Lean_Parser_Syntax_reprintLst___main___closed__1; -return x_1; -} -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); -x_4 = lean::cnstr_get(x_0, 1); -if (lean::is_exclusive(x_0)) { - 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_9 = lean::cnstr_get(x_2, 0); -lean::inc(x_9); -x_11 = lean::cnstr_get(x_9, 0); -lean::inc(x_11); -x_13 = lean::cnstr_get(x_11, 1); -lean::inc(x_13); -if (lean::obj_tag(x_13) == 0) -{ -obj* x_18; -lean::dec(x_11); -lean::dec(x_9); -lean::dec(x_2); -x_18 = lean::box(0); -x_7 = x_18; -goto lbl_8; -} -else -{ -obj* x_19; obj* x_22; obj* x_25; obj* x_28; obj* x_30; obj* x_32; -x_19 = lean::cnstr_get(x_2, 1); -lean::inc(x_19); -lean::dec(x_2); -x_22 = lean::cnstr_get(x_11, 3); -lean::inc(x_22); -lean::dec(x_11); -x_25 = lean::cnstr_get(x_13, 0); -lean::inc(x_25); -lean::dec(x_13); -x_28 = lean::cnstr_get(x_19, 0); -lean::inc(x_28); -x_32 = lean::cnstr_get(x_28, 1); -lean::inc(x_32); -if (lean::obj_tag(x_32) == 0) -{ -obj* x_39; -lean::dec(x_28); -lean::dec(x_9); -lean::dec(x_19); -lean::dec(x_22); -lean::dec(x_25); -x_39 = lean::box(0); -x_7 = x_39; -goto lbl_8; -} -else -{ -obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_48; obj* x_50; obj* x_53; uint8 x_55; -x_40 = lean::cnstr_get(x_28, 3); -lean::inc(x_40); -x_42 = lean::cnstr_get(x_32, 0); -if (lean::is_exclusive(x_32)) { - lean::cnstr_set(x_32, 0, lean::box(0)); - x_44 = x_32; -} else { - lean::inc(x_42); - lean::dec(x_32); - x_44 = lean::box(0); -} -x_45 = lean::cnstr_get(x_25, 1); -lean::inc(x_45); -lean::dec(x_25); -x_48 = l_String_trim(x_45); -lean::dec(x_45); -x_50 = lean::cnstr_get(x_42, 1); -lean::inc(x_50); -lean::dec(x_42); -x_53 = l_String_trim(x_50); -lean::dec(x_50); -x_55 = lean::string_dec_eq(x_48, x_53); -lean::dec(x_53); -lean::dec(x_48); -if (x_55 == 0) -{ -obj* x_64; -lean::dec(x_28); -lean::dec(x_9); -lean::dec(x_40); -lean::dec(x_19); -lean::dec(x_22); -lean::dec(x_44); -x_64 = lean::box(0); -x_7 = x_64; -goto lbl_8; -} -else -{ -uint8 x_65; -x_65 = l_Lean_Elaborator_matchPrecedence___main(x_22, x_40); -if (x_65 == 0) -{ -obj* x_70; -lean::dec(x_28); -lean::dec(x_9); -lean::dec(x_19); -lean::dec(x_44); -x_70 = lean::box(0); -x_7 = x_70; -goto lbl_8; -} -else -{ -obj* x_71; -x_71 = lean::cnstr_get(x_9, 1); -lean::inc(x_71); -lean::dec(x_9); -if (lean::obj_tag(x_71) == 0) -{ -obj* x_74; -x_74 = lean::cnstr_get(x_19, 1); -lean::inc(x_74); -lean::dec(x_19); -if (lean::obj_tag(x_74) == 0) -{ -obj* x_77; -if (lean::is_scalar(x_44)) { - x_77 = lean::alloc_cnstr(1, 1, 0); -} else { - x_77 = x_44; -} -lean::cnstr_set(x_77, 0, x_74); -x_30 = x_77; -goto lbl_31; -} -else -{ -obj* x_80; -lean::dec(x_44); -lean::dec(x_74); -x_80 = lean::box(0); -x_30 = x_80; -goto lbl_31; -} -} -else -{ -obj* x_82; obj* x_84; -lean::dec(x_44); -x_82 = lean::cnstr_get(x_71, 0); -if (lean::is_exclusive(x_71)) { - lean::cnstr_set(x_71, 0, lean::box(0)); - x_84 = x_71; -} else { - lean::inc(x_82); - lean::dec(x_71); - x_84 = lean::box(0); -} -switch (lean::obj_tag(x_82)) { -case 0: -{ -obj* x_85; -x_85 = lean::cnstr_get(x_19, 1); -lean::inc(x_85); -lean::dec(x_19); -if (lean::obj_tag(x_85) == 0) -{ -obj* x_90; -lean::dec(x_84); -lean::dec(x_82); -x_90 = lean::box(0); -x_30 = x_90; -goto lbl_31; -} -else -{ -obj* x_91; -x_91 = lean::cnstr_get(x_85, 0); -lean::inc(x_91); -switch (lean::obj_tag(x_91)) { -case 0: -{ -obj* x_93; obj* x_96; obj* x_99; obj* x_102; uint8 x_105; -x_93 = lean::cnstr_get(x_82, 0); -lean::inc(x_93); -lean::dec(x_82); -x_96 = lean::cnstr_get(x_91, 0); -lean::inc(x_96); -lean::dec(x_91); -x_99 = lean::cnstr_get(x_93, 1); -lean::inc(x_99); -lean::dec(x_93); -x_102 = lean::cnstr_get(x_96, 1); -lean::inc(x_102); -lean::dec(x_96); -x_105 = l_Lean_Elaborator_matchPrecedence___main(x_99, x_102); -if (x_105 == 0) -{ -obj* x_108; -lean::dec(x_85); -lean::dec(x_84); -x_108 = lean::box(0); -x_30 = x_108; -goto lbl_31; -} -else -{ -obj* x_109; -if (lean::is_scalar(x_84)) { - x_109 = lean::alloc_cnstr(1, 1, 0); -} else { - x_109 = x_84; -} -lean::cnstr_set(x_109, 0, x_85); -x_30 = x_109; -goto lbl_31; -} -} -default: -{ -obj* x_114; -lean::dec(x_85); -lean::dec(x_84); -lean::dec(x_91); -lean::dec(x_82); -x_114 = lean::box(0); -x_30 = x_114; -goto lbl_31; -} -} -} -} -case 1: -{ -obj* x_115; -x_115 = lean::cnstr_get(x_19, 1); -lean::inc(x_115); -lean::dec(x_19); -if (lean::obj_tag(x_115) == 0) -{ -obj* x_120; -lean::dec(x_84); -lean::dec(x_82); -x_120 = lean::box(0); -x_30 = x_120; -goto lbl_31; -} -else -{ -obj* x_121; -x_121 = lean::cnstr_get(x_115, 0); -lean::inc(x_121); -switch (lean::obj_tag(x_121)) { -case 1: -{ -obj* x_123; obj* x_126; obj* x_129; obj* x_132; uint8 x_135; -x_123 = lean::cnstr_get(x_82, 0); -lean::inc(x_123); -lean::dec(x_82); -x_126 = lean::cnstr_get(x_121, 0); -lean::inc(x_126); -lean::dec(x_121); -x_129 = lean::cnstr_get(x_123, 1); -lean::inc(x_129); -lean::dec(x_123); -x_132 = lean::cnstr_get(x_126, 1); -lean::inc(x_132); -lean::dec(x_126); -x_135 = l_Lean_Elaborator_matchPrecedence___main(x_129, x_132); -if (x_135 == 0) -{ -obj* x_138; -lean::dec(x_84); -lean::dec(x_115); -x_138 = lean::box(0); -x_30 = x_138; -goto lbl_31; -} -else -{ -obj* x_139; -if (lean::is_scalar(x_84)) { - x_139 = lean::alloc_cnstr(1, 1, 0); -} else { - x_139 = x_84; -} -lean::cnstr_set(x_139, 0, x_115); -x_30 = x_139; -goto lbl_31; -} -} -default: -{ -obj* x_144; -lean::dec(x_84); -lean::dec(x_82); -lean::dec(x_121); -lean::dec(x_115); -x_144 = lean::box(0); -x_30 = x_144; -goto lbl_31; -} -} -} -} -default: -{ -obj* x_145; obj* x_147; obj* x_148; obj* x_150; -x_145 = lean::cnstr_get(x_82, 0); -if (lean::is_exclusive(x_82)) { - lean::cnstr_set(x_82, 0, lean::box(0)); - x_147 = x_82; -} else { - lean::inc(x_145); - lean::dec(x_82); - x_147 = lean::box(0); -} -x_150 = lean::cnstr_get(x_19, 1); -lean::inc(x_150); -lean::dec(x_19); -if (lean::obj_tag(x_150) == 0) -{ -obj* x_156; -lean::dec(x_84); -lean::dec(x_147); -lean::dec(x_145); -x_156 = lean::box(0); -x_30 = x_156; -goto lbl_31; -} -else -{ -obj* x_157; obj* x_159; -x_157 = lean::cnstr_get(x_150, 0); -if (lean::is_exclusive(x_150)) { - lean::cnstr_set(x_150, 0, lean::box(0)); - x_159 = x_150; -} else { - lean::inc(x_157); - lean::dec(x_150); - x_159 = lean::box(0); -} -switch (lean::obj_tag(x_157)) { -case 2: -{ -obj* x_160; -x_160 = lean::cnstr_get(x_145, 1); -lean::inc(x_160); -if (lean::obj_tag(x_160) == 0) -{ -obj* x_162; obj* x_165; -x_162 = lean::cnstr_get(x_157, 0); -lean::inc(x_162); -lean::dec(x_157); -x_165 = lean::cnstr_get(x_162, 1); -lean::inc(x_165); -lean::dec(x_162); -if (lean::obj_tag(x_165) == 0) -{ -obj* x_169; -lean::dec(x_159); -x_169 = lean::box(0); -x_148 = x_169; -goto lbl_149; -} -else -{ -obj* x_170; obj* x_172; -x_170 = lean::cnstr_get(x_165, 0); -lean::inc(x_170); -x_172 = lean::cnstr_get(x_170, 1); -lean::inc(x_172); -lean::dec(x_170); -switch (lean::obj_tag(x_172)) { -case 0: -{ -obj* x_176; -lean::dec(x_172); -if (lean::is_scalar(x_159)) { - x_176 = lean::alloc_cnstr(1, 1, 0); -} else { - x_176 = x_159; -} -lean::cnstr_set(x_176, 0, x_165); -x_148 = x_176; -goto lbl_149; -} -default: -{ -obj* x_180; -lean::dec(x_159); -lean::dec(x_172); -lean::dec(x_165); -x_180 = lean::box(0); -x_148 = x_180; -goto lbl_149; -} -} -} -} -else -{ -obj* x_182; obj* x_184; -lean::dec(x_159); -x_182 = lean::cnstr_get(x_160, 0); -lean::inc(x_182); -x_184 = lean::cnstr_get(x_182, 1); -lean::inc(x_184); -lean::dec(x_182); -switch (lean::obj_tag(x_184)) { -case 0: -{ -obj* x_187; obj* x_190; -x_187 = lean::cnstr_get(x_157, 0); -lean::inc(x_187); -lean::dec(x_157); -x_190 = lean::cnstr_get(x_187, 1); -lean::inc(x_190); -lean::dec(x_187); -if (lean::obj_tag(x_190) == 0) -{ -obj* x_195; -lean::dec(x_184); -lean::dec(x_160); -x_195 = lean::box(0); -x_148 = x_195; -goto lbl_149; -} -else -{ -obj* x_196; obj* x_198; obj* x_199; -x_196 = lean::cnstr_get(x_190, 0); -if (lean::is_exclusive(x_190)) { - lean::cnstr_set(x_190, 0, lean::box(0)); - x_198 = x_190; -} else { - lean::inc(x_196); - lean::dec(x_190); - x_198 = lean::box(0); -} -x_199 = lean::cnstr_get(x_196, 1); -lean::inc(x_199); -lean::dec(x_196); -switch (lean::obj_tag(x_199)) { -case 0: -{ -obj* x_202; obj* x_205; obj* x_208; obj* x_209; uint8 x_210; -x_202 = lean::cnstr_get(x_184, 0); -lean::inc(x_202); -lean::dec(x_184); -x_205 = lean::cnstr_get(x_199, 0); -lean::inc(x_205); -lean::dec(x_199); -x_208 = l_Lean_Parser_command_NotationSpec_precedenceTerm_View_toNat___main(x_202); -x_209 = l_Lean_Parser_command_NotationSpec_precedenceTerm_View_toNat___main(x_205); -x_210 = lean::nat_dec_eq(x_208, x_209); -lean::dec(x_209); -lean::dec(x_208); -if (x_210 == 0) -{ -obj* x_215; -lean::dec(x_198); -lean::dec(x_160); -x_215 = lean::box(0); -x_148 = x_215; -goto lbl_149; -} -else -{ -obj* x_216; -if (lean::is_scalar(x_198)) { - x_216 = lean::alloc_cnstr(1, 1, 0); -} else { - x_216 = x_198; -} -lean::cnstr_set(x_216, 0, x_160); -x_148 = x_216; -goto lbl_149; -} -} -default: -{ -obj* x_221; -lean::dec(x_198); -lean::dec(x_184); -lean::dec(x_199); -lean::dec(x_160); -x_221 = lean::box(0); -x_148 = x_221; -goto lbl_149; -} -} -} -} -default: -{ -obj* x_225; -lean::dec(x_184); -lean::dec(x_157); -lean::dec(x_160); -x_225 = lean::box(0); -x_148 = x_225; -goto lbl_149; -} -} -} -} -default: -{ -obj* x_231; -lean::dec(x_84); -lean::dec(x_159); -lean::dec(x_157); -lean::dec(x_147); -lean::dec(x_145); -x_231 = lean::box(0); -x_30 = x_231; -goto lbl_31; -} -} -} -lbl_149: -{ -if (lean::obj_tag(x_148) == 0) -{ -obj* x_235; -lean::dec(x_84); -lean::dec(x_147); -lean::dec(x_145); -x_235 = lean::box(0); -x_30 = x_235; -goto lbl_31; -} -else -{ -obj* x_236; obj* x_238; obj* x_239; obj* x_242; obj* x_243; obj* x_244; obj* x_245; -x_236 = lean::cnstr_get(x_148, 0); -if (lean::is_exclusive(x_148)) { - x_238 = x_148; -} else { - lean::inc(x_236); - lean::dec(x_148); - x_238 = lean::box(0); -} -x_239 = lean::cnstr_get(x_145, 0); -lean::inc(x_239); -lean::dec(x_145); -x_242 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_242, 0, x_239); -lean::cnstr_set(x_242, 1, x_236); -if (lean::is_scalar(x_147)) { - x_243 = lean::alloc_cnstr(2, 1, 0); -} else { - x_243 = x_147; -} -lean::cnstr_set(x_243, 0, x_242); -if (lean::is_scalar(x_238)) { - x_244 = lean::alloc_cnstr(1, 1, 0); -} else { - x_244 = x_238; -} -lean::cnstr_set(x_244, 0, x_243); -if (lean::is_scalar(x_84)) { - x_245 = lean::alloc_cnstr(1, 1, 0); -} else { - x_245 = x_84; -} -lean::cnstr_set(x_245, 0, x_244); -x_30 = x_245; -goto lbl_31; -} -} -} -} -} -} -} -} -lbl_31: -{ -if (lean::obj_tag(x_30) == 0) -{ -obj* x_247; -lean::dec(x_28); -x_247 = lean::box(0); -x_7 = x_247; -goto lbl_8; -} -else -{ -obj* x_248; obj* x_250; obj* x_251; obj* x_252; -x_248 = lean::cnstr_get(x_30, 0); -if (lean::is_exclusive(x_30)) { - x_250 = x_30; -} else { - lean::inc(x_248); - lean::dec(x_30); - x_250 = lean::box(0); -} -x_251 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_251, 0, x_28); -lean::cnstr_set(x_251, 1, x_248); -if (lean::is_scalar(x_250)) { - x_252 = lean::alloc_cnstr(1, 1, 0); -} else { - x_252 = x_250; -} -lean::cnstr_set(x_252, 0, x_251); -x_7 = x_252; -goto lbl_8; -} -} -} -lbl_8: -{ -if (lean::obj_tag(x_7) == 0) -{ -obj* x_255; -lean::dec(x_6); -lean::dec(x_4); -x_255 = lean::box(0); -return x_255; -} -else -{ -obj* x_256; obj* x_259; -x_256 = lean::cnstr_get(x_7, 0); -lean::inc(x_256); -lean::dec(x_7); -x_259 = l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__2(x_4); -if (lean::obj_tag(x_259) == 0) -{ -obj* x_262; -lean::dec(x_6); -lean::dec(x_256); -x_262 = lean::box(0); -return x_262; -} -else -{ -obj* x_263; obj* x_265; obj* x_266; obj* x_267; -x_263 = lean::cnstr_get(x_259, 0); -if (lean::is_exclusive(x_259)) { - x_265 = x_259; -} else { - lean::inc(x_263); - lean::dec(x_259); - x_265 = lean::box(0); -} -if (lean::is_scalar(x_6)) { - x_266 = lean::alloc_cnstr(1, 2, 0); -} else { - x_266 = x_6; -} -lean::cnstr_set(x_266, 0, x_256); -lean::cnstr_set(x_266, 1, x_263); -if (lean::is_scalar(x_265)) { - x_267 = lean::alloc_cnstr(1, 1, 0); -} else { - x_267 = x_265; -} -lean::cnstr_set(x_267, 0, x_266); -return x_267; -} -} -} -} -} -} obj* _init_l_Lean_Elaborator_matchSpec___closed__1() { _start: { @@ -27519,120 +26837,93 @@ return x_0; obj* l_Lean_Elaborator_matchSpec(obj* x_0, obj* x_1) { _start: { -obj* x_2; uint8 x_4; obj* x_5; uint8 x_7; +obj* x_2; obj* x_4; uint8 x_6; obj* x_7; uint8 x_9; x_2 = lean::cnstr_get(x_0, 0); lean::inc(x_2); -x_4 = l_Option_isSome___main___rarg(x_2); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -x_7 = l_Option_isSome___main___rarg(x_5); -lean::dec(x_5); -if (x_4 == 0) +x_6 = l_Option_isSome___main___rarg(x_2); +x_7 = lean::cnstr_get(x_1, 0); +lean::inc(x_7); +x_9 = l_Option_isSome___main___rarg(x_7); +lean::dec(x_7); +if (x_6 == 0) { -if (x_7 == 0) +if (x_9 == 0) { -obj* x_9; obj* x_12; obj* x_15; obj* x_16; obj* x_17; -x_9 = lean::cnstr_get(x_0, 1); -lean::inc(x_9); -lean::dec(x_0); -x_12 = lean::cnstr_get(x_1, 1); -lean::inc(x_12); +obj* x_11; +x_11 = lean::box(0); +x_4 = x_11; +goto lbl_5; +} +else +{ +obj* x_15; lean::dec(x_1); -x_15 = l_Lean_Elaborator_matchSpec___closed__1; -x_16 = l_List_zipWith___main___rarg(x_15, x_9, x_12); -x_17 = l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__1(x_16); -if (lean::obj_tag(x_17) == 0) +lean::dec(x_0); +lean::dec(x_2); +x_15 = lean::box(0); +return x_15; +} +} +else +{ +if (x_9 == 0) { obj* x_19; +lean::dec(x_1); +lean::dec(x_0); lean::dec(x_2); x_19 = lean::box(0); return x_19; } else { -obj* x_20; obj* x_22; obj* x_23; obj* x_24; -x_20 = lean::cnstr_get(x_17, 0); -if (lean::is_exclusive(x_17)) { - x_22 = x_17; -} else { - lean::inc(x_20); - lean::dec(x_17); - x_22 = lean::box(0); -} -x_23 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_23, 0, x_2); -lean::cnstr_set(x_23, 1, x_20); -if (lean::is_scalar(x_22)) { - x_24 = lean::alloc_cnstr(1, 1, 0); -} else { - x_24 = x_22; -} -lean::cnstr_set(x_24, 0, x_23); -return x_24; +obj* x_20; +x_20 = lean::box(0); +x_4 = x_20; +goto lbl_5; } } -else +lbl_5: { -obj* x_28; -lean::dec(x_1); +obj* x_22; obj* x_25; obj* x_28; obj* x_29; obj* x_30; +lean::dec(x_4); +x_22 = lean::cnstr_get(x_0, 1); +lean::inc(x_22); lean::dec(x_0); -lean::dec(x_2); -x_28 = lean::box(0); -return x_28; -} -} -else -{ -if (x_7 == 0) +x_25 = lean::cnstr_get(x_1, 1); +lean::inc(x_25); +lean::dec(x_1); +x_28 = l_Lean_Elaborator_matchSpec___closed__1; +x_29 = l_List_zipWith___main___rarg(x_28, x_22, x_25); +x_30 = l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__1(x_29); +if (lean::obj_tag(x_30) == 0) { obj* x_32; -lean::dec(x_1); -lean::dec(x_0); lean::dec(x_2); x_32 = lean::box(0); return x_32; } else { -obj* x_33; obj* x_36; obj* x_39; obj* x_40; obj* x_41; -x_33 = lean::cnstr_get(x_0, 1); -lean::inc(x_33); -lean::dec(x_0); -x_36 = lean::cnstr_get(x_1, 1); -lean::inc(x_36); -lean::dec(x_1); -x_39 = l_Lean_Elaborator_matchSpec___closed__1; -x_40 = l_List_zipWith___main___rarg(x_39, x_33, x_36); -x_41 = l_List_mmap___main___at_Lean_Elaborator_matchSpec___spec__2(x_40); -if (lean::obj_tag(x_41) == 0) -{ -obj* x_43; -lean::dec(x_2); -x_43 = lean::box(0); -return x_43; -} -else -{ -obj* x_44; obj* x_46; obj* x_47; obj* x_48; -x_44 = lean::cnstr_get(x_41, 0); -if (lean::is_exclusive(x_41)) { - x_46 = x_41; +obj* x_33; obj* x_35; obj* x_36; obj* x_37; +x_33 = lean::cnstr_get(x_30, 0); +if (lean::is_exclusive(x_30)) { + x_35 = x_30; } else { - lean::inc(x_44); - lean::dec(x_41); - x_46 = lean::box(0); + lean::inc(x_33); + lean::dec(x_30); + x_35 = lean::box(0); } -x_47 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_47, 0, x_2); -lean::cnstr_set(x_47, 1, x_44); -if (lean::is_scalar(x_46)) { - x_48 = lean::alloc_cnstr(1, 1, 0); +x_36 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_36, 0, x_2); +lean::cnstr_set(x_36, 1, x_33); +if (lean::is_scalar(x_35)) { + x_37 = lean::alloc_cnstr(1, 1, 0); } else { - x_48 = x_46; -} -lean::cnstr_set(x_48, 0, x_47); -return x_48; + x_37 = x_35; } +lean::cnstr_set(x_37, 0, x_36); +return x_37; } } } diff --git a/src/stage0/init/lean/expander.cpp b/src/stage0/init/lean/expander.cpp index 0bba145f4d..6cd0e54581 100644 --- a/src/stage0/init/lean/expander.cpp +++ b/src/stage0/init/lean/expander.cpp @@ -120,7 +120,6 @@ obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__4 extern obj* l_Lean_Parser_command_reserveNotation_HasView; obj* l_Lean_Expander_coeSimpleBinderBinders(obj*); extern obj* l_Lean_Parser_command_axiom_HasView; -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2; obj* l_Lean_Expander_paren_transform___closed__1; obj* l_Lean_Expander_TransformM_MonadReader; extern obj* l_Lean_Parser_command_variables_HasView; @@ -138,21 +137,20 @@ extern obj* l_Lean_Parser_Term_depArrow; extern obj* l_Lean_Parser_command_introRule_HasView; extern obj* l_Lean_Parser_command_universes_HasView; obj* l_Lean_Expander_coeBracketedBinderMixedBinder(obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6(obj*, obj*, obj*); obj* l_Lean_Parser_tryView___at_Lean_Expander_mkNotationTransformer___spec__6___boxed(obj*, obj*); extern obj* l_Lean_Parser_command_variable_HasView; obj* l_Lean_Expander_coeNameIdent(obj*); -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9(obj*, obj*, obj*, obj*); obj* l_List_map___main___at_Lean_Expander_coeMixedBindersBindersExt___spec__2(obj*); obj* l_ReaderT_Monad___rarg(obj*); obj* l_Lean_Expander_error___rarg___lambda__1___closed__1; obj* l_RBNode_ins___main___at_Lean_Expander_builtinTransformers___spec__5(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_error___rarg(obj*, obj*, obj*, obj*, obj*, obj*, obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(obj*, obj*, obj*); +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_coeIdentsBindersExt___rarg(obj*, obj*); obj* l_RBNode_ins___main___at_Lean_Expander_builtinTransformers___spec__4(obj*, obj*, obj*, obj*); obj* l_List_join___main___rarg(obj*); obj* l_RBNode_find___main___at_Lean_NameMap_contains___spec__2(obj*, obj*, obj*, obj*); +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1; obj* l_List_foldr1___main___at_Lean_Expander_paren_transform___spec__3___boxed(obj*, obj*); obj* l_List_map___main___at_Lean_Expander_mkNotationTransformer___spec__3(obj*); obj* l_Lean_Expander_binderIdentToIdent___main___closed__1; @@ -184,7 +182,6 @@ obj* l_Lean_Expander_introRule_transform(obj*, obj*); obj* l_Lean_Expander_expandBracketedBinder___main___closed__8; obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__18(obj*, obj*); extern obj* l_Lean_Parser_Term_depArrow_HasView; -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10___boxed(obj*, obj*, obj*, obj*); obj* l_List_mmap_x_27___main___at_Lean_Expander_mkNotationTransformer___spec__4(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_Subtype_transform(obj*, obj*); obj* l_Lean_Parser_Syntax_getPos(obj*); @@ -195,7 +192,7 @@ obj* l_Lean_Expander_mixfixToNotationSpec___closed__2; obj* l_List_foldr1___main___at_Lean_Expander_paren_transform___spec__3___closed__1; extern obj* l_Lean_Parser_noKind; extern obj* l_Lean_Parser_Term_lambda_HasView; -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7___boxed(obj*, obj*, obj*); +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7___boxed(obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_Term_paren; obj* l_List_map___main___at_Lean_Expander_coeIdentsBindersExt___spec__2(obj*); obj* l_Lean_Parser_symbolCore___at_Lean_Parser_command_NotationSpec_precedenceTerm_Parser_Lean_Parser_HasTokens___spec__1___boxed(obj*, obj*, obj*, obj*, obj*, obj*, obj*, obj*); @@ -210,7 +207,6 @@ namespace lean { obj* nat_add(obj*, obj*); } obj* l_Lean_Expander_mkSimpleBinder___closed__1; -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4; obj* l_Lean_Expander_pi_transform(obj*, obj*); extern obj* l_Lean_Parser_Term_sorry; obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__8(obj*, obj*); @@ -220,12 +216,10 @@ uint8 nat_dec_eq(obj*, obj*); obj* l_Lean_Expander_coeIdentBinderId(obj*); obj* l_Lean_Expander_error___at___private_init_lean_expander_2__expandCore___main___spec__1___rarg___boxed(obj*, obj*, obj*, obj*); obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__3(obj*, obj*, obj*, obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10(obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_Term_Subtype; obj* l_Lean_Expander_binderIdentToIdent___main___boxed(obj*); uint8 l_RBNode_isRed___main___rarg(obj*); obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__3(uint8, obj*, obj*); -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3; obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__1___boxed(obj*, obj*, obj*); obj* l_Lean_Expander_mkSimpleBinder___closed__6; obj* l_List_mmap___main___at___private_init_lean_expander_2__expandCore___main___spec__5(obj*, obj*, obj*, obj*); @@ -240,11 +234,11 @@ obj* l_Lean_Expander_globId(obj*); extern obj* l_Lean_Parser_command_variable; obj* l_Lean_Expander_expandBracketedBinder___main___closed__4; obj* l_Lean_Expander_if_transform___closed__2; -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6___boxed(obj*, obj*, obj*); obj* l_Lean_Expander_expandBracketedBinder___main___closed__1; extern obj* l_Lean_Parser_Level_leading; obj* l_Lean_Expander_error___at___private_init_lean_expander_1__popStxArg___spec__1___boxed(obj*); extern obj* l_Lean_Parser_command_notation_HasView; +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2; obj* l_Lean_Expander_axiom_transform(obj*, obj*); obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__4(obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_Term_app_HasView; @@ -254,9 +248,8 @@ extern obj* l_Lean_Parser_Term_assume; obj* l_Lean_Expander_coeIdentIdentUnivs(obj*); obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__20___boxed(obj*, obj*, obj*); obj* l_Lean_Expander_noExpansion___boxed(obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(obj*, obj*, obj*); +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_mkScope___boxed(obj*, obj*); -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1; obj* l_coe___at_Lean_Expander_coeMixedBindersBindersExt___spec__1___rarg(obj*, obj*); obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__23(uint8, obj*, obj*); obj* l_Lean_Expander_paren_transform___closed__2; @@ -287,7 +280,6 @@ extern obj* l_Lean_Parser_command_universe_HasView; obj* l_Lean_Expander_if_transform___closed__3; obj* l_Lean_Expander_reserveMixfix_transform(obj*, obj*); obj* l_coe___at_Lean_Expander_coeMixedBindersBindersExt___spec__1(obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11___boxed(obj*, obj*, obj*, obj*); obj* l_List_map___main___at_Lean_Expander_coeMixedBindersBindersExt___spec__2___rarg(obj*, obj*); extern obj* l_Lean_Parser_Term_anonymousConstructor_HasView; obj* l_Lean_Expander_TransformM_MonadExcept; @@ -309,12 +301,13 @@ obj* l_Lean_Expander_pi_transform___lambda__1(obj*, obj*, obj*); obj* l_Lean_Expander_Subtype_transform___boxed(obj*, obj*); obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__3___boxed(obj*, obj*, obj*, obj*); obj* l_List_map___main___at_Lean_Expander_expandBracketedBinder___main___spec__11(obj*, obj*); +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6(obj*, obj*, obj*, obj*); obj* l_List_map___main___at___private_init_lean_expander_2__expandCore___main___spec__4(obj*, obj*); extern obj* l_Lean_Parser_Term_arrow_HasView; obj* l_Lean_Expander_mkSimpleBinder___closed__7; obj* l_ExceptT_Monad___rarg(obj*); obj* l_Lean_Expander_variables_transform(obj*, obj*); -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8___boxed(obj*, obj*, obj*); +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8___boxed(obj*, obj*, obj*, obj*); obj* l_id_Monad___lambda__1___boxed(obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_Term_paren_HasView; extern obj* l_Lean_Parser_Term_lambda; @@ -325,6 +318,7 @@ extern obj* l_Lean_Name_toString___closed__1; obj* l_Lean_Expander_bindingAnnotationUpdate_Parser_Lean_Parser_HasView; obj* l_RBMap_insert___main___at_Lean_Expander_builtinTransformers___spec__2___boxed(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_paren_transform___boxed(obj*, obj*); +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4; obj* l_Lean_Expander_expandBracketedBinder___main___closed__6; obj* l_coe___at_Lean_Expander_coeIdentsBindersExt___spec__1___boxed(obj*); obj* l_Lean_Expander_expandBracketedBinder___main___closed__7; @@ -344,6 +338,7 @@ obj* l_Lean_Expander_mixfix_transform(obj*, obj*); extern obj* l_Lean_Parser_Term_pi; obj* l_List_mmap___main___at_Lean_Expander_variables_transform___spec__1(obj*, obj*); obj* l_List_map___main___at_Lean_Expander_universes_transform___spec__1___closed__1; +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3; obj* l_coe___at_Lean_Expander_coeIdentsBindersExt___spec__1___rarg(obj*, obj*); obj* l_Lean_FileMap_toPosition(obj*, obj*); obj* l_Lean_Expander_error___boxed(obj*, obj*); @@ -362,7 +357,6 @@ obj* l_Lean_Expander_mixfixToNotationSpec(obj*, obj*, obj*); obj* l_Lean_Parser_Substring_ofString(obj*); extern obj* l_Lean_Parser_command_Declaration_HasView; obj* l_Lean_Expander_mkSimpleBinder___closed__4; -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11(obj*, obj*, obj*, obj*); obj* l_Lean_Expander_noExpansion___closed__1; obj* l_List_foldl___main___at_Lean_Expander_builtinTransformers___spec__6(obj*, obj*, obj*); obj* l_Lean_Expander_binderIdentToIdent___main(obj*); @@ -3175,23 +3169,23 @@ return x_11; obj* _init_l_Lean_Expander_mixfixToNotationSpec___closed__3() { _start: { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; +obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; x_0 = lean::box(0); x_1 = lean::box(0); -x_2 = lean::mk_string("b"); -x_3 = lean_name_mk_string(x_1, x_2); -x_4 = lean::mk_string("."); -lean::inc(x_3); -x_6 = l_Lean_Name_toStringWithSep___main(x_4, x_3); -lean::dec(x_4); -x_8 = l_Lean_Parser_Substring_ofString(x_6); -x_9 = lean::box(0); +x_2 = lean::box(0); +x_3 = lean::mk_string("b"); +x_4 = lean_name_mk_string(x_2, x_3); +x_5 = lean::mk_string("."); +lean::inc(x_4); +x_7 = l_Lean_Name_toStringWithSep___main(x_5, x_4); +lean::dec(x_5); +x_9 = l_Lean_Parser_Substring_ofString(x_7); x_10 = lean::alloc_cnstr(0, 5, 0); lean::cnstr_set(x_10, 0, x_0); -lean::cnstr_set(x_10, 1, x_8); -lean::cnstr_set(x_10, 2, x_3); -lean::cnstr_set(x_10, 3, x_9); -lean::cnstr_set(x_10, 4, x_9); +lean::cnstr_set(x_10, 1, x_9); +lean::cnstr_set(x_10, 2, x_4); +lean::cnstr_set(x_10, 3, x_1); +lean::cnstr_set(x_10, 4, x_1); x_11 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_11, 0, x_10); lean::cnstr_set(x_11, 1, x_0); @@ -3221,6 +3215,36 @@ return x_5; obj* _init_l_Lean_Expander_mixfixToNotationSpec___closed__5() { _start: { +obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; +x_0 = lean::box(0); +x_1 = lean::box(0); +x_2 = lean::mk_string("b"); +x_3 = lean_name_mk_string(x_1, x_2); +x_4 = lean::mk_string("."); +lean::inc(x_3); +x_6 = l_Lean_Name_toStringWithSep___main(x_4, x_3); +lean::dec(x_4); +x_8 = l_Lean_Parser_Substring_ofString(x_6); +x_9 = lean::box(0); +x_10 = lean::alloc_cnstr(0, 5, 0); +lean::cnstr_set(x_10, 0, x_0); +lean::cnstr_set(x_10, 1, x_8); +lean::cnstr_set(x_10, 2, x_3); +lean::cnstr_set(x_10, 3, x_9); +lean::cnstr_set(x_10, 4, x_9); +x_11 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_11, 0, x_10); +lean::cnstr_set(x_11, 1, x_0); +x_12 = lean::alloc_cnstr(2, 1, 0); +lean::cnstr_set(x_12, 0, x_11); +x_13 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_13, 0, x_12); +return x_13; +} +} +obj* _init_l_Lean_Expander_mixfixToNotationSpec___closed__6() { +_start: +{ obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; x_0 = lean::box(0); x_1 = lean::box(0); @@ -3241,36 +3265,6 @@ lean::cnstr_set(x_10, 4, x_9); return x_10; } } -obj* _init_l_Lean_Expander_mixfixToNotationSpec___closed__6() { -_start: -{ -obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_13; -x_0 = lean::box(0); -x_1 = lean::box(0); -x_2 = lean::box(0); -x_3 = lean::mk_string("b"); -x_4 = lean_name_mk_string(x_2, x_3); -x_5 = lean::mk_string("."); -lean::inc(x_4); -x_7 = l_Lean_Name_toStringWithSep___main(x_5, x_4); -lean::dec(x_5); -x_9 = l_Lean_Parser_Substring_ofString(x_7); -x_10 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_10, 0, x_0); -lean::cnstr_set(x_10, 1, x_9); -lean::cnstr_set(x_10, 2, x_4); -lean::cnstr_set(x_10, 3, x_1); -lean::cnstr_set(x_10, 4, x_1); -x_11 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_11, 0, x_10); -lean::cnstr_set(x_11, 1, x_0); -x_12 = lean::alloc_cnstr(2, 1, 0); -lean::cnstr_set(x_12, 0, x_11); -x_13 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_13, 0, x_12); -return x_13; -} -} obj* _init_l_Lean_Expander_mixfixToNotationSpec___closed__7() { _start: { @@ -3282,87 +3276,84 @@ return x_0; obj* l_Lean_Expander_mixfixToNotationSpec(obj* x_0, obj* x_1, obj* x_2) { _start: { -obj* x_3; +obj* x_3; obj* x_5; obj* x_7; +x_5 = lean::cnstr_get(x_1, 3); +lean::inc(x_5); switch (lean::obj_tag(x_0)) { case 0: { -obj* x_6; obj* x_8; obj* x_9; +obj* x_10; obj* x_11; lean::dec(x_2); -x_6 = lean::cnstr_get(x_1, 3); -lean::inc(x_6); -x_8 = lean::box(0); -x_9 = lean::box(0); -if (lean::obj_tag(x_6) == 0) +x_10 = lean::box(0); +x_11 = lean::box(0); +if (lean::obj_tag(x_5) == 0) { -obj* x_10; obj* x_11; obj* x_12; obj* x_13; obj* x_14; -x_10 = l_Lean_Expander_mixfixToNotationSpec___closed__3; -x_11 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_11, 0, x_1); -lean::cnstr_set(x_11, 1, x_10); -x_12 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_12, 0, x_11); -lean::cnstr_set(x_12, 1, x_9); +obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; +x_12 = l_Lean_Expander_mixfixToNotationSpec___closed__5; x_13 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_13, 0, x_8); +lean::cnstr_set(x_13, 0, x_1); lean::cnstr_set(x_13, 1, x_12); -x_14 = lean::alloc_cnstr(1, 1, 0); +x_14 = lean::alloc_cnstr(1, 2, 0); lean::cnstr_set(x_14, 0, x_13); -return x_14; +lean::cnstr_set(x_14, 1, x_11); +x_15 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_15, 0, x_10); +lean::cnstr_set(x_15, 1, x_14); +x_16 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_16, 0, x_15); +return x_16; } 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; obj* x_26; obj* x_27; obj* x_28; obj* x_29; obj* x_30; obj* x_31; obj* x_32; -x_15 = lean::cnstr_get(x_6, 0); -if (lean::is_exclusive(x_6)) { - x_17 = x_6; +obj* x_17; obj* x_19; obj* x_20; 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; obj* x_34; +x_17 = lean::cnstr_get(x_5, 0); +if (lean::is_exclusive(x_5)) { + x_19 = x_5; } else { - lean::inc(x_15); - lean::dec(x_6); - x_17 = lean::box(0); + lean::inc(x_17); + lean::dec(x_5); + x_19 = lean::box(0); } -x_18 = lean::cnstr_get(x_15, 1); -lean::inc(x_18); -lean::dec(x_15); -x_21 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_21, 0, x_18); -x_22 = l_Lean_Expander_mixfixToNotationSpec___closed__4; -x_23 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_23, 0, x_22); -lean::cnstr_set(x_23, 1, x_21); -if (lean::is_scalar(x_17)) { - x_24 = lean::alloc_cnstr(1, 1, 0); +x_20 = lean::cnstr_get(x_17, 1); +lean::inc(x_20); +lean::dec(x_17); +x_23 = lean::alloc_cnstr(0, 1, 0); +lean::cnstr_set(x_23, 0, x_20); +x_24 = l_Lean_Expander_mixfixToNotationSpec___closed__4; +x_25 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_25, 0, x_24); +lean::cnstr_set(x_25, 1, x_23); +if (lean::is_scalar(x_19)) { + x_26 = lean::alloc_cnstr(1, 1, 0); } else { - x_24 = x_17; + x_26 = x_19; } -lean::cnstr_set(x_24, 0, x_23); -x_25 = l_Lean_Expander_mixfixToNotationSpec___closed__5; -x_26 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_26, 0, x_25); -lean::cnstr_set(x_26, 1, x_24); -x_27 = lean::alloc_cnstr(2, 1, 0); -lean::cnstr_set(x_27, 0, x_26); -x_28 = lean::alloc_cnstr(1, 1, 0); +x_27 = l_Lean_Expander_mixfixToNotationSpec___closed__6; +x_28 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_28, 0, x_27); -x_29 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_29, 0, x_1); -lean::cnstr_set(x_29, 1, x_28); -x_30 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_28, 1, x_26); +x_29 = lean::alloc_cnstr(2, 1, 0); +lean::cnstr_set(x_29, 0, x_28); +x_30 = lean::alloc_cnstr(1, 1, 0); lean::cnstr_set(x_30, 0, x_29); -lean::cnstr_set(x_30, 1, x_9); x_31 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_31, 0, x_8); +lean::cnstr_set(x_31, 0, x_1); lean::cnstr_set(x_31, 1, x_30); -x_32 = lean::alloc_cnstr(1, 1, 0); +x_32 = lean::alloc_cnstr(1, 2, 0); lean::cnstr_set(x_32, 0, x_31); -return x_32; +lean::cnstr_set(x_32, 1, x_11); +x_33 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_33, 0, x_10); +lean::cnstr_set(x_33, 1, x_32); +x_34 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_34, 0, x_33); +return x_34; } } case 3: { -obj* x_33; -x_33 = lean::cnstr_get(x_1, 3); -lean::inc(x_33); -if (lean::obj_tag(x_33) == 0) +if (lean::obj_tag(x_5) == 0) { obj* x_36; lean::dec(x_2); @@ -3373,13 +3364,13 @@ goto lbl_4; else { obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_43; uint8 x_44; -x_37 = lean::cnstr_get(x_33, 0); -if (lean::is_exclusive(x_33)) { - lean::cnstr_set(x_33, 0, lean::box(0)); - x_39 = x_33; +x_37 = lean::cnstr_get(x_5, 0); +if (lean::is_exclusive(x_5)) { + lean::cnstr_set(x_5, 0, lean::box(0)); + x_39 = x_5; } else { lean::inc(x_37); - lean::dec(x_33); + lean::dec(x_5); x_39 = lean::box(0); } x_40 = lean::cnstr_get(x_37, 1); @@ -3467,124 +3458,131 @@ goto lbl_4; } case 4: { -obj* x_76; obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; +obj* x_77; obj* x_78; obj* x_79; obj* x_80; obj* x_81; obj* x_82; obj* x_83; +lean::dec(x_5); lean::dec(x_2); -x_76 = lean::box(0); x_77 = lean::box(0); -x_78 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_78, 0, x_1); -lean::cnstr_set(x_78, 1, x_76); -x_79 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_79, 0, x_78); +x_78 = lean::box(0); +x_79 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_79, 0, x_1); lean::cnstr_set(x_79, 1, x_77); -x_80 = l_Lean_Expander_mixfixToNotationSpec___closed__2; -x_81 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_81, 0, x_80); -lean::cnstr_set(x_81, 1, x_79); -x_82 = lean::alloc_cnstr(1, 1, 0); +x_80 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_80, 0, x_79); +lean::cnstr_set(x_80, 1, x_78); +x_81 = l_Lean_Expander_mixfixToNotationSpec___closed__2; +x_82 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_82, 0, x_81); -return x_82; +lean::cnstr_set(x_82, 1, x_80); +x_83 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_83, 0, x_82); +return x_83; } default: { -obj* x_84; obj* x_86; +obj* x_85; lean::dec(x_2); -x_84 = lean::cnstr_get(x_1, 3); -lean::inc(x_84); -x_86 = lean::box(0); -if (lean::obj_tag(x_84) == 0) -{ -obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; -x_87 = l_Lean_Expander_mixfixToNotationSpec___closed__6; -x_88 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_88, 0, x_1); -lean::cnstr_set(x_88, 1, x_87); -x_89 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_89, 0, x_88); -lean::cnstr_set(x_89, 1, x_86); -x_90 = l_Lean_Expander_mixfixToNotationSpec___closed__2; -x_91 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_91, 0, x_90); -lean::cnstr_set(x_91, 1, x_89); -x_92 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_92, 0, x_91); -return x_92; -} -else -{ -obj* x_93; obj* x_95; obj* x_96; 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; -x_93 = lean::cnstr_get(x_84, 0); -if (lean::is_exclusive(x_84)) { - x_95 = x_84; -} else { - lean::inc(x_93); - lean::dec(x_84); - x_95 = lean::box(0); -} -x_96 = lean::cnstr_get(x_93, 1); -lean::inc(x_96); -lean::dec(x_93); -x_99 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_99, 0, x_96); -x_100 = l_Lean_Expander_mixfixToNotationSpec___closed__4; -x_101 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_101, 0, x_100); -lean::cnstr_set(x_101, 1, x_99); -if (lean::is_scalar(x_95)) { - x_102 = lean::alloc_cnstr(1, 1, 0); -} else { - x_102 = x_95; -} -lean::cnstr_set(x_102, 0, x_101); -x_103 = l_Lean_Expander_mixfixToNotationSpec___closed__1; -x_104 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_104, 0, x_103); -lean::cnstr_set(x_104, 1, x_102); -x_105 = lean::alloc_cnstr(2, 1, 0); -lean::cnstr_set(x_105, 0, x_104); -x_106 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_106, 0, x_105); -x_107 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_107, 0, x_1); -lean::cnstr_set(x_107, 1, x_106); -x_108 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_108, 0, x_107); -lean::cnstr_set(x_108, 1, x_86); -x_109 = l_Lean_Expander_mixfixToNotationSpec___closed__2; -x_110 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_110, 0, x_109); -lean::cnstr_set(x_110, 1, x_108); -x_111 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_111, 0, x_110); -return x_111; -} +x_85 = lean::box(0); +x_7 = x_85; +goto lbl_8; } } lbl_4: { -obj* x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; obj* x_119; obj* x_120; obj* x_121; -x_112 = lean::box(0); -x_113 = l_Lean_Expander_mixfixToNotationSpec___closed__1; -x_114 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_114, 0, x_113); -lean::cnstr_set(x_114, 1, x_3); -x_115 = lean::alloc_cnstr(2, 1, 0); +obj* x_86; obj* x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; obj* x_93; obj* x_94; obj* x_95; +x_86 = lean::box(0); +x_87 = l_Lean_Expander_mixfixToNotationSpec___closed__1; +x_88 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_88, 0, x_87); +lean::cnstr_set(x_88, 1, x_3); +x_89 = lean::alloc_cnstr(2, 1, 0); +lean::cnstr_set(x_89, 0, x_88); +x_90 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_90, 0, x_89); +x_91 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_91, 0, x_1); +lean::cnstr_set(x_91, 1, x_90); +x_92 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_92, 0, x_91); +lean::cnstr_set(x_92, 1, x_86); +x_93 = l_Lean_Expander_mixfixToNotationSpec___closed__2; +x_94 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_94, 0, x_93); +lean::cnstr_set(x_94, 1, x_92); +x_95 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_95, 0, x_94); +return x_95; +} +lbl_8: +{ +obj* x_97; +lean::dec(x_7); +x_97 = lean::box(0); +if (lean::obj_tag(x_5) == 0) +{ +obj* x_98; obj* x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; +x_98 = l_Lean_Expander_mixfixToNotationSpec___closed__3; +x_99 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_99, 0, x_1); +lean::cnstr_set(x_99, 1, x_98); +x_100 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_100, 0, x_99); +lean::cnstr_set(x_100, 1, x_97); +x_101 = l_Lean_Expander_mixfixToNotationSpec___closed__2; +x_102 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_102, 0, x_101); +lean::cnstr_set(x_102, 1, x_100); +x_103 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_103, 0, x_102); +return x_103; +} +else +{ +obj* x_104; obj* x_106; obj* x_107; obj* x_110; obj* x_111; obj* x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; obj* x_118; obj* x_119; obj* x_120; obj* x_121; obj* x_122; +x_104 = lean::cnstr_get(x_5, 0); +if (lean::is_exclusive(x_5)) { + x_106 = x_5; +} else { + lean::inc(x_104); + lean::dec(x_5); + x_106 = lean::box(0); +} +x_107 = lean::cnstr_get(x_104, 1); +lean::inc(x_107); +lean::dec(x_104); +x_110 = lean::alloc_cnstr(0, 1, 0); +lean::cnstr_set(x_110, 0, x_107); +x_111 = l_Lean_Expander_mixfixToNotationSpec___closed__4; +x_112 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_112, 0, x_111); +lean::cnstr_set(x_112, 1, x_110); +if (lean::is_scalar(x_106)) { + x_113 = lean::alloc_cnstr(1, 1, 0); +} else { + x_113 = x_106; +} +lean::cnstr_set(x_113, 0, x_112); +x_114 = l_Lean_Expander_mixfixToNotationSpec___closed__1; +x_115 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_115, 0, x_114); -x_116 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_115, 1, x_113); +x_116 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_116, 0, x_115); -x_117 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_117, 0, x_1); -lean::cnstr_set(x_117, 1, x_116); -x_118 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_118, 0, x_117); -lean::cnstr_set(x_118, 1, x_112); -x_119 = l_Lean_Expander_mixfixToNotationSpec___closed__2; -x_120 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_120, 0, x_119); -lean::cnstr_set(x_120, 1, x_118); -x_121 = lean::alloc_cnstr(1, 1, 0); +x_117 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_117, 0, x_116); +x_118 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_118, 0, x_1); +lean::cnstr_set(x_118, 1, x_117); +x_119 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_119, 0, x_118); +lean::cnstr_set(x_119, 1, x_97); +x_120 = l_Lean_Expander_mixfixToNotationSpec___closed__2; +x_121 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_121, 0, x_120); -return x_121; +lean::cnstr_set(x_121, 1, x_119); +x_122 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_122, 0, x_121); +return x_122; +} } } } @@ -3607,69 +3605,6 @@ x_2 = lean::cnstr_get(x_1, 1); lean::inc(x_2); lean::dec(x_1); x_5 = lean::box(0); -x_6 = lean::mk_string("b"); -x_7 = lean_name_mk_string(x_5, x_6); -x_8 = lean::mk_string("."); -lean::inc(x_7); -x_10 = l_Lean_Name_toStringWithSep___main(x_8, x_7); -lean::dec(x_8); -x_12 = l_Lean_Parser_Substring_ofString(x_10); -x_13 = lean::box(0); -x_14 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_14, 0, x_0); -lean::cnstr_set(x_14, 1, x_12); -lean::cnstr_set(x_14, 2, x_7); -lean::cnstr_set(x_14, 3, x_13); -lean::cnstr_set(x_14, 4, x_13); -x_15 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_15, 0, x_14); -lean::cnstr_set(x_15, 1, x_0); -x_16 = lean::apply_1(x_2, x_15); -return x_16; -} -} -obj* _init_l_Lean_Expander_mixfix_transform___closed__2() { -_start: -{ -obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; -x_0 = lean::box(0); -x_1 = lean::mk_string("notation"); -x_2 = l_String_trim(x_1); -lean::dec(x_1); -x_4 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_4, 0, x_0); -lean::cnstr_set(x_4, 1, x_2); -x_5 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_5, 0, x_4); -return x_5; -} -} -obj* _init_l_Lean_Expander_mixfix_transform___closed__3() { -_start: -{ -obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; -x_0 = lean::box(0); -x_1 = lean::mk_string(":="); -x_2 = l_String_trim(x_1); -lean::dec(x_1); -x_4 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_4, 0, x_0); -lean::cnstr_set(x_4, 1, x_2); -x_5 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_5, 0, x_4); -return x_5; -} -} -obj* _init_l_Lean_Expander_mixfix_transform___closed__4() { -_start: -{ -obj* x_0; obj* x_1; obj* x_2; obj* x_5; obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; -x_0 = lean::box(0); -x_1 = l_Lean_Parser_identUnivs_HasView; -x_2 = lean::cnstr_get(x_1, 1); -lean::inc(x_2); -lean::dec(x_1); -x_5 = lean::box(0); x_6 = lean::mk_string("a"); x_7 = lean_name_mk_string(x_5, x_6); x_8 = lean::mk_string("."); @@ -3691,7 +3626,7 @@ x_16 = lean::apply_1(x_2, x_15); return x_16; } } -obj* _init_l_Lean_Expander_mixfix_transform___closed__5() { +obj* _init_l_Lean_Expander_mixfix_transform___closed__2() { _start: { obj* x_0; obj* x_1; obj* x_2; obj* x_5; obj* x_6; obj* x_7; obj* x_8; obj* x_9; obj* x_11; obj* x_13; obj* x_14; obj* x_15; obj* x_16; @@ -3722,6 +3657,69 @@ x_16 = lean::apply_1(x_2, x_15); return x_16; } } +obj* _init_l_Lean_Expander_mixfix_transform___closed__3() { +_start: +{ +obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; +x_0 = lean::box(0); +x_1 = lean::mk_string("notation"); +x_2 = l_String_trim(x_1); +lean::dec(x_1); +x_4 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_4, 0, x_0); +lean::cnstr_set(x_4, 1, x_2); +x_5 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_5, 0, x_4); +return x_5; +} +} +obj* _init_l_Lean_Expander_mixfix_transform___closed__4() { +_start: +{ +obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; +x_0 = lean::box(0); +x_1 = lean::mk_string(":="); +x_2 = l_String_trim(x_1); +lean::dec(x_1); +x_4 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_4, 0, x_0); +lean::cnstr_set(x_4, 1, x_2); +x_5 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_5, 0, x_4); +return x_5; +} +} +obj* _init_l_Lean_Expander_mixfix_transform___closed__5() { +_start: +{ +obj* x_0; obj* x_1; obj* x_2; obj* x_5; obj* x_6; obj* x_7; obj* x_8; obj* x_10; obj* x_12; obj* x_13; obj* x_14; obj* x_15; obj* x_16; +x_0 = lean::box(0); +x_1 = l_Lean_Parser_identUnivs_HasView; +x_2 = lean::cnstr_get(x_1, 1); +lean::inc(x_2); +lean::dec(x_1); +x_5 = lean::box(0); +x_6 = lean::mk_string("b"); +x_7 = lean_name_mk_string(x_5, x_6); +x_8 = lean::mk_string("."); +lean::inc(x_7); +x_10 = l_Lean_Name_toStringWithSep___main(x_8, x_7); +lean::dec(x_8); +x_12 = l_Lean_Parser_Substring_ofString(x_10); +x_13 = lean::box(0); +x_14 = lean::alloc_cnstr(0, 5, 0); +lean::cnstr_set(x_14, 0, x_0); +lean::cnstr_set(x_14, 1, x_12); +lean::cnstr_set(x_14, 2, x_7); +lean::cnstr_set(x_14, 3, x_13); +lean::cnstr_set(x_14, 4, x_13); +x_15 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_15, 0, x_14); +lean::cnstr_set(x_15, 1, x_0); +x_16 = lean::apply_1(x_2, x_15); +return x_16; +} +} obj* _init_l_Lean_Expander_mixfix_transform___closed__6() { _start: { @@ -3801,7 +3799,7 @@ return x_28; } else { -obj* x_29; obj* x_31; obj* x_32; +obj* x_29; obj* x_31; obj* x_32; obj* x_33; obj* x_36; obj* x_38; x_29 = lean::cnstr_get(x_22, 0); if (lean::is_exclusive(x_22)) { lean::cnstr_set(x_22, 0, lean::box(0)); @@ -3812,133 +3810,125 @@ if (lean::is_exclusive(x_22)) { x_31 = lean::box(0); } x_32 = l_Lean_Parser_command_notation_HasView; +x_33 = lean::cnstr_get(x_32, 1); +lean::inc(x_33); +lean::dec(x_32); +x_36 = lean::cnstr_get(x_6, 0); +lean::inc(x_36); switch (lean::obj_tag(x_9)) { case 0: { -obj* x_34; obj* x_37; obj* x_39; obj* x_40; obj* x_43; obj* x_46; 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_42; obj* x_43; obj* x_46; 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; lean::dec(x_9); -x_34 = lean::cnstr_get(x_32, 1); -lean::inc(x_34); -lean::dec(x_32); -x_37 = lean::cnstr_get(x_6, 0); -lean::inc(x_37); -x_39 = l_Lean_Parser_Term_app_HasView; -x_40 = lean::cnstr_get(x_39, 1); -lean::inc(x_40); -lean::dec(x_39); -x_43 = lean::cnstr_get(x_6, 4); +lean::dec(x_31); +x_42 = l_Lean_Parser_Term_app_HasView; +x_43 = lean::cnstr_get(x_42, 1); lean::inc(x_43); +lean::dec(x_42); +x_46 = lean::cnstr_get(x_6, 4); +lean::inc(x_46); lean::dec(x_6); -x_46 = l_Lean_Expander_mixfix_transform___closed__1; -x_47 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_47, 0, x_43); -lean::cnstr_set(x_47, 1, x_46); -x_48 = lean::apply_1(x_40, x_47); -x_49 = l_Lean_Expander_mixfix_transform___closed__2; -x_50 = l_Lean_Expander_mixfix_transform___closed__3; -x_51 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_51, 0, x_37); -lean::cnstr_set(x_51, 1, x_49); -lean::cnstr_set(x_51, 2, x_29); -lean::cnstr_set(x_51, 3, x_50); -lean::cnstr_set(x_51, 4, x_48); -x_52 = lean::apply_1(x_34, x_51); -x_53 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_53, 0, x_52); -if (lean::is_scalar(x_31)) { - x_54 = lean::alloc_cnstr(1, 1, 0); -} else { - x_54 = x_31; -} -lean::cnstr_set(x_54, 0, x_53); -return x_54; +x_49 = l_Lean_Expander_mixfix_transform___closed__5; +x_50 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_50, 0, x_46); +lean::cnstr_set(x_50, 1, x_49); +x_51 = lean::apply_1(x_43, x_50); +x_52 = l_Lean_Expander_mixfix_transform___closed__3; +x_53 = l_Lean_Expander_mixfix_transform___closed__4; +x_54 = lean::alloc_cnstr(0, 5, 0); +lean::cnstr_set(x_54, 0, x_36); +lean::cnstr_set(x_54, 1, x_52); +lean::cnstr_set(x_54, 2, x_29); +lean::cnstr_set(x_54, 3, x_53); +lean::cnstr_set(x_54, 4, x_51); +x_55 = lean::apply_1(x_33, x_54); +x_56 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_56, 0, x_55); +x_57 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_57, 0, x_56); +return x_57; } case 4: { -obj* x_56; obj* x_59; obj* x_61; obj* x_62; obj* x_65; 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_60; obj* x_61; obj* x_64; obj* 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; lean::dec(x_9); -x_56 = lean::cnstr_get(x_32, 1); -lean::inc(x_56); -lean::dec(x_32); -x_59 = lean::cnstr_get(x_6, 0); -lean::inc(x_59); -x_61 = l_Lean_Parser_Term_app_HasView; -x_62 = lean::cnstr_get(x_61, 1); -lean::inc(x_62); -lean::dec(x_61); -x_65 = lean::cnstr_get(x_6, 4); -lean::inc(x_65); +lean::dec(x_31); +x_60 = l_Lean_Parser_Term_app_HasView; +x_61 = lean::cnstr_get(x_60, 1); +lean::inc(x_61); +lean::dec(x_60); +x_64 = lean::cnstr_get(x_6, 4); +lean::inc(x_64); lean::dec(x_6); -x_68 = l_Lean_Expander_mixfix_transform___closed__4; -x_69 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_69, 0, x_65); -lean::cnstr_set(x_69, 1, x_68); -x_70 = lean::apply_1(x_62, x_69); -x_71 = l_Lean_Expander_mixfix_transform___closed__2; -x_72 = l_Lean_Expander_mixfix_transform___closed__3; -x_73 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_73, 0, x_59); -lean::cnstr_set(x_73, 1, x_71); -lean::cnstr_set(x_73, 2, x_29); -lean::cnstr_set(x_73, 3, x_72); -lean::cnstr_set(x_73, 4, x_70); -x_74 = lean::apply_1(x_56, x_73); +x_67 = l_Lean_Expander_mixfix_transform___closed__1; +x_68 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_68, 0, x_64); +lean::cnstr_set(x_68, 1, x_67); +x_69 = lean::apply_1(x_61, x_68); +x_70 = l_Lean_Expander_mixfix_transform___closed__3; +x_71 = l_Lean_Expander_mixfix_transform___closed__4; +x_72 = lean::alloc_cnstr(0, 5, 0); +lean::cnstr_set(x_72, 0, x_36); +lean::cnstr_set(x_72, 1, x_70); +lean::cnstr_set(x_72, 2, x_29); +lean::cnstr_set(x_72, 3, x_71); +lean::cnstr_set(x_72, 4, x_69); +x_73 = lean::apply_1(x_33, x_72); +x_74 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_74, 0, x_73); x_75 = lean::alloc_cnstr(1, 1, 0); lean::cnstr_set(x_75, 0, x_74); -if (lean::is_scalar(x_31)) { - x_76 = lean::alloc_cnstr(1, 1, 0); -} else { - x_76 = x_31; -} -lean::cnstr_set(x_76, 0, x_75); -return x_76; +return x_75; } default: { -obj* x_78; obj* x_81; obj* x_83; obj* x_84; obj* x_87; obj* x_90; obj* x_91; obj* x_93; obj* 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_77; lean::dec(x_9); -x_78 = lean::cnstr_get(x_32, 1); -lean::inc(x_78); -lean::dec(x_32); -x_81 = lean::cnstr_get(x_6, 0); -lean::inc(x_81); -x_83 = l_Lean_Parser_Term_app_HasView; -x_84 = lean::cnstr_get(x_83, 1); -lean::inc(x_84); -lean::dec(x_83); -x_87 = lean::cnstr_get(x_6, 4); -lean::inc(x_87); +x_77 = lean::box(0); +x_38 = x_77; +goto lbl_39; +} +} +lbl_39: +{ +obj* x_79; obj* x_80; obj* x_83; obj* x_86; obj* x_87; obj* x_89; obj* x_90; obj* x_91; obj* x_92; obj* x_93; obj* x_94; obj* x_95; obj* x_96; obj* x_97; obj* x_98; +lean::dec(x_38); +x_79 = l_Lean_Parser_Term_app_HasView; +x_80 = lean::cnstr_get(x_79, 1); +lean::inc(x_80); +lean::dec(x_79); +x_83 = lean::cnstr_get(x_6, 4); +lean::inc(x_83); lean::dec(x_6); -x_90 = l_Lean_Expander_mixfix_transform___closed__4; +x_86 = l_Lean_Expander_mixfix_transform___closed__1; +x_87 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_87, 0, x_83); +lean::cnstr_set(x_87, 1, x_86); +lean::inc(x_80); +x_89 = lean::apply_1(x_80, x_87); +x_90 = l_Lean_Expander_mixfix_transform___closed__2; x_91 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_91, 0, x_87); +lean::cnstr_set(x_91, 0, x_89); lean::cnstr_set(x_91, 1, x_90); -lean::inc(x_84); -x_93 = lean::apply_1(x_84, x_91); -x_94 = l_Lean_Expander_mixfix_transform___closed__5; -x_95 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_95, 0, x_93); -lean::cnstr_set(x_95, 1, x_94); -x_96 = lean::apply_1(x_84, x_95); -x_97 = l_Lean_Expander_mixfix_transform___closed__2; -x_98 = l_Lean_Expander_mixfix_transform___closed__3; -x_99 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_99, 0, x_81); -lean::cnstr_set(x_99, 1, x_97); -lean::cnstr_set(x_99, 2, x_29); -lean::cnstr_set(x_99, 3, x_98); -lean::cnstr_set(x_99, 4, x_96); -x_100 = lean::apply_1(x_78, x_99); -x_101 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_101, 0, x_100); +x_92 = lean::apply_1(x_80, x_91); +x_93 = l_Lean_Expander_mixfix_transform___closed__3; +x_94 = l_Lean_Expander_mixfix_transform___closed__4; +x_95 = lean::alloc_cnstr(0, 5, 0); +lean::cnstr_set(x_95, 0, x_36); +lean::cnstr_set(x_95, 1, x_93); +lean::cnstr_set(x_95, 2, x_29); +lean::cnstr_set(x_95, 3, x_94); +lean::cnstr_set(x_95, 4, x_92); +x_96 = lean::apply_1(x_33, x_95); +x_97 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_97, 0, x_96); if (lean::is_scalar(x_31)) { - x_102 = lean::alloc_cnstr(1, 1, 0); + x_98 = lean::alloc_cnstr(1, 1, 0); } else { - x_102 = x_31; -} -lean::cnstr_set(x_102, 0, x_101); -return x_102; + x_98 = x_31; } +lean::cnstr_set(x_98, 0, x_97); +return x_98; } } } @@ -4011,7 +4001,7 @@ x_22 = lean::cnstr_get(x_21, 1); lean::inc(x_22); lean::dec(x_21); x_25 = l_Lean_Expander_reserveMixfix_transform___closed__1; -x_26 = l_Lean_Expander_mixfix_transform___closed__2; +x_26 = l_Lean_Expander_mixfix_transform___closed__3; x_27 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_27, 0, x_25); lean::cnstr_set(x_27, 1, x_26); @@ -6732,85 +6722,7 @@ return x_13; } } } -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -if (lean::obj_tag(x_2) == 0) -{ -lean::dec(x_0); -lean::inc(x_1); -return x_1; -} -else -{ -obj* x_5; obj* x_7; obj* x_11; obj* x_12; obj* 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); -lean::dec(x_2); -lean::inc(x_0); -x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6(x_0, x_1, x_7); -x_12 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_12, 0, x_5); -x_13 = lean::apply_2(x_0, x_12, x_11); -return x_13; -} -} -} -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -if (lean::obj_tag(x_2) == 0) -{ -lean::dec(x_0); -lean::inc(x_1); -return x_1; -} -else -{ -obj* x_5; obj* x_7; obj* x_11; obj* x_12; obj* 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); -lean::dec(x_2); -lean::inc(x_0); -x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_1, x_7); -x_12 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_12, 0, x_5); -x_13 = lean::apply_2(x_0, x_12, x_11); -return x_13; -} -} -} -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -if (lean::obj_tag(x_2) == 0) -{ -lean::dec(x_0); -lean::inc(x_1); -return x_1; -} -else -{ -obj* x_5; obj* x_7; obj* x_11; obj* x_12; obj* 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); -lean::dec(x_2); -lean::inc(x_0); -x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_1, x_7); -x_12 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_12, 0, x_5); -x_13 = lean::apply_2(x_0, x_12, x_11); -return x_13; -} -} -} -obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1() { +obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1() { _start: { obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; @@ -6826,7 +6738,7 @@ lean::cnstr_set(x_5, 0, x_4); return x_5; } } -obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2() { +obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2() { _start: { obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_15; obj* x_16; obj* x_17; obj* x_18; @@ -6863,7 +6775,7 @@ lean::cnstr_set(x_18, 1, x_9); return x_18; } } -obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3() { +obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3() { _start: { obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; @@ -6879,7 +6791,7 @@ lean::cnstr_set(x_5, 0, x_4); return x_5; } } -obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4() { +obj* _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4() { _start: { obj* x_0; obj* x_1; obj* x_2; obj* x_3; obj* x_4; obj* x_6; obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_15; obj* x_16; obj* x_18; obj* x_19; obj* x_20; uint8 x_21; obj* x_22; obj* x_23; @@ -6919,7 +6831,7 @@ lean::cnstr_set(x_23, 0, x_22); return x_23; } } -obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { if (lean::obj_tag(x_2) == 0) @@ -6948,7 +6860,7 @@ if (lean::is_exclusive(x_2)) { } lean::inc(x_3); lean::inc(x_0); -x_14 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9(x_0, x_1, x_9, x_3); +x_14 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6(x_0, x_1, x_9, x_3); if (lean::obj_tag(x_14) == 0) { obj* x_19; obj* x_21; obj* x_22; @@ -6976,126 +6888,100 @@ else { if (lean::obj_tag(x_7) == 0) { -obj* x_23; -x_23 = lean::cnstr_get(x_7, 0); -lean::inc(x_23); +obj* x_23; obj* x_25; obj* x_26; obj* x_29; +x_23 = lean::cnstr_get(x_14, 0); +if (lean::is_exclusive(x_14)) { + 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); +} +x_26 = lean::cnstr_get(x_7, 0); +lean::inc(x_26); lean::dec(x_7); -switch (lean::obj_tag(x_23)) { -case 0: +switch (lean::obj_tag(x_26)) { +case 4: { -obj* x_27; obj* x_30; -lean::dec(x_11); -x_27 = lean::cnstr_get(x_14, 0); -lean::inc(x_27); -lean::dec(x_14); -x_30 = l_Lean_Expander_expandBracketedBinder___main(x_23, x_3); -if (lean::obj_tag(x_30) == 0) -{ -obj* x_33; obj* x_35; obj* x_36; -lean::dec(x_0); -lean::dec(x_27); -x_33 = lean::cnstr_get(x_30, 0); -if (lean::is_exclusive(x_30)) { - x_35 = x_30; +obj* x_32; obj* x_35; obj* x_36; obj* x_37; obj* x_38; obj* x_41; obj* x_42; obj* x_45; obj* x_46; 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; +lean::dec(x_3); +x_32 = lean::cnstr_get(x_26, 0); +lean::inc(x_32); +lean::dec(x_26); +x_35 = lean::box(0); +x_36 = lean::box(0); +x_37 = l_Lean_Parser_Term_match_HasView; +x_38 = lean::cnstr_get(x_37, 1); +lean::inc(x_38); +lean::dec(x_37); +x_41 = l_Lean_Parser_Term_anonymousConstructor_HasView; +x_42 = lean::cnstr_get(x_41, 1); +lean::inc(x_42); +lean::dec(x_41); +x_45 = lean::apply_1(x_42, x_32); +x_46 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_46, 0, x_45); +lean::cnstr_set(x_46, 1, x_35); +if (lean::is_scalar(x_11)) { + x_47 = lean::alloc_cnstr(1, 2, 0); } else { - lean::inc(x_33); - lean::dec(x_30); - x_35 = lean::box(0); + x_47 = x_11; } -if (lean::is_scalar(x_35)) { - x_36 = lean::alloc_cnstr(0, 1, 0); -} else { - x_36 = x_35; -} -lean::cnstr_set(x_36, 0, x_33); -return x_36; -} -else -{ -obj* x_37; obj* x_39; obj* x_40; obj* x_42; -x_37 = lean::cnstr_get(x_30, 0); -if (lean::is_exclusive(x_30)) { - x_39 = x_30; -} else { - lean::inc(x_37); - lean::dec(x_30); - x_39 = lean::box(0); -} -x_40 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__5(x_0, x_27, x_37); -lean::dec(x_27); -if (lean::is_scalar(x_39)) { - x_42 = lean::alloc_cnstr(1, 1, 0); -} else { - x_42 = x_39; -} -lean::cnstr_set(x_42, 0, x_40); -return x_42; -} -} -case 1: -{ -obj* x_44; obj* x_47; -lean::dec(x_11); -x_44 = lean::cnstr_get(x_14, 0); -lean::inc(x_44); -lean::dec(x_14); -x_47 = l_Lean_Expander_expandBracketedBinder___main(x_23, x_3); -if (lean::obj_tag(x_47) == 0) -{ -obj* x_50; obj* x_52; obj* x_53; -lean::dec(x_0); -lean::dec(x_44); -x_50 = lean::cnstr_get(x_47, 0); -if (lean::is_exclusive(x_47)) { - x_52 = x_47; -} else { - lean::inc(x_50); - lean::dec(x_47); - x_52 = lean::box(0); -} -if (lean::is_scalar(x_52)) { - x_53 = lean::alloc_cnstr(0, 1, 0); -} else { - x_53 = x_52; -} -lean::cnstr_set(x_53, 0, x_50); -return x_53; -} -else -{ -obj* x_54; obj* x_56; obj* x_57; obj* x_59; -x_54 = lean::cnstr_get(x_47, 0); -if (lean::is_exclusive(x_47)) { - x_56 = x_47; -} else { - lean::inc(x_54); - lean::dec(x_47); - x_56 = lean::box(0); -} -x_57 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6(x_0, x_44, x_54); -lean::dec(x_44); -if (lean::is_scalar(x_56)) { +lean::cnstr_set(x_47, 0, x_46); +lean::cnstr_set(x_47, 1, x_36); +x_48 = l_Lean_Expander_mixfix_transform___closed__4; +x_49 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_49, 0, x_47); +lean::cnstr_set(x_49, 1, x_48); +lean::cnstr_set(x_49, 2, x_23); +x_50 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_50, 0, x_49); +lean::cnstr_set(x_50, 1, x_35); +x_51 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_51, 0, x_50); +lean::cnstr_set(x_51, 1, x_36); +x_52 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1; +x_53 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2; +x_54 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3; +x_55 = lean::alloc_cnstr(0, 6, 0); +lean::cnstr_set(x_55, 0, x_52); +lean::cnstr_set(x_55, 1, x_53); +lean::cnstr_set(x_55, 2, x_35); +lean::cnstr_set(x_55, 3, x_54); +lean::cnstr_set(x_55, 4, x_35); +lean::cnstr_set(x_55, 5, x_51); +x_56 = lean::apply_1(x_38, x_55); +x_57 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4; +x_58 = lean::apply_2(x_0, x_57, x_56); +if (lean::is_scalar(x_25)) { x_59 = lean::alloc_cnstr(1, 1, 0); } else { - x_59 = x_56; + x_59 = x_25; } -lean::cnstr_set(x_59, 0, x_57); +lean::cnstr_set(x_59, 0, x_58); return x_59; } -} -case 2: +default: { -obj* x_61; obj* x_64; +obj* x_62; lean::dec(x_11); -x_61 = lean::cnstr_get(x_14, 0); -lean::inc(x_61); -lean::dec(x_14); -x_64 = l_Lean_Expander_expandBracketedBinder___main(x_23, x_3); +lean::dec(x_25); +x_62 = lean::box(0); +x_29 = x_62; +goto lbl_30; +} +} +lbl_30: +{ +obj* x_64; +lean::dec(x_29); +x_64 = l_Lean_Expander_expandBracketedBinder___main(x_26, x_3); if (lean::obj_tag(x_64) == 0) { obj* x_67; obj* x_69; obj* x_70; lean::dec(x_0); -lean::dec(x_61); +lean::dec(x_23); x_67 = lean::cnstr_get(x_64, 0); if (lean::is_exclusive(x_64)) { x_69 = x_64; @@ -7123,8 +7009,8 @@ if (lean::is_exclusive(x_64)) { lean::dec(x_64); x_73 = lean::box(0); } -x_74 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_61, x_71); -lean::dec(x_61); +x_74 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__5(x_0, x_23, x_71); +lean::dec(x_23); if (lean::is_scalar(x_73)) { x_76 = lean::alloc_cnstr(1, 1, 0); } else { @@ -7134,164 +7020,44 @@ lean::cnstr_set(x_76, 0, x_74); return x_76; } } -case 3: -{ -obj* x_78; obj* x_81; -lean::dec(x_11); -x_78 = lean::cnstr_get(x_14, 0); -lean::inc(x_78); -lean::dec(x_14); -x_81 = l_Lean_Expander_expandBracketedBinder___main(x_23, x_3); -if (lean::obj_tag(x_81) == 0) -{ -obj* x_84; obj* x_86; obj* x_87; -lean::dec(x_0); -lean::dec(x_78); -x_84 = lean::cnstr_get(x_81, 0); -if (lean::is_exclusive(x_81)) { - x_86 = x_81; -} else { - lean::inc(x_84); - lean::dec(x_81); - x_86 = lean::box(0); -} -if (lean::is_scalar(x_86)) { - x_87 = lean::alloc_cnstr(0, 1, 0); -} else { - x_87 = x_86; -} -lean::cnstr_set(x_87, 0, x_84); -return x_87; } else { -obj* x_88; obj* x_90; obj* x_91; obj* x_93; -x_88 = lean::cnstr_get(x_81, 0); -if (lean::is_exclusive(x_81)) { - x_90 = x_81; -} else { - lean::inc(x_88); - lean::dec(x_81); - x_90 = lean::box(0); -} -x_91 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_78, x_88); -lean::dec(x_78); -if (lean::is_scalar(x_90)) { - x_93 = lean::alloc_cnstr(1, 1, 0); -} else { - x_93 = x_90; -} -lean::cnstr_set(x_93, 0, x_91); -return x_93; -} -} -default: -{ -obj* x_95; obj* x_97; obj* x_98; obj* x_101; obj* x_102; obj* x_103; obj* x_104; obj* x_107; obj* x_108; obj* x_111; obj* x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; obj* 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; -lean::dec(x_3); -x_95 = lean::cnstr_get(x_14, 0); -if (lean::is_exclusive(x_14)) { - x_97 = x_14; -} else { - lean::inc(x_95); - lean::dec(x_14); - x_97 = lean::box(0); -} -x_98 = lean::cnstr_get(x_23, 0); -lean::inc(x_98); -lean::dec(x_23); -x_101 = lean::box(0); -x_102 = lean::box(0); -x_103 = l_Lean_Parser_Term_match_HasView; -x_104 = lean::cnstr_get(x_103, 1); -lean::inc(x_104); -lean::dec(x_103); -x_107 = l_Lean_Parser_Term_anonymousConstructor_HasView; -x_108 = lean::cnstr_get(x_107, 1); -lean::inc(x_108); -lean::dec(x_107); -x_111 = lean::apply_1(x_108, x_98); -x_112 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_112, 0, x_111); -lean::cnstr_set(x_112, 1, x_101); -if (lean::is_scalar(x_11)) { - x_113 = lean::alloc_cnstr(1, 2, 0); -} else { - x_113 = x_11; -} -lean::cnstr_set(x_113, 0, x_112); -lean::cnstr_set(x_113, 1, x_102); -x_114 = l_Lean_Expander_mixfix_transform___closed__3; -x_115 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_115, 0, x_113); -lean::cnstr_set(x_115, 1, x_114); -lean::cnstr_set(x_115, 2, x_95); -x_116 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_116, 0, x_115); -lean::cnstr_set(x_116, 1, x_101); -x_117 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_117, 0, x_116); -lean::cnstr_set(x_117, 1, x_102); -x_118 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1; -x_119 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2; -x_120 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3; -x_121 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_121, 0, x_118); -lean::cnstr_set(x_121, 1, x_119); -lean::cnstr_set(x_121, 2, x_101); -lean::cnstr_set(x_121, 3, x_120); -lean::cnstr_set(x_121, 4, x_101); -lean::cnstr_set(x_121, 5, x_117); -x_122 = lean::apply_1(x_104, x_121); -x_123 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4; -x_124 = lean::apply_2(x_0, x_123, x_122); -if (lean::is_scalar(x_97)) { - x_125 = lean::alloc_cnstr(1, 1, 0); -} else { - x_125 = x_97; -} -lean::cnstr_set(x_125, 0, x_124); -return x_125; -} -} -} -else -{ -obj* x_128; obj* x_130; obj* x_131; obj* x_134; uint8 x_136; obj* x_137; obj* x_138; obj* x_139; obj* x_140; obj* x_141; +obj* x_79; obj* x_81; obj* x_82; obj* x_85; uint8 x_87; obj* x_88; obj* x_89; obj* x_90; obj* x_91; obj* x_92; lean::dec(x_11); lean::dec(x_3); -x_128 = lean::cnstr_get(x_14, 0); +x_79 = lean::cnstr_get(x_14, 0); if (lean::is_exclusive(x_14)) { - x_130 = x_14; + x_81 = x_14; } else { - lean::inc(x_128); + lean::inc(x_79); lean::dec(x_14); - x_130 = lean::box(0); + x_81 = lean::box(0); } -x_131 = lean::cnstr_get(x_7, 0); -lean::inc(x_131); +x_82 = lean::cnstr_get(x_7, 0); +lean::inc(x_82); lean::dec(x_7); -x_134 = l_Lean_Expander_binderIdentToIdent___main(x_131); -lean::dec(x_131); -x_136 = 0; -x_137 = l_Lean_Expander_getOptType___main___closed__1; -x_138 = l_Lean_Expander_mkSimpleBinder(x_134, x_136, x_137); -x_139 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_139, 0, x_138); -x_140 = lean::apply_2(x_0, x_139, x_128); -if (lean::is_scalar(x_130)) { - x_141 = lean::alloc_cnstr(1, 1, 0); +x_85 = l_Lean_Expander_binderIdentToIdent___main(x_82); +lean::dec(x_82); +x_87 = 0; +x_88 = l_Lean_Expander_getOptType___main___closed__1; +x_89 = l_Lean_Expander_mkSimpleBinder(x_85, x_87, x_88); +x_90 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_90, 0, x_89); +x_91 = lean::apply_2(x_0, x_90, x_79); +if (lean::is_scalar(x_81)) { + x_92 = lean::alloc_cnstr(1, 1, 0); } else { - x_141 = x_130; + x_92 = x_81; } -lean::cnstr_set(x_141, 0, x_140); -return x_141; +lean::cnstr_set(x_92, 0, x_91); +return x_92; } } } } } -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { if (lean::obj_tag(x_3) == 0) @@ -7308,7 +7074,7 @@ x_7 = lean::cnstr_get(x_3, 0); x_8 = lean::cnstr_get(x_3, 1); lean::inc(x_1); lean::inc(x_0); -x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10(x_0, x_1, x_2, x_8); +x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_1, x_2, x_8); x_12 = l_Lean_Expander_binderIdentToIdent___main(x_7); x_13 = 0; x_14 = l_Lean_Expander_mkSimpleBinder(x_12, x_13, x_1); @@ -7319,7 +7085,7 @@ return x_16; } } } -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { if (lean::obj_tag(x_3) == 0) @@ -7336,7 +7102,7 @@ x_7 = lean::cnstr_get(x_3, 0); x_8 = lean::cnstr_get(x_3, 1); lean::inc(x_1); lean::inc(x_0); -x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11(x_0, x_1, x_2, x_8); +x_11 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_1, x_2, x_8); x_12 = l_Lean_Expander_binderIdentToIdent___main(x_7); x_13 = 0; x_14 = l_Lean_Expander_mkSimpleBinder(x_12, x_13, x_1); @@ -7515,7 +7281,7 @@ x_72 = lean::cnstr_get(x_40, 0); lean::inc(x_72); lean::inc(x_72); lean::inc(x_0); -x_76 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9(x_0, x_2, x_72, x_3); +x_76 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6(x_0, x_2, x_72, x_3); if (lean::obj_tag(x_76) == 0) { obj* x_82; obj* x_84; obj* x_85; @@ -7582,7 +7348,7 @@ lean::dec(x_88); x_100 = lean::cnstr_get(x_72, 1); lean::inc(x_100); lean::dec(x_72); -x_103 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11(x_0, x_100, x_86, x_89); +x_103 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_100, x_86, x_89); lean::dec(x_89); lean::dec(x_86); if (lean::is_scalar(x_97)) { @@ -7611,7 +7377,7 @@ lbl_93: obj* x_113; obj* x_114; obj* x_117; obj* x_118; lean::dec(x_92); x_113 = l_Lean_Expander_getOptType___main___closed__1; -x_114 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10(x_0, x_113, x_86, x_89); +x_114 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_113, x_86, x_89); lean::dec(x_89); lean::dec(x_86); x_117 = lean::alloc_cnstr(1, 1, 0); @@ -7689,48 +7455,21 @@ lean::dec(x_1); return x_3; } } -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6___boxed(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -obj* x_3; -x_3 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__6(x_0, x_1, x_2); -lean::dec(x_1); -return x_3; -} -} -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7___boxed(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -obj* x_3; -x_3 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_1, x_2); -lean::dec(x_1); -return x_3; -} -} -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8___boxed(obj* x_0, obj* x_1, obj* x_2) { -_start: -{ -obj* x_3; -x_3 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_1, x_2); -lean::dec(x_1); -return x_3; -} -} -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { obj* x_4; -x_4 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__10(x_0, x_1, x_2, x_3); +x_4 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__7(x_0, x_1, x_2, x_3); lean::dec(x_2); lean::dec(x_3); return x_4; } } -obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { obj* x_4; -x_4 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__11(x_0, x_1, x_2, x_3); +x_4 = l_List_foldr___main___at_Lean_Expander_expandBinders___spec__8(x_0, x_1, x_2, x_3); lean::dec(x_2); lean::dec(x_3); return x_4; @@ -9086,7 +8825,7 @@ lean::cnstr_set(x_110, 1, x_107); x_111 = lean::cnstr_get(x_5, 5); lean::inc(x_111); lean::dec(x_5); -x_114 = l_Lean_Expander_mixfix_transform___closed__3; +x_114 = l_Lean_Expander_mixfix_transform___closed__4; x_115 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_115, 0, x_110); lean::cnstr_set(x_115, 1, x_114); @@ -9097,8 +8836,8 @@ lean::cnstr_set(x_116, 1, x_103); x_117 = lean::alloc_cnstr(1, 2, 0); lean::cnstr_set(x_117, 0, x_116); lean::cnstr_set(x_117, 1, x_107); -x_118 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1; -x_119 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3; +x_118 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1; +x_119 = l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3; x_120 = lean::alloc_cnstr(0, 6, 0); lean::cnstr_set(x_120, 0, x_118); lean::cnstr_set(x_120, 1, x_108); @@ -12352,14 +12091,14 @@ lean::mark_persistent(l_Lean_Expander_expandBracketedBinder___main___closed__6); lean::mark_persistent(l_Lean_Expander_expandBracketedBinder___main___closed__7); l_Lean_Expander_expandBracketedBinder___main___closed__8 = _init_l_Lean_Expander_expandBracketedBinder___main___closed__8(); lean::mark_persistent(l_Lean_Expander_expandBracketedBinder___main___closed__8); - l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1(); -lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__1); - l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2(); -lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__2); - l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3(); -lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__3); - l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4(); -lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__9___closed__4); + l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1(); +lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__1); + l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2(); +lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__2); + l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3(); +lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__3); + l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4 = _init_l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4(); +lean::mark_persistent(l_List_mfoldr___main___at_Lean_Expander_expandBinders___spec__6___closed__4); l_Lean_Expander_lambda_transform___closed__1 = _init_l_Lean_Expander_lambda_transform___closed__1(); lean::mark_persistent(l_Lean_Expander_lambda_transform___closed__1); l_Lean_Expander_depArrow_transform___closed__1 = _init_l_Lean_Expander_depArrow_transform___closed__1(); diff --git a/src/stage0/init/lean/parser/command.cpp b/src/stage0/init/lean/parser/command.cpp index bbeae8b874..ad7e7aa914 100644 --- a/src/stage0/init/lean/parser/command.cpp +++ b/src/stage0/init/lean/parser/command.cpp @@ -212,7 +212,6 @@ obj* l_Lean_Parser_command_setOption_HasView_x_27___lambda__1(obj*); obj* l_Lean_Parser_command_openSpec_renaming_HasView_x_27___lambda__1___closed__3; obj* l_Lean_Parser_command_namespace_Parser_Lean_Parser_HasTokens; obj* l_List_append___rarg(obj*, obj*); -obj* l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3; extern "C" obj* lean_name_mk_string(obj*, obj*); obj* l_Lean_Parser_command_omit_Parser_Lean_Parser_HasTokens; obj* l_Lean_Parser_command_optionValue_HasView_x_27___lambda__1___closed__1; @@ -372,7 +371,6 @@ obj* l_Lean_Parser_command_initQuot_HasView; obj* l_Lean_Parser_command_openSpec_Parser_Lean_Parser_HasView; obj* l_Lean_Parser_symbolOrIdent___at_Lean_Parser_command_setOption_Parser_Lean_Parser_HasTokens___spec__1(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_command_universes_HasView_x_27___lambda__1(obj*); -obj* l_Lean_Parser_Substring_ofString(obj*); obj* l_Lean_Parser_command_attribute_HasView_x_27___lambda__1(obj*); extern obj* l_Lean_Parser_command_mixfix_Parser_Lean_Parser_HasTokens; obj* l_List_map___main___at_Lean_Parser_command_openSpec_only_HasView_x_27___spec__1(obj*); @@ -10279,29 +10277,6 @@ return x_9; obj* _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1() { _start: { -obj* x_0; obj* x_1; obj* x_2; obj* x_4; obj* x_5; obj* x_6; obj* x_7; obj* x_8; -x_0 = lean::box(0); -x_1 = lean::box(0); -x_2 = lean::mk_string("NOTAnIdent"); -lean::inc(x_2); -x_4 = l_Lean_Parser_Substring_ofString(x_2); -x_5 = lean::box(0); -x_6 = lean_name_mk_string(x_5, x_2); -x_7 = lean::alloc_cnstr(0, 5, 0); -lean::cnstr_set(x_7, 0, x_0); -lean::cnstr_set(x_7, 1, x_4); -lean::cnstr_set(x_7, 2, x_6); -lean::cnstr_set(x_7, 3, x_1); -lean::cnstr_set(x_7, 4, x_1); -x_8 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_8, 0, x_7); -lean::cnstr_set(x_8, 1, x_1); -return x_8; -} -} -obj* _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2() { -_start: -{ obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; x_0 = lean::mk_string(", "); x_1 = l_String_trim(x_0); @@ -10317,7 +10292,7 @@ lean::closure_set(x_6, 2, x_4); return x_6; } } -obj* _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3() { +obj* _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2() { _start: { obj* x_0; obj* x_2; obj* x_3; @@ -10415,87 +10390,69 @@ goto lbl_1; } lbl_1: { -obj* x_32; obj* x_33; obj* x_34; +obj* x_32; obj* x_33; obj* x_35; obj* x_36; x_32 = lean::box(0); -x_33 = lean::box(3); -x_34 = l_Lean_Parser_Syntax_asNode___main(x_33); -if (lean::obj_tag(x_34) == 0) +x_35 = lean::box(3); +x_36 = l_Lean_Parser_Syntax_asNode___main(x_35); +if (lean::obj_tag(x_36) == 0) { -if (lean::obj_tag(x_34) == 0) -{ -obj* x_35; obj* x_36; obj* x_37; -x_35 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; -x_36 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1; -x_37 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_37, 0, x_0); -lean::cnstr_set(x_37, 1, x_32); -lean::cnstr_set(x_37, 2, x_32); -lean::cnstr_set(x_37, 3, x_35); -lean::cnstr_set(x_37, 4, x_32); -lean::cnstr_set(x_37, 5, x_36); -return x_37; +obj* x_37; +x_37 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; +x_33 = x_37; +goto lbl_34; } else { obj* x_38; obj* x_41; obj* x_44; obj* x_45; obj* x_46; -x_38 = lean::cnstr_get(x_34, 0); +x_38 = lean::cnstr_get(x_36, 0); lean::inc(x_38); -lean::dec(x_34); +lean::dec(x_36); x_41 = lean::cnstr_get(x_38, 1); lean::inc(x_41); lean::dec(x_38); -x_44 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_41); -x_45 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; -x_46 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_46, 0, x_0); -lean::cnstr_set(x_46, 1, x_32); -lean::cnstr_set(x_46, 2, x_32); -lean::cnstr_set(x_46, 3, x_45); -lean::cnstr_set(x_46, 4, x_32); -lean::cnstr_set(x_46, 5, x_44); -return x_46; +x_44 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__2; +x_45 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1; +x_46 = l___private_init_lean_parser_combinators_3__sepBy_viewAux___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__2(x_44, x_45, x_41); +x_33 = x_46; +goto lbl_34; } +lbl_34: +{ +obj* x_47; obj* x_48; +x_47 = lean::box(3); +x_48 = l_Lean_Parser_Syntax_asNode___main(x_47); +if (lean::obj_tag(x_48) == 0) +{ +obj* x_49; obj* x_50; +x_49 = l_Lean_Parser_command_structBinderContent_HasView_x_27___lambda__1___closed__1; +x_50 = lean::alloc_cnstr(0, 6, 0); +lean::cnstr_set(x_50, 0, x_0); +lean::cnstr_set(x_50, 1, x_32); +lean::cnstr_set(x_50, 2, x_32); +lean::cnstr_set(x_50, 3, x_33); +lean::cnstr_set(x_50, 4, x_32); +lean::cnstr_set(x_50, 5, x_49); +return x_50; } else { -obj* x_47; obj* x_49; obj* x_52; obj* x_53; obj* x_55; -x_47 = lean::cnstr_get(x_34, 0); -lean::inc(x_47); -x_49 = lean::cnstr_get(x_47, 1); -lean::inc(x_49); -lean::dec(x_47); -x_52 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__2; -x_53 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2; -lean::inc(x_49); -x_55 = l___private_init_lean_parser_combinators_3__sepBy_viewAux___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__2(x_52, x_53, x_49); -if (lean::obj_tag(x_34) == 0) -{ -obj* x_57; obj* x_58; -lean::dec(x_49); -x_57 = l_Lean_Parser_command_structBinderContent_HasView_x_27___lambda__1___closed__1; +obj* x_51; obj* x_54; obj* x_57; obj* x_58; +x_51 = lean::cnstr_get(x_48, 0); +lean::inc(x_51); +lean::dec(x_48); +x_54 = lean::cnstr_get(x_51, 1); +lean::inc(x_54); +lean::dec(x_51); +x_57 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_54); x_58 = lean::alloc_cnstr(0, 6, 0); lean::cnstr_set(x_58, 0, x_0); lean::cnstr_set(x_58, 1, x_32); lean::cnstr_set(x_58, 2, x_32); -lean::cnstr_set(x_58, 3, x_55); +lean::cnstr_set(x_58, 3, x_33); lean::cnstr_set(x_58, 4, x_32); lean::cnstr_set(x_58, 5, x_57); return x_58; } -else -{ -obj* x_60; obj* x_61; -lean::dec(x_34); -x_60 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_49); -x_61 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_61, 0, x_0); -lean::cnstr_set(x_61, 1, x_32); -lean::cnstr_set(x_61, 2, x_32); -lean::cnstr_set(x_61, 3, x_55); -lean::cnstr_set(x_61, 4, x_32); -lean::cnstr_set(x_61, 5, x_60); -return x_61; -} } } } @@ -10508,7 +10465,7 @@ x_4 = l_Lean_Parser_Syntax_asNode___main(x_0); if (lean::obj_tag(x_4) == 0) { obj* x_5; -x_5 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3; +x_5 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2; return x_5; } else @@ -10835,249 +10792,138 @@ goto lbl_112; } lbl_112: { -obj* x_119; -x_119 = l_Lean_Parser_Syntax_asNode___main(x_111); -if (lean::obj_tag(x_119) == 0) -{ -obj* x_120; obj* x_121; obj* x_122; -x_120 = lean::box(0); -if (lean::obj_tag(x_110) == 0) -{ -obj* x_124; -x_124 = lean::box(3); -x_121 = x_110; -x_122 = x_124; -goto lbl_123; -} -else -{ -obj* x_125; obj* x_127; -x_125 = lean::cnstr_get(x_110, 0); -lean::inc(x_125); -x_127 = lean::cnstr_get(x_110, 1); -lean::inc(x_127); -lean::dec(x_110); -x_121 = x_127; -x_122 = x_125; -goto lbl_123; -} -lbl_123: -{ -obj* x_130; -switch (lean::obj_tag(x_122)) { -case 0: -{ -obj* x_132; obj* x_135; -x_132 = lean::cnstr_get(x_122, 0); -lean::inc(x_132); -lean::dec(x_122); -x_135 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_135, 0, x_132); -x_130 = x_135; -goto lbl_131; -} -case 3: -{ -x_130 = x_120; -goto lbl_131; -} -default: -{ -lean::dec(x_122); -x_130 = x_120; -goto lbl_131; -} -} -lbl_131: -{ -obj* x_137; +obj* x_119; obj* x_121; +x_121 = l_Lean_Parser_Syntax_asNode___main(x_111); if (lean::obj_tag(x_121) == 0) { -obj* x_139; -x_139 = lean::box(3); -x_137 = x_139; -goto lbl_138; +obj* x_122; +x_122 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; +x_119 = x_122; +goto lbl_120; } else { -obj* x_140; -x_140 = lean::cnstr_get(x_121, 0); -lean::inc(x_140); +obj* x_123; obj* x_126; obj* x_129; obj* x_130; obj* x_131; +x_123 = lean::cnstr_get(x_121, 0); +lean::inc(x_123); lean::dec(x_121); -x_137 = x_140; -goto lbl_138; +x_126 = lean::cnstr_get(x_123, 1); +lean::inc(x_126); +lean::dec(x_123); +x_129 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__2; +x_130 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1; +x_131 = l___private_init_lean_parser_combinators_3__sepBy_viewAux___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__2(x_129, x_130, x_126); +x_119 = x_131; +goto lbl_120; } -lbl_138: +lbl_120: { -obj* x_143; -x_143 = l_Lean_Parser_Syntax_asNode___main(x_137); -if (lean::obj_tag(x_143) == 0) -{ -obj* x_144; obj* x_145; obj* x_146; -x_144 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; -x_145 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1; -x_146 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_146, 0, x_43); -lean::cnstr_set(x_146, 1, x_83); -lean::cnstr_set(x_146, 2, x_101); -lean::cnstr_set(x_146, 3, x_144); -lean::cnstr_set(x_146, 4, x_130); -lean::cnstr_set(x_146, 5, x_145); -return x_146; -} -else -{ -obj* x_147; obj* x_150; obj* x_153; obj* x_154; obj* x_155; -x_147 = lean::cnstr_get(x_143, 0); -lean::inc(x_147); -lean::dec(x_143); -x_150 = lean::cnstr_get(x_147, 1); -lean::inc(x_150); -lean::dec(x_147); -x_153 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_150); -x_154 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; -x_155 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_155, 0, x_43); -lean::cnstr_set(x_155, 1, x_83); -lean::cnstr_set(x_155, 2, x_101); -lean::cnstr_set(x_155, 3, x_154); -lean::cnstr_set(x_155, 4, x_130); -lean::cnstr_set(x_155, 5, x_153); -return x_155; -} -} -} -} -} -else -{ -obj* x_156; obj* x_158; obj* x_159; obj* x_162; obj* x_163; obj* x_164; obj* x_165; obj* x_166; -x_156 = lean::cnstr_get(x_119, 0); -if (lean::is_exclusive(x_119)) { - lean::cnstr_set(x_119, 0, lean::box(0)); - x_158 = x_119; -} else { - lean::inc(x_156); - lean::dec(x_119); - x_158 = lean::box(0); -} -x_159 = lean::cnstr_get(x_156, 1); -lean::inc(x_159); -lean::dec(x_156); -x_162 = l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__2; -x_163 = l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2; -x_164 = l___private_init_lean_parser_combinators_3__sepBy_viewAux___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__2(x_162, x_163, x_159); +obj* x_132; obj* x_133; if (lean::obj_tag(x_110) == 0) { -obj* x_168; -x_168 = lean::box(3); -x_165 = x_110; -x_166 = x_168; -goto lbl_167; +obj* x_135; +x_135 = lean::box(3); +x_132 = x_110; +x_133 = x_135; +goto lbl_134; } else { -obj* x_169; obj* x_171; -x_169 = lean::cnstr_get(x_110, 0); -lean::inc(x_169); -x_171 = lean::cnstr_get(x_110, 1); -lean::inc(x_171); +obj* x_136; obj* x_138; +x_136 = lean::cnstr_get(x_110, 0); +lean::inc(x_136); +x_138 = lean::cnstr_get(x_110, 1); +lean::inc(x_138); lean::dec(x_110); -x_165 = x_171; -x_166 = x_169; -goto lbl_167; +x_132 = x_138; +x_133 = x_136; +goto lbl_134; } -lbl_167: +lbl_134: { -obj* x_174; -switch (lean::obj_tag(x_166)) { +obj* x_141; +switch (lean::obj_tag(x_133)) { case 0: { -obj* x_176; obj* x_179; -x_176 = lean::cnstr_get(x_166, 0); -lean::inc(x_176); -lean::dec(x_166); -if (lean::is_scalar(x_158)) { - x_179 = lean::alloc_cnstr(1, 1, 0); -} else { - x_179 = x_158; -} -lean::cnstr_set(x_179, 0, x_176); -x_174 = x_179; -goto lbl_175; +obj* x_143; obj* x_146; +x_143 = lean::cnstr_get(x_133, 0); +lean::inc(x_143); +lean::dec(x_133); +x_146 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_146, 0, x_143); +x_141 = x_146; +goto lbl_142; } case 3: { -obj* x_181; -lean::dec(x_158); -x_181 = lean::box(0); -x_174 = x_181; -goto lbl_175; +obj* x_147; +x_147 = lean::box(0); +x_141 = x_147; +goto lbl_142; } default: { -obj* x_184; -lean::dec(x_158); -lean::dec(x_166); -x_184 = lean::box(0); -x_174 = x_184; -goto lbl_175; +obj* x_149; +lean::dec(x_133); +x_149 = lean::box(0); +x_141 = x_149; +goto lbl_142; } } -lbl_175: +lbl_142: { -obj* x_185; -if (lean::obj_tag(x_165) == 0) +obj* x_150; +if (lean::obj_tag(x_132) == 0) { -obj* x_187; -x_187 = lean::box(3); -x_185 = x_187; -goto lbl_186; +obj* x_152; +x_152 = lean::box(3); +x_150 = x_152; +goto lbl_151; } else { -obj* x_188; -x_188 = lean::cnstr_get(x_165, 0); -lean::inc(x_188); -lean::dec(x_165); -x_185 = x_188; -goto lbl_186; +obj* x_153; +x_153 = lean::cnstr_get(x_132, 0); +lean::inc(x_153); +lean::dec(x_132); +x_150 = x_153; +goto lbl_151; } -lbl_186: +lbl_151: { -obj* x_191; -x_191 = l_Lean_Parser_Syntax_asNode___main(x_185); -if (lean::obj_tag(x_191) == 0) +obj* x_156; +x_156 = l_Lean_Parser_Syntax_asNode___main(x_150); +if (lean::obj_tag(x_156) == 0) { -obj* x_192; obj* x_193; -x_192 = l_Lean_Parser_command_structBinderContent_HasView_x_27___lambda__1___closed__1; -x_193 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_193, 0, x_43); -lean::cnstr_set(x_193, 1, x_83); -lean::cnstr_set(x_193, 2, x_101); -lean::cnstr_set(x_193, 3, x_164); -lean::cnstr_set(x_193, 4, x_174); -lean::cnstr_set(x_193, 5, x_192); -return x_193; +obj* x_157; obj* x_158; +x_157 = l_Lean_Parser_command_structBinderContent_HasView_x_27___lambda__1___closed__1; +x_158 = lean::alloc_cnstr(0, 6, 0); +lean::cnstr_set(x_158, 0, x_43); +lean::cnstr_set(x_158, 1, x_83); +lean::cnstr_set(x_158, 2, x_101); +lean::cnstr_set(x_158, 3, x_119); +lean::cnstr_set(x_158, 4, x_141); +lean::cnstr_set(x_158, 5, x_157); +return x_158; } else { -obj* x_194; obj* x_197; obj* x_200; obj* x_201; -x_194 = lean::cnstr_get(x_191, 0); -lean::inc(x_194); -lean::dec(x_191); -x_197 = lean::cnstr_get(x_194, 1); -lean::inc(x_197); -lean::dec(x_194); -x_200 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_197); -x_201 = lean::alloc_cnstr(0, 6, 0); -lean::cnstr_set(x_201, 0, x_43); -lean::cnstr_set(x_201, 1, x_83); -lean::cnstr_set(x_201, 2, x_101); -lean::cnstr_set(x_201, 3, x_164); -lean::cnstr_set(x_201, 4, x_174); -lean::cnstr_set(x_201, 5, x_200); -return x_201; +obj* x_159; obj* x_162; obj* x_165; obj* x_166; +x_159 = lean::cnstr_get(x_156, 0); +lean::inc(x_159); +lean::dec(x_156); +x_162 = lean::cnstr_get(x_159, 1); +lean::inc(x_162); +lean::dec(x_159); +x_165 = l_List_map___main___at_Lean_Parser_command_attribute_HasView_x_27___spec__1(x_162); +x_166 = lean::alloc_cnstr(0, 6, 0); +lean::cnstr_set(x_166, 0, x_43); +lean::cnstr_set(x_166, 1, x_83); +lean::cnstr_set(x_166, 2, x_101); +lean::cnstr_set(x_166, 3, x_119); +lean::cnstr_set(x_166, 4, x_141); +lean::cnstr_set(x_166, 5, x_165); +return x_166; } } } @@ -15041,8 +14887,6 @@ lean::mark_persistent(l_Lean_Parser_command_attribute); lean::mark_persistent(l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__1); l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2 = _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2(); lean::mark_persistent(l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__2); - l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3 = _init_l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3(); -lean::mark_persistent(l_Lean_Parser_command_attribute_HasView_x_27___lambda__1___closed__3); l_Lean_Parser_command_attribute_HasView_x_27 = _init_l_Lean_Parser_command_attribute_HasView_x_27(); lean::mark_persistent(l_Lean_Parser_command_attribute_HasView_x_27); l_Lean_Parser_command_attribute_HasView = _init_l_Lean_Parser_command_attribute_HasView(); diff --git a/src/stage0/init/lean/parser/declaration.cpp b/src/stage0/init/lean/parser/declaration.cpp index e542924010..16590d50d5 100644 --- a/src/stage0/init/lean/parser/declaration.cpp +++ b/src/stage0/init/lean/parser/declaration.cpp @@ -233,6 +233,7 @@ obj* l_Lean_Parser_Term_Parser(obj*, obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_command_declAttributes_HasView_x_27___lambda__1___closed__1; obj* l_Lean_Parser_command_declVal_HasView_x_27; obj* l_Lean_Parser_command_axiom_HasView_x_27___lambda__2(obj*); +extern obj* l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; obj* l_Lean_Parser_command_structureKw_HasView; obj* l_Lean_Parser_command_structureFieldBlock; obj* l_Lean_Parser_symbolCore___at_Lean_Parser_command_docComment_Parser_Lean_Parser_HasTokens___spec__1___boxed(obj*, obj*, obj*, obj*, obj*, obj*, obj*); @@ -436,7 +437,6 @@ obj* l_Lean_Parser_ParsecT_lookahead___at_Lean_Parser_command_docComment_Parser_ obj* l_List_map___main___at_Lean_Parser_command_attrInstance_HasView_x_27___spec__4(obj*); extern obj* l___private_init_lean_parser_token_2__whitespaceAux___main___closed__2; obj* l_Lean_Parser_command_identUnivParams_HasView; -extern obj* l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; obj* l_Lean_Parser_command_simpleDeclVal_HasView; obj* l_Lean_Parser_command_declSig_HasView_x_27___lambda__1___closed__3; obj* l___private_init_lean_parser_combinators_1__many1Aux___main___at_Lean_Parser_command_attrInstance_Parser_Lean_Parser_HasTokens___spec__4(obj*, obj*, obj*, obj*, obj*, obj*, obj*); @@ -10963,7 +10963,7 @@ x_6 = l_Lean_Parser_Syntax_asNode___main(x_4); if (lean::obj_tag(x_6) == 0) { obj* x_7; obj* x_8; -x_7 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_7 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_8 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_8, 0, x_5); lean::cnstr_set(x_8, 1, x_7); @@ -11027,7 +11027,7 @@ obj* x_33; obj* x_34; lean::dec(x_11); lean::dec(x_12); lean::dec(x_18); -x_33 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_33 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_34 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_34, 0, x_5); lean::cnstr_set(x_34, 1, x_33); @@ -11094,7 +11094,7 @@ x_24 = l_Lean_Parser_Syntax_asNode___main(x_23); if (lean::obj_tag(x_24) == 0) { obj* x_25; obj* x_26; -x_25 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_25 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_26 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_26, 0, x_22); lean::cnstr_set(x_26, 1, x_25); @@ -11158,7 +11158,7 @@ obj* x_51; obj* x_52; lean::dec(x_29); lean::dec(x_30); lean::dec(x_36); -x_51 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_51 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_52 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_52, 0, x_22); lean::cnstr_set(x_52, 1, x_51); @@ -11177,7 +11177,7 @@ x_56 = l_Lean_Parser_Syntax_asNode___main(x_53); if (lean::obj_tag(x_56) == 0) { obj* x_57; obj* x_58; -x_57 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_57 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_58 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_58, 0, x_22); lean::cnstr_set(x_58, 1, x_57); @@ -11241,7 +11241,7 @@ obj* x_83; obj* x_84; lean::dec(x_68); lean::dec(x_62); lean::dec(x_61); -x_83 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_83 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_84 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_84, 0, x_22); lean::cnstr_set(x_84, 1, x_83); @@ -15659,7 +15659,7 @@ x_46 = l_Lean_Parser_Syntax_asNode___main(x_44); if (lean::obj_tag(x_46) == 0) { obj* x_47; obj* x_48; -x_47 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_47 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_48 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_48, 0, x_0); lean::cnstr_set(x_48, 1, x_12); @@ -15729,7 +15729,7 @@ obj* x_73; obj* x_74; lean::dec(x_58); lean::dec(x_51); lean::dec(x_52); -x_73 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_73 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_74 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_74, 0, x_0); lean::cnstr_set(x_74, 1, x_12); @@ -15941,7 +15941,7 @@ x_80 = l_Lean_Parser_Syntax_asNode___main(x_79); if (lean::obj_tag(x_80) == 0) { obj* x_81; obj* x_82; -x_81 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_81 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_82 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_82, 0, x_18); lean::cnstr_set(x_82, 1, x_38); @@ -16011,7 +16011,7 @@ obj* x_107; obj* x_108; lean::dec(x_86); lean::dec(x_92); lean::dec(x_85); -x_107 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_107 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_108 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_108, 0, x_18); lean::cnstr_set(x_108, 1, x_38); @@ -16032,7 +16032,7 @@ x_112 = l_Lean_Parser_Syntax_asNode___main(x_109); if (lean::obj_tag(x_112) == 0) { obj* x_113; obj* x_114; -x_113 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_113 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_114 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_114, 0, x_18); lean::cnstr_set(x_114, 1, x_38); @@ -16102,7 +16102,7 @@ obj* x_139; obj* x_140; lean::dec(x_124); lean::dec(x_118); lean::dec(x_117); -x_139 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_139 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_140 = lean::alloc_cnstr(0, 4, 0); lean::cnstr_set(x_140, 0, x_18); lean::cnstr_set(x_140, 1, x_38); diff --git a/src/stage0/init/lean/parser/module.cpp b/src/stage0/init/lean/parser/module.cpp index cd62becb0e..490c985579 100644 --- a/src/stage0/init/lean/parser/module.cpp +++ b/src/stage0/init/lean/parser/module.cpp @@ -15,7 +15,6 @@ typedef lean::uint32 uint32; typedef lean::uint64 uint64; #pragma GCC diagnostic ignored "-Wunused-but-set-variable" #endif obj* l_Lean_Parser_withTrailing___rarg___lambda__1(obj*, obj*); -obj* l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_Combinators_many1___at_Lean_Parser_identUnivSpec_Parser_Lean_Parser_HasTokens___spec__1(obj*, obj*, obj*, obj*); obj* l_Lean_Parser_Module_importPath_HasView_x_27___lambda__2(obj*); extern obj* l_Lean_Parser_command_Parser___rarg___closed__1; @@ -27,7 +26,6 @@ obj* l___private_init_lean_parser_module_1__commandWrecAux(uint8, obj*, obj*, ob extern obj* l_Lean_MessageLog_empty; obj* l_Lean_Parser_ModuleParserM_Alternative; obj* l_Lean_Parser_ModuleParserM_MonadReader; -obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3___boxed(obj*, obj*, obj*, obj*); obj* l_id___boxed(obj*); obj* l_Lean_Parser_commandParser_run(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_symbol_tokens___rarg(obj*, obj*); @@ -74,7 +72,6 @@ obj* l_Lean_Parser_Module_importPath_Parser___closed__1; obj* l_Lean_Parser_MonadParsec_error___at___private_init_lean_parser_token_1__finishCommentBlockAux___main___spec__1___rarg(obj*, obj*, obj*, obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_ident_Parser___at_Lean_Parser_command_NotationSpec_foldAction_Parser_Lean_Parser_HasTokens___spec__4___rarg___closed__1; obj* l_Lean_Parser_Module_prelude_Parser(obj*, obj*, obj*); -obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(obj*, obj*, obj*, obj*); obj* l_id___rarg___boxed(obj*); obj* l_String_OldIterator_remaining___main(obj*); obj* l_List_map___main___rarg(obj*, obj*); @@ -116,6 +113,7 @@ obj* l_Lean_Parser_Syntax_mkNode(obj*, obj*); obj* l_Option_getOrElse___main___rarg(obj*, obj*); obj* l_Lean_Parser_Module_importPath_HasView_x_27___lambda__1___closed__4; obj* l_Lean_Parser_parseHeader___lambda__3(obj*, obj*, obj*, obj*, obj*); +obj* l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_Module_eoi_Parser(obj*, obj*, obj*, obj*); obj* l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1(obj*, obj*, obj*, obj*); extern obj* l___private_init_lean_parser_combinators_1__many1Aux___main___rarg___closed__1; @@ -157,6 +155,7 @@ obj* l_Lean_Parser_ModuleParserM_liftParserT___rarg(obj*, obj*, obj*, obj*, obj* extern obj* l_Lean_Parser_raw_view___rarg___lambda__2___closed__1; obj* l_Lean_Parser_Module_import_Parser___closed__1; obj* l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__1(obj*, obj*, obj*, obj*, obj*); +obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(obj*, obj*, obj*, obj*); obj* l_Lean_Parser_ParserT_Monad___rarg(obj*); obj* l_Lean_Parser_moduleParserConfigCoe___boxed(obj*); obj* l_StateT_bind___at_Lean_Parser_parseHeader___spec__1___rarg(obj*, obj*, obj*, obj*, obj*, obj*); @@ -200,6 +199,7 @@ obj* l_Lean_Parser_messageOfParsecMessage___rarg(obj*, obj*); extern obj* l_Lean_Name_toString___closed__1; obj* l_Lean_Parser_Module_prelude; obj* l_Lean_Parser_Module_header_HasView_x_27___lambda__1___closed__4; +obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2___boxed(obj*, obj*, obj*, obj*); obj* l_ReaderT_bind___at_Lean_Parser_withTrailing___spec__2___rarg(obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_Module_prelude_HasView_x_27___lambda__1___closed__1; obj* l_id_bind___boxed(obj*, obj*); @@ -3338,39 +3338,7 @@ lean::cnstr_set(x_20, 1, x_4); return x_20; } } -obj* l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(obj* x_0, obj* x_1, obj* x_2, obj* x_3, obj* x_4) { -_start: -{ -obj* x_5; obj* x_8; obj* x_11; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; -x_5 = lean::cnstr_get(x_2, 0); -lean::inc(x_5); -lean::dec(x_2); -x_8 = lean::cnstr_get(x_5, 0); -lean::inc(x_8); -lean::dec(x_5); -x_11 = lean::cnstr_get(x_8, 0); -lean::inc(x_11); -lean::dec(x_8); -x_14 = l_Lean_Parser_messageOfParsecMessage___rarg(x_11, x_0); -x_15 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_15, 0, x_14); -lean::cnstr_set(x_15, 1, x_1); -x_16 = lean::box(0); -x_17 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_17, 0, x_16); -lean::cnstr_set(x_17, 1, x_15); -x_18 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_19 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_19, 0, x_17); -lean::cnstr_set(x_19, 1, x_3); -lean::cnstr_set(x_19, 2, x_18); -x_20 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_20, 0, x_19); -lean::cnstr_set(x_20, 1, x_4); -return x_20; -} -} -obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { uint8 x_4; @@ -3465,6 +3433,38 @@ return x_44; } } } +obj* l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(obj* x_0, obj* x_1, obj* x_2, obj* x_3, obj* x_4) { +_start: +{ +obj* x_5; obj* x_8; obj* x_11; obj* x_14; obj* x_15; obj* x_16; obj* x_17; obj* x_18; obj* x_19; obj* x_20; +x_5 = lean::cnstr_get(x_2, 0); +lean::inc(x_5); +lean::dec(x_2); +x_8 = lean::cnstr_get(x_5, 0); +lean::inc(x_8); +lean::dec(x_5); +x_11 = lean::cnstr_get(x_8, 0); +lean::inc(x_11); +lean::dec(x_8); +x_14 = l_Lean_Parser_messageOfParsecMessage___rarg(x_11, x_0); +x_15 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_15, 0, x_14); +lean::cnstr_set(x_15, 1, x_1); +x_16 = lean::box(0); +x_17 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_17, 0, x_16); +lean::cnstr_set(x_17, 1, x_15); +x_18 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_19 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_19, 0, x_17); +lean::cnstr_set(x_19, 1, x_3); +lean::cnstr_set(x_19, 2, x_18); +x_20 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_20, 0, x_19); +lean::cnstr_set(x_20, 1, x_4); +return x_20; +} +} obj* _init_l___private_init_lean_parser_module_1__commandWrecAux___main___closed__1() { _start: { @@ -3494,1403 +3494,293 @@ x_6 = lean::mk_nat_obj(0u); x_7 = lean::nat_dec_eq(x_1, x_6); if (x_7 == 0) { -obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_14; obj* x_15; uint8 x_17; +obj* x_8; obj* x_9; obj* x_10; obj* x_11; obj* x_12; obj* x_14; obj* x_15; uint8 x_17; uint8 x_19; x_8 = lean::mk_nat_obj(1u); x_9 = lean::nat_sub(x_1, x_8); x_10 = l_String_OldIterator_remaining___main(x_4); -x_17 = lean::nat_dec_eq(x_10, x_6); +x_19 = lean::nat_dec_eq(x_10, x_6); lean::dec(x_10); -if (x_17 == 0) +if (x_19 == 0) { if (x_0 == 0) { -obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_26; obj* x_28; obj* x_29; -x_22 = lean::cnstr_get(x_3, 1); -lean::inc(x_22); -x_24 = lean::cnstr_get(x_3, 0); -lean::inc(x_24); -x_26 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__2; -lean::inc(x_4); -x_28 = l_Lean_Parser_commandParser_run(x_22, x_26, x_24, x_4, x_5); -x_29 = lean::cnstr_get(x_28, 0); -lean::inc(x_29); -if (lean::obj_tag(x_29) == 0) +uint8 x_21; +x_21 = 1; +x_17 = x_21; +goto lbl_18; +} +else { -obj* x_31; obj* x_33; obj* x_34; obj* x_36; obj* x_38; obj* x_40; obj* x_42; obj* x_43; obj* x_44; obj* x_45; -x_31 = lean::cnstr_get(x_28, 1); +uint8 x_22; +x_22 = 0; +x_17 = x_22; +goto lbl_18; +} +} +else +{ +obj* x_24; obj* x_26; +lean::dec(x_9); +x_24 = l_Lean_Parser_Module_eoi_Parser(x_2, x_3, x_4, x_5); +lean::dec(x_3); +x_26 = lean::cnstr_get(x_24, 0); +lean::inc(x_26); +if (lean::obj_tag(x_26) == 0) +{ +obj* x_28; obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_37; obj* x_38; obj* x_40; obj* x_42; uint8 x_43; obj* x_44; obj* x_45; obj* x_46; obj* x_47; obj* x_48; obj* x_49; obj* x_50; obj* x_51; obj* x_52; +x_28 = lean::cnstr_get(x_26, 0); +lean::inc(x_28); +x_30 = lean::cnstr_get(x_24, 1); +if (lean::is_exclusive(x_24)) { + lean::cnstr_release(x_24, 0); + x_32 = x_24; +} else { + lean::inc(x_30); + lean::dec(x_24); + x_32 = lean::box(0); +} +x_33 = lean::cnstr_get(x_26, 1); +x_35 = lean::cnstr_get(x_26, 2); +if (lean::is_exclusive(x_26)) { + lean::cnstr_release(x_26, 0); + x_37 = x_26; +} else { + lean::inc(x_33); + lean::inc(x_35); + lean::dec(x_26); + x_37 = lean::box(0); +} +x_38 = lean::cnstr_get(x_28, 0); +x_40 = lean::cnstr_get(x_28, 1); if (lean::is_exclusive(x_28)) { - lean::cnstr_release(x_28, 0); - x_33 = x_28; + x_42 = x_28; } else { - lean::inc(x_31); - lean::dec(x_28); - x_33 = lean::box(0); -} -x_34 = lean::cnstr_get(x_29, 0); -x_36 = lean::cnstr_get(x_29, 1); -x_38 = lean::cnstr_get(x_29, 2); -if (lean::is_exclusive(x_29)) { - x_40 = x_29; -} else { - lean::inc(x_34); - lean::inc(x_36); lean::inc(x_38); - lean::dec(x_29); - x_40 = lean::box(0); + lean::inc(x_40); + lean::dec(x_28); + x_42 = lean::box(0); } -lean::inc(x_2); -if (lean::is_scalar(x_33)) { - x_42 = lean::alloc_cnstr(0, 2, 0); +x_43 = 0; +x_44 = lean::box(x_43); +if (lean::is_scalar(x_42)) { + x_45 = lean::alloc_cnstr(0, 2, 0); } else { - x_42 = x_33; + x_45 = x_42; } -lean::cnstr_set(x_42, 0, x_34); -lean::cnstr_set(x_42, 1, x_2); -x_43 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_40)) { - x_44 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_45, 0, x_44); +lean::cnstr_set(x_45, 1, x_38); +if (lean::is_scalar(x_32)) { + x_46 = lean::alloc_cnstr(0, 2, 0); } else { - x_44 = x_40; + x_46 = x_32; } -lean::cnstr_set(x_44, 0, x_42); -lean::cnstr_set(x_44, 1, x_36); -lean::cnstr_set(x_44, 2, x_43); -x_45 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_38, x_44); -if (lean::obj_tag(x_45) == 0) +lean::cnstr_set(x_46, 0, x_45); +lean::cnstr_set(x_46, 1, x_40); +x_47 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_37)) { + x_48 = lean::alloc_cnstr(0, 3, 0); +} else { + x_48 = x_37; +} +lean::cnstr_set(x_48, 0, x_46); +lean::cnstr_set(x_48, 1, x_33); +lean::cnstr_set(x_48, 2, x_47); +x_49 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_35, x_48); +x_50 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_51 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_50, x_49); +x_52 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_52, 0, x_51); +lean::cnstr_set(x_52, 1, x_30); +return x_52; +} +else { -obj* x_46; obj* x_48; obj* x_50; obj* x_52; obj* x_53; obj* x_55; obj* x_57; obj* x_58; uint8 x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; obj* x_65; obj* x_66; -x_46 = lean::cnstr_get(x_45, 0); -x_48 = lean::cnstr_get(x_45, 1); -x_50 = lean::cnstr_get(x_45, 2); -if (lean::is_exclusive(x_45)) { - x_52 = x_45; -} else { - lean::inc(x_46); - lean::inc(x_48); - lean::inc(x_50); - lean::dec(x_45); - x_52 = lean::box(0); -} -x_53 = lean::cnstr_get(x_46, 0); -x_55 = lean::cnstr_get(x_46, 1); -if (lean::is_exclusive(x_46)) { - x_57 = x_46; +obj* x_53; obj* x_55; obj* x_56; uint8 x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; obj* x_63; obj* x_64; +x_53 = lean::cnstr_get(x_24, 1); +if (lean::is_exclusive(x_24)) { + lean::cnstr_release(x_24, 0); + x_55 = x_24; } else { lean::inc(x_53); - lean::inc(x_55); - lean::dec(x_46); - x_57 = lean::box(0); + lean::dec(x_24); + x_55 = lean::box(0); } -x_58 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_58, 0, x_53); -x_59 = 0; -x_60 = lean::box(x_59); -if (lean::is_scalar(x_57)) { - x_61 = lean::alloc_cnstr(0, 2, 0); +x_56 = lean::cnstr_get(x_26, 0); +x_58 = lean::cnstr_get_scalar(x_26, sizeof(void*)*1); +if (lean::is_exclusive(x_26)) { + x_59 = x_26; } else { - x_61 = x_57; + lean::inc(x_56); + lean::dec(x_26); + x_59 = lean::box(0); } -lean::cnstr_set(x_61, 0, x_60); -lean::cnstr_set(x_61, 1, x_58); -x_62 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_62, 0, x_61); -lean::cnstr_set(x_62, 1, x_55); -if (lean::is_scalar(x_52)) { - x_63 = lean::alloc_cnstr(0, 3, 0); +if (lean::is_scalar(x_59)) { + x_60 = lean::alloc_cnstr(1, 1, 1); } else { - x_63 = x_52; + x_60 = x_59; } -lean::cnstr_set(x_63, 0, x_62); -lean::cnstr_set(x_63, 1, x_48); -lean::cnstr_set(x_63, 2, x_43); -x_64 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_50, x_63); -x_65 = l_Lean_Parser_finishCommentBlock___closed__2; -x_66 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_65, x_64); -x_19 = x_66; -x_20 = x_31; -goto lbl_21; -} -else -{ -obj* x_67; uint8 x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_73; obj* x_74; -x_67 = lean::cnstr_get(x_45, 0); -x_69 = lean::cnstr_get_scalar(x_45, sizeof(void*)*1); -if (lean::is_exclusive(x_45)) { - x_70 = x_45; -} else { - lean::inc(x_67); - lean::dec(x_45); - x_70 = lean::box(0); -} -if (lean::is_scalar(x_70)) { - x_71 = lean::alloc_cnstr(1, 1, 1); -} else { - x_71 = x_70; -} -lean::cnstr_set(x_71, 0, x_67); -lean::cnstr_set_scalar(x_71, sizeof(void*)*1, x_69); -x_72 = x_71; -x_73 = l_Lean_Parser_finishCommentBlock___closed__2; -x_74 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_73, x_72); -x_19 = x_74; -x_20 = x_31; -goto lbl_21; -} -} -else -{ -obj* x_75; obj* x_78; uint8 x_80; obj* x_81; obj* x_82; obj* x_83; obj* x_84; obj* x_85; -x_75 = lean::cnstr_get(x_28, 1); -lean::inc(x_75); -lean::dec(x_28); -x_78 = lean::cnstr_get(x_29, 0); -x_80 = lean::cnstr_get_scalar(x_29, sizeof(void*)*1); -if (lean::is_exclusive(x_29)) { - x_81 = x_29; -} else { - lean::inc(x_78); - lean::dec(x_29); - x_81 = lean::box(0); -} -if (lean::is_scalar(x_81)) { - x_82 = lean::alloc_cnstr(1, 1, 1); -} else { - x_82 = x_81; -} -lean::cnstr_set(x_82, 0, x_78); -lean::cnstr_set_scalar(x_82, sizeof(void*)*1, x_80); -x_83 = x_82; -x_84 = l_Lean_Parser_finishCommentBlock___closed__2; -x_85 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_84, x_83); -x_19 = x_85; -x_20 = x_75; -goto lbl_21; -} -lbl_21: -{ -if (lean::obj_tag(x_19) == 0) -{ -lean::dec(x_4); -x_14 = x_19; -x_15 = x_20; -goto lbl_16; -} -else -{ -uint8 x_87; -x_87 = lean::cnstr_get_scalar(x_19, sizeof(void*)*1); -if (x_87 == 0) -{ -obj* x_88; obj* x_91; obj* x_92; obj* x_93; obj* x_95; obj* x_98; obj* x_99; obj* x_101; obj* x_104; obj* x_105; -x_88 = lean::cnstr_get(x_19, 0); -lean::inc(x_88); -lean::dec(x_19); -x_91 = l_String_splitAux___main___closed__1; -x_92 = l_Lean_Parser_command_Parser___rarg___closed__1; -x_93 = l_Lean_Parser_ParsecT_MonadFail___rarg___closed__1; -lean::inc(x_4); -x_95 = lean::alloc_cnstr(0, 4, 0); -lean::cnstr_set(x_95, 0, x_4); -lean::cnstr_set(x_95, 1, x_91); -lean::cnstr_set(x_95, 2, x_92); -lean::cnstr_set(x_95, 3, x_93); -lean::inc(x_3); -lean::inc(x_2); -x_98 = l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(x_95, x_2, x_3, x_4, x_20); -x_99 = lean::cnstr_get(x_98, 0); -lean::inc(x_99); -x_101 = lean::cnstr_get(x_98, 1); -lean::inc(x_101); -lean::dec(x_98); -x_104 = l_Lean_Parser_finishCommentBlock___closed__2; -x_105 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_104, x_99); -if (lean::obj_tag(x_105) == 0) -{ -obj* x_106; obj* x_108; obj* x_110; obj* x_113; obj* x_114; obj* x_116; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_128; obj* x_129; -x_106 = lean::cnstr_get(x_105, 0); -lean::inc(x_106); -x_108 = lean::cnstr_get(x_105, 1); -lean::inc(x_108); -x_110 = lean::cnstr_get(x_105, 2); -lean::inc(x_110); -lean::dec(x_105); -x_116 = lean::cnstr_get(x_106, 1); -lean::inc(x_116); -lean::dec(x_106); -x_122 = lean::cnstr_get(x_3, 0); -lean::inc(x_122); -x_124 = lean::cnstr_get(x_122, 0); -lean::inc(x_124); -lean::dec(x_122); -lean::inc(x_108); -x_128 = l_Lean_Parser_token(x_124, x_108, x_101); -x_129 = lean::cnstr_get(x_128, 0); -lean::inc(x_129); -if (lean::obj_tag(x_129) == 0) -{ -obj* x_131; obj* x_133; obj* x_134; obj* x_136; obj* x_138; obj* x_140; obj* x_142; obj* x_143; obj* x_144; obj* x_145; -x_131 = lean::cnstr_get(x_128, 1); -if (lean::is_exclusive(x_128)) { - lean::cnstr_release(x_128, 0); - x_133 = x_128; -} else { - lean::inc(x_131); - lean::dec(x_128); - x_133 = lean::box(0); -} -x_134 = lean::cnstr_get(x_129, 0); -x_136 = lean::cnstr_get(x_129, 1); -x_138 = lean::cnstr_get(x_129, 2); -if (lean::is_exclusive(x_129)) { - x_140 = x_129; -} else { - lean::inc(x_134); - lean::inc(x_136); - lean::inc(x_138); - lean::dec(x_129); - x_140 = lean::box(0); -} -lean::inc(x_116); -if (lean::is_scalar(x_133)) { - x_142 = lean::alloc_cnstr(0, 2, 0); -} else { - x_142 = x_133; -} -lean::cnstr_set(x_142, 0, x_134); -lean::cnstr_set(x_142, 1, x_116); -x_143 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_140)) { - x_144 = lean::alloc_cnstr(0, 3, 0); -} else { - x_144 = x_140; -} -lean::cnstr_set(x_144, 0, x_142); -lean::cnstr_set(x_144, 1, x_136); -lean::cnstr_set(x_144, 2, x_143); -x_145 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_138, x_144); -if (lean::obj_tag(x_145) == 0) -{ -obj* x_146; obj* x_148; obj* x_150; obj* x_152; obj* x_153; obj* x_155; obj* x_156; obj* x_157; obj* x_158; obj* x_159; obj* x_160; -x_146 = lean::cnstr_get(x_145, 0); -x_148 = lean::cnstr_get(x_145, 1); -x_150 = lean::cnstr_get(x_145, 2); -if (lean::is_exclusive(x_145)) { - x_152 = x_145; -} else { - lean::inc(x_146); - lean::inc(x_148); - lean::inc(x_150); - lean::dec(x_145); - x_152 = lean::box(0); -} -x_153 = lean::cnstr_get(x_146, 1); -if (lean::is_exclusive(x_146)) { - lean::cnstr_release(x_146, 0); - x_155 = x_146; -} else { - lean::inc(x_153); - lean::dec(x_146); - x_155 = lean::box(0); -} -x_156 = lean::box(0); -if (lean::is_scalar(x_155)) { - x_157 = lean::alloc_cnstr(0, 2, 0); -} else { - x_157 = x_155; -} -lean::cnstr_set(x_157, 0, x_156); -lean::cnstr_set(x_157, 1, x_153); -if (lean::is_scalar(x_152)) { - x_158 = lean::alloc_cnstr(0, 3, 0); -} else { - x_158 = x_152; -} -lean::cnstr_set(x_158, 0, x_157); -lean::cnstr_set(x_158, 1, x_148); -lean::cnstr_set(x_158, 2, x_143); -x_159 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_150, x_158); -x_160 = l_Lean_Parser_ParsecT_tryMkRes___rarg(x_159); -x_119 = x_160; -x_120 = x_131; -goto lbl_121; -} -else -{ -obj* x_161; obj* x_163; uint8 x_164; obj* x_165; obj* x_166; -x_161 = lean::cnstr_get(x_145, 0); -if (lean::is_exclusive(x_145)) { - x_163 = x_145; -} else { - lean::inc(x_161); - lean::dec(x_145); - x_163 = lean::box(0); -} -x_164 = 0; -if (lean::is_scalar(x_163)) { - x_165 = lean::alloc_cnstr(1, 1, 1); -} else { - x_165 = x_163; -} -lean::cnstr_set(x_165, 0, x_161); -lean::cnstr_set_scalar(x_165, sizeof(void*)*1, x_164); -x_166 = x_165; -x_119 = x_166; -x_120 = x_131; -goto lbl_121; -} -} -else -{ -obj* x_167; obj* x_170; obj* x_172; uint8 x_173; obj* x_174; obj* x_175; -x_167 = lean::cnstr_get(x_128, 1); -lean::inc(x_167); -lean::dec(x_128); -x_170 = lean::cnstr_get(x_129, 0); -if (lean::is_exclusive(x_129)) { - x_172 = x_129; -} else { - lean::inc(x_170); - lean::dec(x_129); - x_172 = lean::box(0); -} -x_173 = 0; -if (lean::is_scalar(x_172)) { - x_174 = lean::alloc_cnstr(1, 1, 1); -} else { - x_174 = x_172; -} -lean::cnstr_set(x_174, 0, x_170); -lean::cnstr_set_scalar(x_174, sizeof(void*)*1, x_173); -x_175 = x_174; -x_119 = x_175; -x_120 = x_167; -goto lbl_121; -} -lbl_115: -{ -if (lean::obj_tag(x_113) == 0) -{ -obj* x_176; obj* x_178; obj* x_180; obj* x_182; obj* x_183; obj* x_185; obj* x_186; obj* x_187; obj* x_188; obj* x_189; obj* x_190; obj* x_191; obj* x_192; -x_176 = lean::cnstr_get(x_113, 0); -x_178 = lean::cnstr_get(x_113, 1); -x_180 = lean::cnstr_get(x_113, 2); -if (lean::is_exclusive(x_113)) { - x_182 = x_113; -} else { - lean::inc(x_176); - lean::inc(x_178); - lean::inc(x_180); - lean::dec(x_113); - x_182 = lean::box(0); -} -x_183 = lean::cnstr_get(x_176, 1); -if (lean::is_exclusive(x_176)) { - lean::cnstr_release(x_176, 0); - x_185 = x_176; -} else { - lean::inc(x_183); - lean::dec(x_176); - x_185 = lean::box(0); -} -x_186 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__1; -if (lean::is_scalar(x_185)) { - x_187 = lean::alloc_cnstr(0, 2, 0); -} else { - x_187 = x_185; -} -lean::cnstr_set(x_187, 0, x_186); -lean::cnstr_set(x_187, 1, x_183); -x_188 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_182)) { - x_189 = lean::alloc_cnstr(0, 3, 0); -} else { - x_189 = x_182; -} -lean::cnstr_set(x_189, 0, x_187); -lean::cnstr_set(x_189, 1, x_178); -lean::cnstr_set(x_189, 2, x_188); -x_190 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_180, x_189); -x_191 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_110, x_190); -x_192 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_88, x_191); -x_14 = x_192; -x_15 = x_114; -goto lbl_16; -} -else -{ -obj* x_193; uint8 x_195; obj* x_196; obj* x_197; obj* x_198; obj* x_199; obj* x_200; -x_193 = lean::cnstr_get(x_113, 0); -x_195 = lean::cnstr_get_scalar(x_113, sizeof(void*)*1); -if (lean::is_exclusive(x_113)) { - x_196 = x_113; -} else { - lean::inc(x_193); - lean::dec(x_113); - x_196 = lean::box(0); -} -if (lean::is_scalar(x_196)) { - x_197 = lean::alloc_cnstr(1, 1, 1); -} else { - x_197 = x_196; -} -lean::cnstr_set(x_197, 0, x_193); -lean::cnstr_set_scalar(x_197, sizeof(void*)*1, x_195); -x_198 = x_197; -x_199 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_110, x_198); -x_200 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_88, x_199); -x_14 = x_200; -x_15 = x_114; -goto lbl_16; -} -} -lbl_121: -{ -if (lean::obj_tag(x_119) == 0) -{ -lean::dec(x_108); -lean::dec(x_116); -x_113 = x_119; -x_114 = x_120; -goto lbl_115; -} -else -{ -uint8 x_203; -x_203 = lean::cnstr_get_scalar(x_119, sizeof(void*)*1); -if (x_203 == 0) -{ -obj* x_204; obj* x_207; obj* x_208; -x_204 = lean::cnstr_get(x_119, 0); -lean::inc(x_204); -lean::dec(x_119); -x_207 = l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(x_116, x_3, x_108, x_120); -x_208 = lean::cnstr_get(x_207, 0); -lean::inc(x_208); -if (lean::obj_tag(x_208) == 0) -{ -obj* x_210; obj* x_212; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_223; obj* x_224; obj* x_225; obj* x_226; obj* x_227; obj* x_228; -x_210 = lean::cnstr_get(x_208, 0); -lean::inc(x_210); -x_212 = lean::cnstr_get(x_207, 1); -lean::inc(x_212); -lean::dec(x_207); -x_215 = lean::cnstr_get(x_208, 1); -x_217 = lean::cnstr_get(x_208, 2); -if (lean::is_exclusive(x_208)) { - lean::cnstr_release(x_208, 0); - x_219 = x_208; -} else { - lean::inc(x_215); - lean::inc(x_217); - lean::dec(x_208); - x_219 = lean::box(0); -} -x_220 = lean::cnstr_get(x_210, 1); -if (lean::is_exclusive(x_210)) { - lean::cnstr_release(x_210, 0); - x_222 = x_210; -} else { - lean::inc(x_220); - lean::dec(x_210); - x_222 = lean::box(0); -} -x_223 = lean::box(0); -if (lean::is_scalar(x_222)) { - x_224 = lean::alloc_cnstr(0, 2, 0); -} else { - x_224 = x_222; -} -lean::cnstr_set(x_224, 0, x_223); -lean::cnstr_set(x_224, 1, x_220); -x_225 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_219)) { - x_226 = lean::alloc_cnstr(0, 3, 0); -} else { - x_226 = x_219; -} -lean::cnstr_set(x_226, 0, x_224); -lean::cnstr_set(x_226, 1, x_215); -lean::cnstr_set(x_226, 2, x_225); -x_227 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_217, x_226); -x_228 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_204, x_227); -x_113 = x_228; -x_114 = x_212; -goto lbl_115; -} -else -{ -obj* x_229; obj* x_232; uint8 x_234; obj* x_235; obj* x_236; obj* x_237; obj* x_238; -x_229 = lean::cnstr_get(x_207, 1); -lean::inc(x_229); -lean::dec(x_207); -x_232 = lean::cnstr_get(x_208, 0); -x_234 = lean::cnstr_get_scalar(x_208, sizeof(void*)*1); -if (lean::is_exclusive(x_208)) { - x_235 = x_208; -} else { - lean::inc(x_232); - lean::dec(x_208); - x_235 = lean::box(0); -} -if (lean::is_scalar(x_235)) { - x_236 = lean::alloc_cnstr(1, 1, 1); -} else { - x_236 = x_235; -} -lean::cnstr_set(x_236, 0, x_232); -lean::cnstr_set_scalar(x_236, sizeof(void*)*1, x_234); -x_237 = x_236; -x_238 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_204, x_237); -x_113 = x_238; -x_114 = x_229; -goto lbl_115; -} -} -else -{ -lean::dec(x_108); -lean::dec(x_116); -x_113 = x_119; -x_114 = x_120; -goto lbl_115; -} -} -} -} -else -{ -obj* x_241; uint8 x_243; obj* x_244; obj* x_245; obj* x_246; obj* x_247; -x_241 = lean::cnstr_get(x_105, 0); -x_243 = lean::cnstr_get_scalar(x_105, sizeof(void*)*1); -if (lean::is_exclusive(x_105)) { - x_244 = x_105; -} else { - lean::inc(x_241); - lean::dec(x_105); - x_244 = lean::box(0); -} -if (lean::is_scalar(x_244)) { - x_245 = lean::alloc_cnstr(1, 1, 1); -} else { - x_245 = x_244; -} -lean::cnstr_set(x_245, 0, x_241); -lean::cnstr_set_scalar(x_245, sizeof(void*)*1, x_243); -x_246 = x_245; -x_247 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_88, x_246); -x_14 = x_247; -x_15 = x_101; -goto lbl_16; -} -} -else -{ -lean::dec(x_4); -x_14 = x_19; -x_15 = x_20; -goto lbl_16; -} -} -} -} -else -{ -obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_256; obj* x_258; obj* x_259; -x_252 = lean::cnstr_get(x_3, 1); -lean::inc(x_252); -x_254 = lean::cnstr_get(x_3, 0); -lean::inc(x_254); -x_256 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__2; -lean::inc(x_4); -x_258 = l_Lean_Parser_commandParser_run(x_252, x_256, x_254, x_4, x_5); -x_259 = lean::cnstr_get(x_258, 0); -lean::inc(x_259); -if (lean::obj_tag(x_259) == 0) -{ -obj* x_261; obj* x_263; obj* x_264; obj* x_266; obj* x_268; obj* x_270; obj* x_272; obj* x_273; obj* x_274; obj* x_275; -x_261 = lean::cnstr_get(x_258, 1); -if (lean::is_exclusive(x_258)) { - lean::cnstr_release(x_258, 0); - x_263 = x_258; -} else { - lean::inc(x_261); - lean::dec(x_258); - x_263 = lean::box(0); -} -x_264 = lean::cnstr_get(x_259, 0); -x_266 = lean::cnstr_get(x_259, 1); -x_268 = lean::cnstr_get(x_259, 2); -if (lean::is_exclusive(x_259)) { - x_270 = x_259; -} else { - lean::inc(x_264); - lean::inc(x_266); - lean::inc(x_268); - lean::dec(x_259); - x_270 = lean::box(0); -} -lean::inc(x_2); -if (lean::is_scalar(x_263)) { - x_272 = lean::alloc_cnstr(0, 2, 0); -} else { - x_272 = x_263; -} -lean::cnstr_set(x_272, 0, x_264); -lean::cnstr_set(x_272, 1, x_2); -x_273 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_270)) { - x_274 = lean::alloc_cnstr(0, 3, 0); -} else { - x_274 = x_270; -} -lean::cnstr_set(x_274, 0, x_272); -lean::cnstr_set(x_274, 1, x_266); -lean::cnstr_set(x_274, 2, x_273); -x_275 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_268, x_274); -if (lean::obj_tag(x_275) == 0) -{ -obj* x_276; obj* x_278; obj* x_280; obj* x_282; obj* x_283; obj* x_285; obj* x_287; obj* x_288; uint8 x_289; obj* x_290; obj* x_291; obj* x_292; obj* x_293; obj* x_294; obj* x_295; obj* x_296; -x_276 = lean::cnstr_get(x_275, 0); -x_278 = lean::cnstr_get(x_275, 1); -x_280 = lean::cnstr_get(x_275, 2); -if (lean::is_exclusive(x_275)) { - x_282 = x_275; -} else { - lean::inc(x_276); - lean::inc(x_278); - lean::inc(x_280); - lean::dec(x_275); - x_282 = lean::box(0); -} -x_283 = lean::cnstr_get(x_276, 0); -x_285 = lean::cnstr_get(x_276, 1); -if (lean::is_exclusive(x_276)) { - x_287 = x_276; -} else { - lean::inc(x_283); - lean::inc(x_285); - lean::dec(x_276); - x_287 = lean::box(0); -} -x_288 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_288, 0, x_283); -x_289 = 0; -x_290 = lean::box(x_289); -if (lean::is_scalar(x_287)) { - x_291 = lean::alloc_cnstr(0, 2, 0); -} else { - x_291 = x_287; -} -lean::cnstr_set(x_291, 0, x_290); -lean::cnstr_set(x_291, 1, x_288); -x_292 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_292, 0, x_291); -lean::cnstr_set(x_292, 1, x_285); -if (lean::is_scalar(x_282)) { - x_293 = lean::alloc_cnstr(0, 3, 0); -} else { - x_293 = x_282; -} -lean::cnstr_set(x_293, 0, x_292); -lean::cnstr_set(x_293, 1, x_278); -lean::cnstr_set(x_293, 2, x_273); -x_294 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_280, x_293); -x_295 = l_Lean_Parser_finishCommentBlock___closed__2; -x_296 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_295, x_294); -x_249 = x_296; -x_250 = x_261; -goto lbl_251; -} -else -{ -obj* x_297; uint8 x_299; obj* x_300; obj* x_301; obj* x_302; obj* x_303; obj* x_304; -x_297 = lean::cnstr_get(x_275, 0); -x_299 = lean::cnstr_get_scalar(x_275, sizeof(void*)*1); -if (lean::is_exclusive(x_275)) { - x_300 = x_275; -} else { - lean::inc(x_297); - lean::dec(x_275); - x_300 = lean::box(0); -} -if (lean::is_scalar(x_300)) { - x_301 = lean::alloc_cnstr(1, 1, 1); -} else { - x_301 = x_300; -} -lean::cnstr_set(x_301, 0, x_297); -lean::cnstr_set_scalar(x_301, sizeof(void*)*1, x_299); -x_302 = x_301; -x_303 = l_Lean_Parser_finishCommentBlock___closed__2; -x_304 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_303, x_302); -x_249 = x_304; -x_250 = x_261; -goto lbl_251; -} -} -else -{ -obj* x_305; obj* x_308; uint8 x_310; obj* x_311; obj* x_312; obj* x_313; obj* x_314; obj* x_315; -x_305 = lean::cnstr_get(x_258, 1); -lean::inc(x_305); -lean::dec(x_258); -x_308 = lean::cnstr_get(x_259, 0); -x_310 = lean::cnstr_get_scalar(x_259, sizeof(void*)*1); -if (lean::is_exclusive(x_259)) { - x_311 = x_259; -} else { - lean::inc(x_308); - lean::dec(x_259); - x_311 = lean::box(0); -} -if (lean::is_scalar(x_311)) { - x_312 = lean::alloc_cnstr(1, 1, 1); -} else { - x_312 = x_311; -} -lean::cnstr_set(x_312, 0, x_308); -lean::cnstr_set_scalar(x_312, sizeof(void*)*1, x_310); -x_313 = x_312; -x_314 = l_Lean_Parser_finishCommentBlock___closed__2; -x_315 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_314, x_313); -x_249 = x_315; -x_250 = x_305; -goto lbl_251; -} -lbl_251: -{ -if (lean::obj_tag(x_249) == 0) -{ -lean::dec(x_4); -x_14 = x_249; -x_15 = x_250; -goto lbl_16; -} -else -{ -uint8 x_317; -x_317 = lean::cnstr_get_scalar(x_249, sizeof(void*)*1); -if (x_317 == 0) -{ -obj* x_318; obj* x_321; obj* x_322; obj* x_324; obj* x_325; obj* x_327; obj* x_329; obj* x_333; obj* x_334; -x_318 = lean::cnstr_get(x_249, 0); -lean::inc(x_318); -lean::dec(x_249); -x_327 = lean::cnstr_get(x_3, 0); -lean::inc(x_327); -x_329 = lean::cnstr_get(x_327, 0); -lean::inc(x_329); -lean::dec(x_327); -lean::inc(x_4); -x_333 = l_Lean_Parser_token(x_329, x_4, x_250); -x_334 = lean::cnstr_get(x_333, 0); -lean::inc(x_334); -if (lean::obj_tag(x_334) == 0) -{ -obj* x_336; obj* x_338; obj* x_339; obj* x_341; obj* x_343; obj* x_345; obj* x_347; obj* x_348; obj* x_349; obj* x_350; -x_336 = lean::cnstr_get(x_333, 1); -if (lean::is_exclusive(x_333)) { - lean::cnstr_release(x_333, 0); - x_338 = x_333; -} else { - lean::inc(x_336); - lean::dec(x_333); - x_338 = lean::box(0); -} -x_339 = lean::cnstr_get(x_334, 0); -x_341 = lean::cnstr_get(x_334, 1); -x_343 = lean::cnstr_get(x_334, 2); -if (lean::is_exclusive(x_334)) { - x_345 = x_334; -} else { - lean::inc(x_339); - lean::inc(x_341); - lean::inc(x_343); - lean::dec(x_334); - x_345 = lean::box(0); -} -lean::inc(x_2); -if (lean::is_scalar(x_338)) { - x_347 = lean::alloc_cnstr(0, 2, 0); -} else { - x_347 = x_338; -} -lean::cnstr_set(x_347, 0, x_339); -lean::cnstr_set(x_347, 1, x_2); -x_348 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_345)) { - x_349 = lean::alloc_cnstr(0, 3, 0); -} else { - x_349 = x_345; -} -lean::cnstr_set(x_349, 0, x_347); -lean::cnstr_set(x_349, 1, x_341); -lean::cnstr_set(x_349, 2, x_348); -x_350 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_343, x_349); -if (lean::obj_tag(x_350) == 0) -{ -obj* x_351; obj* x_353; obj* x_355; obj* x_357; obj* x_358; obj* x_360; obj* x_361; obj* x_362; obj* x_363; obj* x_364; obj* x_365; -x_351 = lean::cnstr_get(x_350, 0); -x_353 = lean::cnstr_get(x_350, 1); -x_355 = lean::cnstr_get(x_350, 2); -if (lean::is_exclusive(x_350)) { - x_357 = x_350; -} else { - lean::inc(x_351); - lean::inc(x_353); - lean::inc(x_355); - lean::dec(x_350); - x_357 = lean::box(0); -} -x_358 = lean::cnstr_get(x_351, 1); -if (lean::is_exclusive(x_351)) { - lean::cnstr_release(x_351, 0); - x_360 = x_351; -} else { - lean::inc(x_358); - lean::dec(x_351); - x_360 = lean::box(0); -} -x_361 = lean::box(0); -if (lean::is_scalar(x_360)) { - x_362 = lean::alloc_cnstr(0, 2, 0); -} else { - x_362 = x_360; -} -lean::cnstr_set(x_362, 0, x_361); -lean::cnstr_set(x_362, 1, x_358); -if (lean::is_scalar(x_357)) { - x_363 = lean::alloc_cnstr(0, 3, 0); -} else { - x_363 = x_357; -} -lean::cnstr_set(x_363, 0, x_362); -lean::cnstr_set(x_363, 1, x_353); -lean::cnstr_set(x_363, 2, x_348); -x_364 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_355, x_363); -x_365 = l_Lean_Parser_ParsecT_tryMkRes___rarg(x_364); -x_324 = x_365; -x_325 = x_336; -goto lbl_326; -} -else -{ -obj* x_366; obj* x_368; uint8 x_369; obj* x_370; obj* x_371; -x_366 = lean::cnstr_get(x_350, 0); -if (lean::is_exclusive(x_350)) { - x_368 = x_350; -} else { - lean::inc(x_366); - lean::dec(x_350); - x_368 = lean::box(0); -} -x_369 = 0; -if (lean::is_scalar(x_368)) { - x_370 = lean::alloc_cnstr(1, 1, 1); -} else { - x_370 = x_368; -} -lean::cnstr_set(x_370, 0, x_366); -lean::cnstr_set_scalar(x_370, sizeof(void*)*1, x_369); -x_371 = x_370; -x_324 = x_371; -x_325 = x_336; -goto lbl_326; -} -} -else -{ -obj* x_372; obj* x_375; obj* x_377; uint8 x_378; obj* x_379; obj* x_380; -x_372 = lean::cnstr_get(x_333, 1); -lean::inc(x_372); -lean::dec(x_333); -x_375 = lean::cnstr_get(x_334, 0); -if (lean::is_exclusive(x_334)) { - x_377 = x_334; -} else { - lean::inc(x_375); - lean::dec(x_334); - x_377 = lean::box(0); -} -x_378 = 0; -if (lean::is_scalar(x_377)) { - x_379 = lean::alloc_cnstr(1, 1, 1); -} else { - x_379 = x_377; -} -lean::cnstr_set(x_379, 0, x_375); -lean::cnstr_set_scalar(x_379, sizeof(void*)*1, x_378); -x_380 = x_379; -x_324 = x_380; -x_325 = x_372; -goto lbl_326; -} -lbl_323: -{ -if (lean::obj_tag(x_321) == 0) -{ -obj* x_381; obj* x_383; obj* x_385; obj* x_387; obj* x_388; obj* x_390; obj* x_391; obj* x_392; obj* x_393; obj* x_394; obj* x_395; obj* x_396; obj* x_397; -x_381 = lean::cnstr_get(x_321, 0); -x_383 = lean::cnstr_get(x_321, 1); -x_385 = lean::cnstr_get(x_321, 2); -if (lean::is_exclusive(x_321)) { - x_387 = x_321; -} else { - lean::inc(x_381); - lean::inc(x_383); - lean::inc(x_385); - lean::dec(x_321); - x_387 = lean::box(0); -} -x_388 = lean::cnstr_get(x_381, 1); -if (lean::is_exclusive(x_381)) { - lean::cnstr_release(x_381, 0); - x_390 = x_381; -} else { - lean::inc(x_388); - lean::dec(x_381); - x_390 = lean::box(0); -} -x_391 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__1; -if (lean::is_scalar(x_390)) { - x_392 = lean::alloc_cnstr(0, 2, 0); -} else { - x_392 = x_390; -} -lean::cnstr_set(x_392, 0, x_391); -lean::cnstr_set(x_392, 1, x_388); -x_393 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_387)) { - x_394 = lean::alloc_cnstr(0, 3, 0); -} else { - x_394 = x_387; -} -lean::cnstr_set(x_394, 0, x_392); -lean::cnstr_set(x_394, 1, x_383); -lean::cnstr_set(x_394, 2, x_393); -x_395 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_385, x_394); -x_396 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_393, x_395); -x_397 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_318, x_396); -x_14 = x_397; -x_15 = x_322; -goto lbl_16; -} -else -{ -obj* x_398; uint8 x_400; obj* x_401; obj* x_402; obj* x_403; obj* x_404; obj* x_405; obj* x_406; -x_398 = lean::cnstr_get(x_321, 0); -x_400 = lean::cnstr_get_scalar(x_321, sizeof(void*)*1); -if (lean::is_exclusive(x_321)) { - x_401 = x_321; -} else { - lean::inc(x_398); - lean::dec(x_321); - x_401 = lean::box(0); -} -if (lean::is_scalar(x_401)) { - x_402 = lean::alloc_cnstr(1, 1, 1); -} else { - x_402 = x_401; -} -lean::cnstr_set(x_402, 0, x_398); -lean::cnstr_set_scalar(x_402, sizeof(void*)*1, x_400); -x_403 = x_402; -x_404 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -x_405 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_404, x_403); -x_406 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_318, x_405); -x_14 = x_406; -x_15 = x_322; -goto lbl_16; -} -} -lbl_326: -{ -if (lean::obj_tag(x_324) == 0) -{ -lean::dec(x_4); -x_321 = x_324; -x_322 = x_325; -goto lbl_323; -} -else -{ -uint8 x_408; -x_408 = lean::cnstr_get_scalar(x_324, sizeof(void*)*1); -if (x_408 == 0) -{ -obj* x_409; obj* x_413; obj* x_414; -x_409 = lean::cnstr_get(x_324, 0); -lean::inc(x_409); -lean::dec(x_324); -lean::inc(x_2); -x_413 = l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(x_2, x_3, x_4, x_325); -x_414 = lean::cnstr_get(x_413, 0); -lean::inc(x_414); -if (lean::obj_tag(x_414) == 0) -{ -obj* x_416; obj* x_418; obj* x_421; obj* x_423; obj* x_425; obj* x_426; obj* x_428; obj* x_429; obj* x_430; obj* x_431; obj* x_432; obj* x_433; obj* x_434; -x_416 = lean::cnstr_get(x_414, 0); -lean::inc(x_416); -x_418 = lean::cnstr_get(x_413, 1); -lean::inc(x_418); -lean::dec(x_413); -x_421 = lean::cnstr_get(x_414, 1); -x_423 = lean::cnstr_get(x_414, 2); -if (lean::is_exclusive(x_414)) { - lean::cnstr_release(x_414, 0); - x_425 = x_414; -} else { - lean::inc(x_421); - lean::inc(x_423); - lean::dec(x_414); - x_425 = lean::box(0); -} -x_426 = lean::cnstr_get(x_416, 1); -if (lean::is_exclusive(x_416)) { - lean::cnstr_release(x_416, 0); - x_428 = x_416; -} else { - lean::inc(x_426); - lean::dec(x_416); - x_428 = lean::box(0); -} -x_429 = lean::box(0); -if (lean::is_scalar(x_428)) { - x_430 = lean::alloc_cnstr(0, 2, 0); -} else { - x_430 = x_428; -} -lean::cnstr_set(x_430, 0, x_429); -lean::cnstr_set(x_430, 1, x_426); -x_431 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_425)) { - x_432 = lean::alloc_cnstr(0, 3, 0); -} else { - x_432 = x_425; -} -lean::cnstr_set(x_432, 0, x_430); -lean::cnstr_set(x_432, 1, x_421); -lean::cnstr_set(x_432, 2, x_431); -x_433 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_423, x_432); -x_434 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_409, x_433); -x_321 = x_434; -x_322 = x_418; -goto lbl_323; -} -else -{ -obj* x_435; obj* x_438; uint8 x_440; obj* x_441; obj* x_442; obj* x_443; obj* x_444; -x_435 = lean::cnstr_get(x_413, 1); -lean::inc(x_435); -lean::dec(x_413); -x_438 = lean::cnstr_get(x_414, 0); -x_440 = lean::cnstr_get_scalar(x_414, sizeof(void*)*1); -if (lean::is_exclusive(x_414)) { - x_441 = x_414; -} else { - lean::inc(x_438); - lean::dec(x_414); - x_441 = lean::box(0); -} -if (lean::is_scalar(x_441)) { - x_442 = lean::alloc_cnstr(1, 1, 1); -} else { - x_442 = x_441; -} -lean::cnstr_set(x_442, 0, x_438); -lean::cnstr_set_scalar(x_442, sizeof(void*)*1, x_440); -x_443 = x_442; -x_444 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_409, x_443); -x_321 = x_444; -x_322 = x_435; -goto lbl_323; -} -} -else -{ -lean::dec(x_4); -x_321 = x_324; -x_322 = x_325; -goto lbl_323; -} -} -} -} -else -{ -lean::dec(x_4); -x_14 = x_249; -x_15 = x_250; -goto lbl_16; -} -} -} -} -} -else -{ -obj* x_448; obj* x_450; -lean::dec(x_9); -x_448 = l_Lean_Parser_Module_eoi_Parser(x_2, x_3, x_4, x_5); -lean::dec(x_3); -x_450 = lean::cnstr_get(x_448, 0); -lean::inc(x_450); -if (lean::obj_tag(x_450) == 0) -{ -obj* x_452; obj* x_454; obj* x_456; obj* x_457; obj* x_459; obj* x_461; obj* x_462; obj* x_464; obj* x_466; uint8 x_467; obj* x_468; obj* x_469; obj* x_470; obj* x_471; obj* x_472; obj* x_473; obj* x_474; obj* x_475; obj* x_476; -x_452 = lean::cnstr_get(x_450, 0); -lean::inc(x_452); -x_454 = lean::cnstr_get(x_448, 1); -if (lean::is_exclusive(x_448)) { - lean::cnstr_release(x_448, 0); - x_456 = x_448; -} else { - lean::inc(x_454); - lean::dec(x_448); - x_456 = lean::box(0); -} -x_457 = lean::cnstr_get(x_450, 1); -x_459 = lean::cnstr_get(x_450, 2); -if (lean::is_exclusive(x_450)) { - lean::cnstr_release(x_450, 0); - x_461 = x_450; -} else { - lean::inc(x_457); - lean::inc(x_459); - lean::dec(x_450); - x_461 = lean::box(0); -} -x_462 = lean::cnstr_get(x_452, 0); -x_464 = lean::cnstr_get(x_452, 1); -if (lean::is_exclusive(x_452)) { - x_466 = x_452; -} else { - lean::inc(x_462); - lean::inc(x_464); - lean::dec(x_452); - x_466 = lean::box(0); -} -x_467 = 0; -x_468 = lean::box(x_467); -if (lean::is_scalar(x_466)) { - x_469 = lean::alloc_cnstr(0, 2, 0); -} else { - x_469 = x_466; -} -lean::cnstr_set(x_469, 0, x_468); -lean::cnstr_set(x_469, 1, x_462); -if (lean::is_scalar(x_456)) { - x_470 = lean::alloc_cnstr(0, 2, 0); -} else { - x_470 = x_456; -} -lean::cnstr_set(x_470, 0, x_469); -lean::cnstr_set(x_470, 1, x_464); -x_471 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_461)) { - x_472 = lean::alloc_cnstr(0, 3, 0); -} else { - x_472 = x_461; -} -lean::cnstr_set(x_472, 0, x_470); -lean::cnstr_set(x_472, 1, x_457); -lean::cnstr_set(x_472, 2, x_471); -x_473 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_459, x_472); -x_474 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_475 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_474, x_473); -x_476 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_476, 0, x_475); -lean::cnstr_set(x_476, 1, x_454); -return x_476; -} -else -{ -obj* x_477; obj* x_479; obj* x_480; uint8 x_482; obj* x_483; obj* x_484; obj* x_485; obj* x_486; obj* x_487; obj* x_488; -x_477 = lean::cnstr_get(x_448, 1); -if (lean::is_exclusive(x_448)) { - lean::cnstr_release(x_448, 0); - x_479 = x_448; -} else { - lean::inc(x_477); - lean::dec(x_448); - x_479 = lean::box(0); -} -x_480 = lean::cnstr_get(x_450, 0); -x_482 = lean::cnstr_get_scalar(x_450, sizeof(void*)*1); -if (lean::is_exclusive(x_450)) { - x_483 = x_450; -} else { - lean::inc(x_480); - lean::dec(x_450); - x_483 = lean::box(0); -} -if (lean::is_scalar(x_483)) { - x_484 = lean::alloc_cnstr(1, 1, 1); -} else { - x_484 = x_483; -} -lean::cnstr_set(x_484, 0, x_480); -lean::cnstr_set_scalar(x_484, sizeof(void*)*1, x_482); -x_485 = x_484; -x_486 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_487 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_486, x_485); -if (lean::is_scalar(x_479)) { - x_488 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_60, 0, x_56); +lean::cnstr_set_scalar(x_60, sizeof(void*)*1, x_58); +x_61 = x_60; +x_62 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_63 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_62, x_61); +if (lean::is_scalar(x_55)) { + x_64 = lean::alloc_cnstr(0, 2, 0); } else { - x_488 = x_479; + x_64 = x_55; } -lean::cnstr_set(x_488, 0, x_487); -lean::cnstr_set(x_488, 1, x_477); -return x_488; +lean::cnstr_set(x_64, 0, x_63); +lean::cnstr_set(x_64, 1, x_53); +return x_64; } } lbl_13: { if (lean::obj_tag(x_11) == 0) { -obj* x_489; obj* x_491; obj* x_493; -x_489 = lean::cnstr_get(x_11, 0); -lean::inc(x_489); -x_491 = lean::cnstr_get(x_489, 0); -lean::inc(x_491); -x_493 = lean::cnstr_get(x_491, 1); -lean::inc(x_493); -if (lean::obj_tag(x_493) == 0) +obj* x_65; obj* x_67; obj* x_69; +x_65 = lean::cnstr_get(x_11, 0); +lean::inc(x_65); +x_67 = lean::cnstr_get(x_65, 0); +lean::inc(x_67); +x_69 = lean::cnstr_get(x_67, 1); +lean::inc(x_69); +if (lean::obj_tag(x_69) == 0) { -obj* x_495; obj* x_497; obj* x_500; obj* x_503; uint8 x_506; obj* x_507; obj* x_509; obj* x_511; obj* x_513; obj* x_514; obj* x_515; obj* x_516; obj* x_517; -x_495 = lean::cnstr_get(x_11, 1); -lean::inc(x_495); -x_497 = lean::cnstr_get(x_11, 2); -lean::inc(x_497); +obj* x_71; obj* x_73; obj* x_76; obj* x_79; uint8 x_82; obj* x_83; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_91; obj* x_92; obj* x_93; +x_71 = lean::cnstr_get(x_11, 1); +lean::inc(x_71); +x_73 = lean::cnstr_get(x_11, 2); +lean::inc(x_73); lean::dec(x_11); -x_500 = lean::cnstr_get(x_489, 1); -lean::inc(x_500); -lean::dec(x_489); -x_503 = lean::cnstr_get(x_491, 0); -lean::inc(x_503); -lean::dec(x_491); -x_506 = lean::unbox(x_503); -x_507 = l___private_init_lean_parser_module_1__commandWrecAux___main(x_506, x_9, x_500, x_3, x_495, x_12); +x_76 = lean::cnstr_get(x_65, 1); +lean::inc(x_76); +lean::dec(x_65); +x_79 = lean::cnstr_get(x_67, 0); +lean::inc(x_79); +lean::dec(x_67); +x_82 = lean::unbox(x_79); +x_83 = l___private_init_lean_parser_module_1__commandWrecAux___main(x_82, x_9, x_76, x_3, x_71, x_12); lean::dec(x_9); -x_509 = lean::cnstr_get(x_507, 0); -x_511 = lean::cnstr_get(x_507, 1); -if (lean::is_exclusive(x_507)) { - x_513 = x_507; +x_85 = lean::cnstr_get(x_83, 0); +x_87 = lean::cnstr_get(x_83, 1); +if (lean::is_exclusive(x_83)) { + x_89 = x_83; } else { - lean::inc(x_509); - lean::inc(x_511); - lean::dec(x_507); - x_513 = lean::box(0); + lean::inc(x_85); + lean::inc(x_87); + lean::dec(x_83); + x_89 = lean::box(0); } -x_514 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_497, x_509); -x_515 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_516 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_515, x_514); -if (lean::is_scalar(x_513)) { - x_517 = lean::alloc_cnstr(0, 2, 0); +x_90 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_73, x_85); +x_91 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_92 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_91, x_90); +if (lean::is_scalar(x_89)) { + x_93 = lean::alloc_cnstr(0, 2, 0); } else { - x_517 = x_513; + x_93 = x_89; } -lean::cnstr_set(x_517, 0, x_516); -lean::cnstr_set(x_517, 1, x_511); -return x_517; +lean::cnstr_set(x_93, 0, x_92); +lean::cnstr_set(x_93, 1, x_87); +return x_93; } else { -obj* x_520; obj* x_522; obj* x_524; obj* x_525; obj* x_527; obj* x_528; obj* x_530; obj* x_531; obj* x_534; obj* x_535; obj* x_536; obj* x_537; obj* x_538; obj* x_539; obj* x_540; obj* x_541; +obj* x_96; obj* x_98; obj* x_100; obj* x_101; obj* x_103; obj* x_104; obj* x_106; obj* x_107; obj* x_110; obj* x_111; obj* x_112; obj* x_113; obj* x_114; obj* x_115; obj* x_116; obj* x_117; lean::dec(x_9); lean::dec(x_3); -x_520 = lean::cnstr_get(x_11, 1); -x_522 = lean::cnstr_get(x_11, 2); +x_96 = lean::cnstr_get(x_11, 1); +x_98 = lean::cnstr_get(x_11, 2); if (lean::is_exclusive(x_11)) { lean::cnstr_release(x_11, 0); - x_524 = x_11; + x_100 = x_11; } else { - lean::inc(x_520); - lean::inc(x_522); + lean::inc(x_96); + lean::inc(x_98); lean::dec(x_11); - x_524 = lean::box(0); + x_100 = lean::box(0); } -x_525 = lean::cnstr_get(x_489, 1); -if (lean::is_exclusive(x_489)) { - lean::cnstr_release(x_489, 0); - x_527 = x_489; +x_101 = lean::cnstr_get(x_65, 1); +if (lean::is_exclusive(x_65)) { + lean::cnstr_release(x_65, 0); + x_103 = x_65; } else { - lean::inc(x_525); - lean::dec(x_489); - x_527 = lean::box(0); + lean::inc(x_101); + lean::dec(x_65); + x_103 = lean::box(0); } -x_528 = lean::cnstr_get(x_491, 0); -if (lean::is_exclusive(x_491)) { - lean::cnstr_release(x_491, 1); - x_530 = x_491; +x_104 = lean::cnstr_get(x_67, 0); +if (lean::is_exclusive(x_67)) { + lean::cnstr_release(x_67, 1); + x_106 = x_67; } else { - lean::inc(x_528); - lean::dec(x_491); - x_530 = lean::box(0); + lean::inc(x_104); + lean::dec(x_67); + x_106 = lean::box(0); } -x_531 = lean::cnstr_get(x_493, 0); -lean::inc(x_531); -lean::dec(x_493); -if (lean::is_scalar(x_530)) { - x_534 = lean::alloc_cnstr(0, 2, 0); +x_107 = lean::cnstr_get(x_69, 0); +lean::inc(x_107); +lean::dec(x_69); +if (lean::is_scalar(x_106)) { + x_110 = lean::alloc_cnstr(0, 2, 0); } else { - x_534 = x_530; + x_110 = x_106; } -lean::cnstr_set(x_534, 0, x_528); -lean::cnstr_set(x_534, 1, x_531); -if (lean::is_scalar(x_527)) { - x_535 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_110, 0, x_104); +lean::cnstr_set(x_110, 1, x_107); +if (lean::is_scalar(x_103)) { + x_111 = lean::alloc_cnstr(0, 2, 0); } else { - x_535 = x_527; + x_111 = x_103; } -lean::cnstr_set(x_535, 0, x_534); -lean::cnstr_set(x_535, 1, x_525); -x_536 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_524)) { - x_537 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_111, 0, x_110); +lean::cnstr_set(x_111, 1, x_101); +x_112 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_100)) { + x_113 = lean::alloc_cnstr(0, 3, 0); } else { - x_537 = x_524; + x_113 = x_100; } -lean::cnstr_set(x_537, 0, x_535); -lean::cnstr_set(x_537, 1, x_520); -lean::cnstr_set(x_537, 2, x_536); -x_538 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_522, x_537); -x_539 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_540 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_539, x_538); -x_541 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_541, 0, x_540); -lean::cnstr_set(x_541, 1, x_12); -return x_541; +lean::cnstr_set(x_113, 0, x_111); +lean::cnstr_set(x_113, 1, x_96); +lean::cnstr_set(x_113, 2, x_112); +x_114 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_98, x_113); +x_115 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_116 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_115, x_114); +x_117 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_117, 0, x_116); +lean::cnstr_set(x_117, 1, x_12); +return x_117; } } else { -obj* x_544; uint8 x_546; obj* x_547; obj* x_548; obj* x_549; obj* x_550; obj* x_551; obj* x_552; +obj* x_120; uint8 x_122; obj* x_123; obj* x_124; obj* x_125; obj* x_126; obj* x_127; obj* x_128; lean::dec(x_9); lean::dec(x_3); -x_544 = lean::cnstr_get(x_11, 0); -x_546 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); +x_120 = lean::cnstr_get(x_11, 0); +x_122 = lean::cnstr_get_scalar(x_11, sizeof(void*)*1); if (lean::is_exclusive(x_11)) { - x_547 = x_11; + x_123 = x_11; } else { - lean::inc(x_544); + lean::inc(x_120); lean::dec(x_11); - x_547 = lean::box(0); + x_123 = lean::box(0); } -if (lean::is_scalar(x_547)) { - x_548 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_123)) { + x_124 = lean::alloc_cnstr(1, 1, 1); } else { - x_548 = x_547; + x_124 = x_123; } -lean::cnstr_set(x_548, 0, x_544); -lean::cnstr_set_scalar(x_548, sizeof(void*)*1, x_546); -x_549 = x_548; -x_550 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; -x_551 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_550, x_549); -x_552 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_552, 0, x_551); -lean::cnstr_set(x_552, 1, x_12); -return x_552; +lean::cnstr_set(x_124, 0, x_120); +lean::cnstr_set_scalar(x_124, sizeof(void*)*1, x_122); +x_125 = x_124; +x_126 = l_Lean_Parser_MonadParsec_eoi___at_Lean_Parser_Module_eoi_Parser___spec__1___closed__1; +x_127 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_126, x_125); +x_128 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_128, 0, x_127); +lean::cnstr_set(x_128, 1, x_12); +return x_128; } } lbl_16: @@ -4904,223 +3794,841 @@ goto lbl_13; } else { -obj* x_554; uint8 x_556; obj* x_558; obj* x_562; obj* x_563; -x_554 = lean::cnstr_get(x_14, 0); -lean::inc(x_554); -x_556 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); +obj* x_130; uint8 x_132; obj* x_134; obj* x_138; obj* x_139; +x_130 = lean::cnstr_get(x_14, 0); +lean::inc(x_130); +x_132 = lean::cnstr_get_scalar(x_14, sizeof(void*)*1); lean::dec(x_14); -x_558 = lean::cnstr_get(x_554, 0); -lean::inc(x_558); +x_134 = lean::cnstr_get(x_130, 0); +lean::inc(x_134); lean::inc(x_3); -lean::inc(x_554); -x_562 = l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__1(x_554, x_2, x_3, x_558, x_15); -x_563 = lean::cnstr_get(x_562, 0); -lean::inc(x_563); -if (lean::obj_tag(x_563) == 0) +lean::inc(x_130); +x_138 = l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__1(x_130, x_2, x_3, x_134, x_15); +x_139 = lean::cnstr_get(x_138, 0); +lean::inc(x_139); +if (lean::obj_tag(x_139) == 0) { -obj* x_565; obj* x_567; obj* x_569; obj* x_570; obj* x_572; obj* x_574; obj* x_575; obj* x_577; obj* x_578; obj* x_581; obj* x_583; uint8 x_584; obj* x_585; obj* x_586; obj* x_587; obj* x_588; obj* x_589; obj* x_590; -x_565 = lean::cnstr_get(x_563, 0); -lean::inc(x_565); -x_567 = lean::cnstr_get(x_562, 1); -if (lean::is_exclusive(x_562)) { - lean::cnstr_release(x_562, 0); - x_569 = x_562; +obj* x_141; obj* x_143; obj* x_145; obj* x_146; obj* x_148; obj* x_150; obj* x_151; obj* x_153; obj* x_154; obj* x_157; obj* x_159; uint8 x_160; obj* x_161; obj* x_162; obj* x_163; obj* x_164; obj* x_165; obj* x_166; +x_141 = lean::cnstr_get(x_139, 0); +lean::inc(x_141); +x_143 = lean::cnstr_get(x_138, 1); +if (lean::is_exclusive(x_138)) { + lean::cnstr_release(x_138, 0); + x_145 = x_138; } else { - lean::inc(x_567); - lean::dec(x_562); - x_569 = lean::box(0); + lean::inc(x_143); + lean::dec(x_138); + x_145 = lean::box(0); } -x_570 = lean::cnstr_get(x_563, 1); -x_572 = lean::cnstr_get(x_563, 2); -if (lean::is_exclusive(x_563)) { - lean::cnstr_release(x_563, 0); - x_574 = x_563; +x_146 = lean::cnstr_get(x_139, 1); +x_148 = lean::cnstr_get(x_139, 2); +if (lean::is_exclusive(x_139)) { + lean::cnstr_release(x_139, 0); + x_150 = x_139; } else { - lean::inc(x_570); - lean::inc(x_572); - lean::dec(x_563); - x_574 = lean::box(0); + lean::inc(x_146); + lean::inc(x_148); + lean::dec(x_139); + x_150 = lean::box(0); } -x_575 = lean::cnstr_get(x_565, 1); -if (lean::is_exclusive(x_565)) { - lean::cnstr_release(x_565, 0); - x_577 = x_565; +x_151 = lean::cnstr_get(x_141, 1); +if (lean::is_exclusive(x_141)) { + lean::cnstr_release(x_141, 0); + x_153 = x_141; } else { - lean::inc(x_575); - lean::dec(x_565); - x_577 = lean::box(0); + lean::inc(x_151); + lean::dec(x_141); + x_153 = lean::box(0); } -x_578 = lean::cnstr_get(x_554, 3); -lean::inc(x_578); -lean::dec(x_554); -x_581 = l_Option_get___main___at_Lean_Parser_run___spec__2(x_578); -lean::dec(x_578); -x_583 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_583, 0, x_581); -x_584 = 1; -x_585 = lean::box(x_584); -if (lean::is_scalar(x_577)) { - x_586 = lean::alloc_cnstr(0, 2, 0); +x_154 = lean::cnstr_get(x_130, 3); +lean::inc(x_154); +lean::dec(x_130); +x_157 = l_Option_get___main___at_Lean_Parser_run___spec__2(x_154); +lean::dec(x_154); +x_159 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_159, 0, x_157); +x_160 = 1; +x_161 = lean::box(x_160); +if (lean::is_scalar(x_153)) { + x_162 = lean::alloc_cnstr(0, 2, 0); } else { - x_586 = x_577; + x_162 = x_153; } -lean::cnstr_set(x_586, 0, x_585); -lean::cnstr_set(x_586, 1, x_583); -if (lean::is_scalar(x_569)) { - x_587 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_162, 0, x_161); +lean::cnstr_set(x_162, 1, x_159); +if (lean::is_scalar(x_145)) { + x_163 = lean::alloc_cnstr(0, 2, 0); } else { - x_587 = x_569; + x_163 = x_145; } -lean::cnstr_set(x_587, 0, x_586); -lean::cnstr_set(x_587, 1, x_575); -x_588 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; -if (lean::is_scalar(x_574)) { - x_589 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_163, 0, x_162); +lean::cnstr_set(x_163, 1, x_151); +x_164 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_150)) { + x_165 = lean::alloc_cnstr(0, 3, 0); } else { - x_589 = x_574; + x_165 = x_150; } -lean::cnstr_set(x_589, 0, x_587); -lean::cnstr_set(x_589, 1, x_570); -lean::cnstr_set(x_589, 2, x_588); -x_590 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_572, x_589); -if (lean::obj_tag(x_590) == 0) +lean::cnstr_set(x_165, 0, x_163); +lean::cnstr_set(x_165, 1, x_146); +lean::cnstr_set(x_165, 2, x_164); +x_166 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_148, x_165); +if (lean::obj_tag(x_166) == 0) { -x_11 = x_590; -x_12 = x_567; +x_11 = x_166; +x_12 = x_143; goto lbl_13; } else { -uint8 x_591; -x_591 = lean::cnstr_get_scalar(x_590, sizeof(void*)*1); -if (x_556 == 0) +uint8 x_167; +x_167 = lean::cnstr_get_scalar(x_166, sizeof(void*)*1); +if (x_132 == 0) { -obj* x_592; obj* x_594; obj* x_595; obj* x_596; -x_592 = lean::cnstr_get(x_590, 0); -if (lean::is_exclusive(x_590)) { - x_594 = x_590; +obj* x_168; obj* x_170; obj* x_171; obj* x_172; +x_168 = lean::cnstr_get(x_166, 0); +if (lean::is_exclusive(x_166)) { + x_170 = x_166; } else { - lean::inc(x_592); - lean::dec(x_590); - x_594 = lean::box(0); + lean::inc(x_168); + lean::dec(x_166); + x_170 = lean::box(0); } -if (lean::is_scalar(x_594)) { - x_595 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_170)) { + x_171 = lean::alloc_cnstr(1, 1, 1); } else { - x_595 = x_594; + x_171 = x_170; } -lean::cnstr_set(x_595, 0, x_592); -lean::cnstr_set_scalar(x_595, sizeof(void*)*1, x_591); -x_596 = x_595; -x_11 = x_596; -x_12 = x_567; +lean::cnstr_set(x_171, 0, x_168); +lean::cnstr_set_scalar(x_171, sizeof(void*)*1, x_167); +x_172 = x_171; +x_11 = x_172; +x_12 = x_143; goto lbl_13; } else { -obj* x_597; obj* x_599; obj* x_600; obj* x_601; -x_597 = lean::cnstr_get(x_590, 0); -if (lean::is_exclusive(x_590)) { - x_599 = x_590; +obj* x_173; obj* x_175; obj* x_176; obj* x_177; +x_173 = lean::cnstr_get(x_166, 0); +if (lean::is_exclusive(x_166)) { + x_175 = x_166; } else { - lean::inc(x_597); - lean::dec(x_590); - x_599 = lean::box(0); + lean::inc(x_173); + lean::dec(x_166); + x_175 = lean::box(0); } -if (lean::is_scalar(x_599)) { - x_600 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_175)) { + x_176 = lean::alloc_cnstr(1, 1, 1); } else { - x_600 = x_599; + x_176 = x_175; } -lean::cnstr_set(x_600, 0, x_597); -lean::cnstr_set_scalar(x_600, sizeof(void*)*1, x_556); -x_601 = x_600; -x_11 = x_601; -x_12 = x_567; +lean::cnstr_set(x_176, 0, x_173); +lean::cnstr_set_scalar(x_176, sizeof(void*)*1, x_132); +x_177 = x_176; +x_11 = x_177; +x_12 = x_143; goto lbl_13; } } } else { -uint8 x_603; -lean::dec(x_554); -x_603 = lean::cnstr_get_scalar(x_563, sizeof(void*)*1); -if (x_556 == 0) +uint8 x_179; +lean::dec(x_130); +x_179 = lean::cnstr_get_scalar(x_139, sizeof(void*)*1); +if (x_132 == 0) { -obj* x_604; obj* x_607; obj* x_609; obj* x_610; obj* x_611; -x_604 = lean::cnstr_get(x_562, 1); -lean::inc(x_604); -lean::dec(x_562); -x_607 = lean::cnstr_get(x_563, 0); -if (lean::is_exclusive(x_563)) { - x_609 = x_563; +obj* x_180; obj* x_183; obj* x_185; obj* x_186; obj* x_187; +x_180 = lean::cnstr_get(x_138, 1); +lean::inc(x_180); +lean::dec(x_138); +x_183 = lean::cnstr_get(x_139, 0); +if (lean::is_exclusive(x_139)) { + x_185 = x_139; } else { - lean::inc(x_607); - lean::dec(x_563); - x_609 = lean::box(0); + lean::inc(x_183); + lean::dec(x_139); + x_185 = lean::box(0); } -if (lean::is_scalar(x_609)) { - x_610 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_185)) { + x_186 = lean::alloc_cnstr(1, 1, 1); } else { - x_610 = x_609; + x_186 = x_185; } -lean::cnstr_set(x_610, 0, x_607); -lean::cnstr_set_scalar(x_610, sizeof(void*)*1, x_603); -x_611 = x_610; -x_11 = x_611; -x_12 = x_604; +lean::cnstr_set(x_186, 0, x_183); +lean::cnstr_set_scalar(x_186, sizeof(void*)*1, x_179); +x_187 = x_186; +x_11 = x_187; +x_12 = x_180; goto lbl_13; } else { -obj* x_612; obj* x_615; obj* x_617; obj* x_618; obj* x_619; -x_612 = lean::cnstr_get(x_562, 1); -lean::inc(x_612); -lean::dec(x_562); -x_615 = lean::cnstr_get(x_563, 0); -if (lean::is_exclusive(x_563)) { - x_617 = x_563; +obj* x_188; obj* x_191; obj* x_193; obj* x_194; obj* x_195; +x_188 = lean::cnstr_get(x_138, 1); +lean::inc(x_188); +lean::dec(x_138); +x_191 = lean::cnstr_get(x_139, 0); +if (lean::is_exclusive(x_139)) { + x_193 = x_139; } else { - lean::inc(x_615); - lean::dec(x_563); - x_617 = lean::box(0); + lean::inc(x_191); + lean::dec(x_139); + x_193 = lean::box(0); } -if (lean::is_scalar(x_617)) { - x_618 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_193)) { + x_194 = lean::alloc_cnstr(1, 1, 1); } else { - x_618 = x_617; + x_194 = x_193; } -lean::cnstr_set(x_618, 0, x_615); -lean::cnstr_set_scalar(x_618, sizeof(void*)*1, x_556); -x_619 = x_618; -x_11 = x_619; -x_12 = x_612; +lean::cnstr_set(x_194, 0, x_191); +lean::cnstr_set_scalar(x_194, sizeof(void*)*1, x_132); +x_195 = x_194; +x_11 = x_195; +x_12 = x_188; goto lbl_13; } } } } +lbl_18: +{ +obj* x_196; obj* x_197; obj* x_199; obj* x_201; obj* x_203; obj* x_205; obj* x_206; +x_199 = lean::cnstr_get(x_3, 1); +lean::inc(x_199); +x_201 = lean::cnstr_get(x_3, 0); +lean::inc(x_201); +x_203 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__2; +lean::inc(x_4); +x_205 = l_Lean_Parser_commandParser_run(x_199, x_203, x_201, x_4, x_5); +x_206 = lean::cnstr_get(x_205, 0); +lean::inc(x_206); +if (lean::obj_tag(x_206) == 0) +{ +obj* x_208; obj* x_210; obj* x_211; obj* x_213; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_221; obj* x_222; +x_208 = lean::cnstr_get(x_205, 1); +if (lean::is_exclusive(x_205)) { + lean::cnstr_release(x_205, 0); + x_210 = x_205; +} else { + lean::inc(x_208); + lean::dec(x_205); + x_210 = lean::box(0); +} +x_211 = lean::cnstr_get(x_206, 0); +x_213 = lean::cnstr_get(x_206, 1); +x_215 = lean::cnstr_get(x_206, 2); +if (lean::is_exclusive(x_206)) { + x_217 = x_206; +} else { + lean::inc(x_211); + lean::inc(x_213); + lean::inc(x_215); + lean::dec(x_206); + x_217 = lean::box(0); +} +lean::inc(x_2); +if (lean::is_scalar(x_210)) { + x_219 = lean::alloc_cnstr(0, 2, 0); +} else { + x_219 = x_210; +} +lean::cnstr_set(x_219, 0, x_211); +lean::cnstr_set(x_219, 1, x_2); +x_220 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_217)) { + x_221 = lean::alloc_cnstr(0, 3, 0); +} else { + x_221 = x_217; +} +lean::cnstr_set(x_221, 0, x_219); +lean::cnstr_set(x_221, 1, x_213); +lean::cnstr_set(x_221, 2, x_220); +x_222 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_215, x_221); +if (lean::obj_tag(x_222) == 0) +{ +obj* x_223; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; uint8 x_236; obj* x_237; obj* x_238; obj* x_239; obj* x_240; obj* x_241; obj* x_242; obj* x_243; +x_223 = lean::cnstr_get(x_222, 0); +x_225 = lean::cnstr_get(x_222, 1); +x_227 = lean::cnstr_get(x_222, 2); +if (lean::is_exclusive(x_222)) { + x_229 = x_222; +} else { + lean::inc(x_223); + lean::inc(x_225); + lean::inc(x_227); + lean::dec(x_222); + x_229 = lean::box(0); +} +x_230 = lean::cnstr_get(x_223, 0); +x_232 = lean::cnstr_get(x_223, 1); +if (lean::is_exclusive(x_223)) { + x_234 = x_223; +} else { + lean::inc(x_230); + lean::inc(x_232); + lean::dec(x_223); + x_234 = lean::box(0); +} +x_235 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_235, 0, x_230); +x_236 = 0; +x_237 = lean::box(x_236); +if (lean::is_scalar(x_234)) { + x_238 = lean::alloc_cnstr(0, 2, 0); +} else { + x_238 = x_234; +} +lean::cnstr_set(x_238, 0, x_237); +lean::cnstr_set(x_238, 1, x_235); +x_239 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_239, 0, x_238); +lean::cnstr_set(x_239, 1, x_232); +if (lean::is_scalar(x_229)) { + x_240 = lean::alloc_cnstr(0, 3, 0); +} else { + x_240 = x_229; +} +lean::cnstr_set(x_240, 0, x_239); +lean::cnstr_set(x_240, 1, x_225); +lean::cnstr_set(x_240, 2, x_220); +x_241 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_227, x_240); +x_242 = l_Lean_Parser_finishCommentBlock___closed__2; +x_243 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_242, x_241); +x_196 = x_243; +x_197 = x_208; +goto lbl_198; +} +else +{ +obj* x_244; uint8 x_246; obj* x_247; obj* x_248; obj* x_249; obj* x_250; obj* x_251; +x_244 = lean::cnstr_get(x_222, 0); +x_246 = lean::cnstr_get_scalar(x_222, sizeof(void*)*1); +if (lean::is_exclusive(x_222)) { + x_247 = x_222; +} else { + lean::inc(x_244); + lean::dec(x_222); + x_247 = lean::box(0); +} +if (lean::is_scalar(x_247)) { + x_248 = lean::alloc_cnstr(1, 1, 1); +} else { + x_248 = x_247; +} +lean::cnstr_set(x_248, 0, x_244); +lean::cnstr_set_scalar(x_248, sizeof(void*)*1, x_246); +x_249 = x_248; +x_250 = l_Lean_Parser_finishCommentBlock___closed__2; +x_251 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_250, x_249); +x_196 = x_251; +x_197 = x_208; +goto lbl_198; +} +} +else +{ +obj* x_252; obj* x_255; uint8 x_257; obj* x_258; obj* x_259; obj* x_260; obj* x_261; obj* x_262; +x_252 = lean::cnstr_get(x_205, 1); +lean::inc(x_252); +lean::dec(x_205); +x_255 = lean::cnstr_get(x_206, 0); +x_257 = lean::cnstr_get_scalar(x_206, sizeof(void*)*1); +if (lean::is_exclusive(x_206)) { + x_258 = x_206; +} else { + lean::inc(x_255); + lean::dec(x_206); + x_258 = lean::box(0); +} +if (lean::is_scalar(x_258)) { + x_259 = lean::alloc_cnstr(1, 1, 1); +} else { + x_259 = x_258; +} +lean::cnstr_set(x_259, 0, x_255); +lean::cnstr_set_scalar(x_259, sizeof(void*)*1, x_257); +x_260 = x_259; +x_261 = l_Lean_Parser_finishCommentBlock___closed__2; +x_262 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_261, x_260); +x_196 = x_262; +x_197 = x_252; +goto lbl_198; +} +lbl_198: +{ +if (lean::obj_tag(x_196) == 0) +{ +lean::dec(x_4); +x_14 = x_196; +x_15 = x_197; +goto lbl_16; +} +else +{ +obj* x_264; uint8 x_266; obj* x_267; obj* x_268; +x_264 = lean::cnstr_get(x_196, 0); +lean::inc(x_264); +x_266 = lean::cnstr_get_scalar(x_196, sizeof(void*)*1); +if (x_266 == 0) +{ +lean::dec(x_196); +if (x_17 == 0) +{ +obj* x_271; obj* x_273; obj* x_274; obj* x_275; +x_271 = lean::box(0); +lean::inc(x_2); +x_273 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_273, 0, x_271); +lean::cnstr_set(x_273, 1, x_2); +x_274 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +x_275 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_275, 0, x_273); +lean::cnstr_set(x_275, 1, x_4); +lean::cnstr_set(x_275, 2, x_274); +x_267 = x_275; +x_268 = x_197; +goto lbl_269; +} +else +{ +obj* x_276; obj* x_277; obj* x_278; obj* x_280; obj* x_283; obj* x_284; obj* x_286; obj* x_289; obj* x_290; +x_276 = l_String_splitAux___main___closed__1; +x_277 = l_Lean_Parser_command_Parser___rarg___closed__1; +x_278 = l_Lean_Parser_ParsecT_MonadFail___rarg___closed__1; +lean::inc(x_4); +x_280 = lean::alloc_cnstr(0, 4, 0); +lean::cnstr_set(x_280, 0, x_4); +lean::cnstr_set(x_280, 1, x_276); +lean::cnstr_set(x_280, 2, x_277); +lean::cnstr_set(x_280, 3, x_278); +lean::inc(x_3); +lean::inc(x_2); +x_283 = l_Lean_Parser_logMessage___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(x_280, x_2, x_3, x_4, x_197); +x_284 = lean::cnstr_get(x_283, 0); +lean::inc(x_284); +x_286 = lean::cnstr_get(x_283, 1); +lean::inc(x_286); +lean::dec(x_283); +x_289 = l_Lean_Parser_finishCommentBlock___closed__2; +x_290 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_289, x_284); +x_267 = x_290; +x_268 = x_286; +goto lbl_269; +} +} +else +{ +lean::dec(x_264); +lean::dec(x_4); +x_14 = x_196; +x_15 = x_197; +goto lbl_16; +} +lbl_269: +{ +if (lean::obj_tag(x_267) == 0) +{ +obj* x_293; obj* x_295; obj* x_297; obj* x_300; obj* x_301; obj* x_303; obj* x_306; obj* x_307; obj* x_309; obj* x_311; obj* x_315; obj* x_316; +x_293 = lean::cnstr_get(x_267, 0); +lean::inc(x_293); +x_295 = lean::cnstr_get(x_267, 1); +lean::inc(x_295); +x_297 = lean::cnstr_get(x_267, 2); +lean::inc(x_297); +lean::dec(x_267); +x_303 = lean::cnstr_get(x_293, 1); +lean::inc(x_303); +lean::dec(x_293); +x_309 = lean::cnstr_get(x_3, 0); +lean::inc(x_309); +x_311 = lean::cnstr_get(x_309, 0); +lean::inc(x_311); +lean::dec(x_309); +lean::inc(x_295); +x_315 = l_Lean_Parser_token(x_311, x_295, x_268); +x_316 = lean::cnstr_get(x_315, 0); +lean::inc(x_316); +if (lean::obj_tag(x_316) == 0) +{ +obj* x_318; obj* x_320; obj* x_321; obj* x_323; obj* x_325; obj* x_327; obj* x_329; obj* x_330; obj* x_331; obj* x_332; +x_318 = lean::cnstr_get(x_315, 1); +if (lean::is_exclusive(x_315)) { + lean::cnstr_release(x_315, 0); + x_320 = x_315; +} else { + lean::inc(x_318); + lean::dec(x_315); + x_320 = lean::box(0); +} +x_321 = lean::cnstr_get(x_316, 0); +x_323 = lean::cnstr_get(x_316, 1); +x_325 = lean::cnstr_get(x_316, 2); +if (lean::is_exclusive(x_316)) { + x_327 = x_316; +} else { + lean::inc(x_321); + lean::inc(x_323); + lean::inc(x_325); + lean::dec(x_316); + x_327 = lean::box(0); +} +lean::inc(x_303); +if (lean::is_scalar(x_320)) { + x_329 = lean::alloc_cnstr(0, 2, 0); +} else { + x_329 = x_320; +} +lean::cnstr_set(x_329, 0, x_321); +lean::cnstr_set(x_329, 1, x_303); +x_330 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_327)) { + x_331 = lean::alloc_cnstr(0, 3, 0); +} else { + x_331 = x_327; +} +lean::cnstr_set(x_331, 0, x_329); +lean::cnstr_set(x_331, 1, x_323); +lean::cnstr_set(x_331, 2, x_330); +x_332 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_325, x_331); +if (lean::obj_tag(x_332) == 0) +{ +obj* x_333; obj* x_335; obj* x_337; obj* x_339; obj* x_340; obj* x_342; obj* x_343; obj* x_344; obj* x_345; obj* x_346; obj* x_347; +x_333 = lean::cnstr_get(x_332, 0); +x_335 = lean::cnstr_get(x_332, 1); +x_337 = lean::cnstr_get(x_332, 2); +if (lean::is_exclusive(x_332)) { + x_339 = x_332; +} else { + lean::inc(x_333); + lean::inc(x_335); + lean::inc(x_337); + lean::dec(x_332); + x_339 = lean::box(0); +} +x_340 = lean::cnstr_get(x_333, 1); +if (lean::is_exclusive(x_333)) { + lean::cnstr_release(x_333, 0); + x_342 = x_333; +} else { + lean::inc(x_340); + lean::dec(x_333); + x_342 = lean::box(0); +} +x_343 = lean::box(0); +if (lean::is_scalar(x_342)) { + x_344 = lean::alloc_cnstr(0, 2, 0); +} else { + x_344 = x_342; +} +lean::cnstr_set(x_344, 0, x_343); +lean::cnstr_set(x_344, 1, x_340); +if (lean::is_scalar(x_339)) { + x_345 = lean::alloc_cnstr(0, 3, 0); +} else { + x_345 = x_339; +} +lean::cnstr_set(x_345, 0, x_344); +lean::cnstr_set(x_345, 1, x_335); +lean::cnstr_set(x_345, 2, x_330); +x_346 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_337, x_345); +x_347 = l_Lean_Parser_ParsecT_tryMkRes___rarg(x_346); +x_306 = x_347; +x_307 = x_318; +goto lbl_308; +} +else +{ +obj* x_348; obj* x_350; uint8 x_351; obj* x_352; obj* x_353; +x_348 = lean::cnstr_get(x_332, 0); +if (lean::is_exclusive(x_332)) { + x_350 = x_332; +} else { + lean::inc(x_348); + lean::dec(x_332); + x_350 = lean::box(0); +} +x_351 = 0; +if (lean::is_scalar(x_350)) { + x_352 = lean::alloc_cnstr(1, 1, 1); +} else { + x_352 = x_350; +} +lean::cnstr_set(x_352, 0, x_348); +lean::cnstr_set_scalar(x_352, sizeof(void*)*1, x_351); +x_353 = x_352; +x_306 = x_353; +x_307 = x_318; +goto lbl_308; +} +} +else +{ +obj* x_354; obj* x_357; obj* x_359; uint8 x_360; obj* x_361; obj* x_362; +x_354 = lean::cnstr_get(x_315, 1); +lean::inc(x_354); +lean::dec(x_315); +x_357 = lean::cnstr_get(x_316, 0); +if (lean::is_exclusive(x_316)) { + x_359 = x_316; +} else { + lean::inc(x_357); + lean::dec(x_316); + x_359 = lean::box(0); +} +x_360 = 0; +if (lean::is_scalar(x_359)) { + x_361 = lean::alloc_cnstr(1, 1, 1); +} else { + x_361 = x_359; +} +lean::cnstr_set(x_361, 0, x_357); +lean::cnstr_set_scalar(x_361, sizeof(void*)*1, x_360); +x_362 = x_361; +x_306 = x_362; +x_307 = x_354; +goto lbl_308; +} +lbl_302: +{ +if (lean::obj_tag(x_300) == 0) +{ +obj* x_363; obj* x_365; obj* x_367; obj* x_369; obj* x_370; obj* x_372; obj* x_373; obj* x_374; obj* x_375; obj* x_376; obj* x_377; obj* x_378; obj* x_379; +x_363 = lean::cnstr_get(x_300, 0); +x_365 = lean::cnstr_get(x_300, 1); +x_367 = lean::cnstr_get(x_300, 2); +if (lean::is_exclusive(x_300)) { + x_369 = x_300; +} else { + lean::inc(x_363); + lean::inc(x_365); + lean::inc(x_367); + lean::dec(x_300); + x_369 = lean::box(0); +} +x_370 = lean::cnstr_get(x_363, 1); +if (lean::is_exclusive(x_363)) { + lean::cnstr_release(x_363, 0); + x_372 = x_363; +} else { + lean::inc(x_370); + lean::dec(x_363); + x_372 = lean::box(0); +} +x_373 = l___private_init_lean_parser_module_1__commandWrecAux___main___closed__1; +if (lean::is_scalar(x_372)) { + x_374 = lean::alloc_cnstr(0, 2, 0); +} else { + x_374 = x_372; +} +lean::cnstr_set(x_374, 0, x_373); +lean::cnstr_set(x_374, 1, x_370); +x_375 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_369)) { + x_376 = lean::alloc_cnstr(0, 3, 0); +} else { + x_376 = x_369; +} +lean::cnstr_set(x_376, 0, x_374); +lean::cnstr_set(x_376, 1, x_365); +lean::cnstr_set(x_376, 2, x_375); +x_377 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_367, x_376); +x_378 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_297, x_377); +x_379 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_264, x_378); +x_14 = x_379; +x_15 = x_301; +goto lbl_16; +} +else +{ +obj* x_380; uint8 x_382; obj* x_383; obj* x_384; obj* x_385; obj* x_386; obj* x_387; +x_380 = lean::cnstr_get(x_300, 0); +x_382 = lean::cnstr_get_scalar(x_300, sizeof(void*)*1); +if (lean::is_exclusive(x_300)) { + x_383 = x_300; +} else { + lean::inc(x_380); + lean::dec(x_300); + x_383 = lean::box(0); +} +if (lean::is_scalar(x_383)) { + x_384 = lean::alloc_cnstr(1, 1, 1); +} else { + x_384 = x_383; +} +lean::cnstr_set(x_384, 0, x_380); +lean::cnstr_set_scalar(x_384, sizeof(void*)*1, x_382); +x_385 = x_384; +x_386 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_297, x_385); +x_387 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_264, x_386); +x_14 = x_387; +x_15 = x_301; +goto lbl_16; +} +} +lbl_308: +{ +if (lean::obj_tag(x_306) == 0) +{ +lean::dec(x_303); +lean::dec(x_295); +x_300 = x_306; +x_301 = x_307; +goto lbl_302; +} +else +{ +uint8 x_390; +x_390 = lean::cnstr_get_scalar(x_306, sizeof(void*)*1); +if (x_390 == 0) +{ +obj* x_391; obj* x_394; obj* x_395; +x_391 = lean::cnstr_get(x_306, 0); +lean::inc(x_391); +lean::dec(x_306); +x_394 = l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(x_303, x_3, x_295, x_307); +x_395 = lean::cnstr_get(x_394, 0); +lean::inc(x_395); +if (lean::obj_tag(x_395) == 0) +{ +obj* x_397; obj* x_399; obj* x_402; obj* x_404; obj* x_406; obj* x_407; obj* x_409; obj* x_410; obj* x_411; obj* x_412; obj* x_413; obj* x_414; obj* x_415; +x_397 = lean::cnstr_get(x_395, 0); +lean::inc(x_397); +x_399 = lean::cnstr_get(x_394, 1); +lean::inc(x_399); +lean::dec(x_394); +x_402 = lean::cnstr_get(x_395, 1); +x_404 = lean::cnstr_get(x_395, 2); +if (lean::is_exclusive(x_395)) { + lean::cnstr_release(x_395, 0); + x_406 = x_395; +} else { + lean::inc(x_402); + lean::inc(x_404); + lean::dec(x_395); + x_406 = lean::box(0); +} +x_407 = lean::cnstr_get(x_397, 1); +if (lean::is_exclusive(x_397)) { + lean::cnstr_release(x_397, 0); + x_409 = x_397; +} else { + lean::inc(x_407); + lean::dec(x_397); + x_409 = lean::box(0); +} +x_410 = lean::box(0); +if (lean::is_scalar(x_409)) { + x_411 = lean::alloc_cnstr(0, 2, 0); +} else { + x_411 = x_409; +} +lean::cnstr_set(x_411, 0, x_410); +lean::cnstr_set(x_411, 1, x_407); +x_412 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +if (lean::is_scalar(x_406)) { + x_413 = lean::alloc_cnstr(0, 3, 0); +} else { + x_413 = x_406; +} +lean::cnstr_set(x_413, 0, x_411); +lean::cnstr_set(x_413, 1, x_402); +lean::cnstr_set(x_413, 2, x_412); +x_414 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_404, x_413); +x_415 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_391, x_414); +x_300 = x_415; +x_301 = x_399; +goto lbl_302; +} +else +{ +obj* x_416; obj* x_419; uint8 x_421; obj* x_422; obj* x_423; obj* x_424; obj* x_425; +x_416 = lean::cnstr_get(x_394, 1); +lean::inc(x_416); +lean::dec(x_394); +x_419 = lean::cnstr_get(x_395, 0); +x_421 = lean::cnstr_get_scalar(x_395, sizeof(void*)*1); +if (lean::is_exclusive(x_395)) { + x_422 = x_395; +} else { + lean::inc(x_419); + lean::dec(x_395); + x_422 = lean::box(0); +} +if (lean::is_scalar(x_422)) { + x_423 = lean::alloc_cnstr(1, 1, 1); +} else { + x_423 = x_422; +} +lean::cnstr_set(x_423, 0, x_419); +lean::cnstr_set_scalar(x_423, sizeof(void*)*1, x_421); +x_424 = x_423; +x_425 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_391, x_424); +x_300 = x_425; +x_301 = x_416; +goto lbl_302; +} +} +else +{ +lean::dec(x_303); +lean::dec(x_295); +x_300 = x_306; +x_301 = x_307; +goto lbl_302; +} +} +} +} +else +{ +obj* x_428; uint8 x_430; obj* x_431; obj* x_432; obj* x_433; obj* x_434; +x_428 = lean::cnstr_get(x_267, 0); +x_430 = lean::cnstr_get_scalar(x_267, sizeof(void*)*1); +if (lean::is_exclusive(x_267)) { + x_431 = x_267; +} else { + lean::inc(x_428); + lean::dec(x_267); + x_431 = lean::box(0); +} +if (lean::is_scalar(x_431)) { + x_432 = lean::alloc_cnstr(1, 1, 1); +} else { + x_432 = x_431; +} +lean::cnstr_set(x_432, 0, x_428); +lean::cnstr_set_scalar(x_432, sizeof(void*)*1, x_430); +x_433 = x_432; +x_434 = l_Lean_Parser_ParsecT_orelseMkRes___rarg(x_264, x_433); +x_14 = x_434; +x_15 = x_268; +goto lbl_16; +} +} +} +} +} } else { -obj* x_620; obj* x_621; obj* x_622; obj* x_623; -x_620 = lean::box(0); -x_621 = l___private_init_lean_parser_combinators_1__many1Aux___main___rarg___closed__1; -x_622 = l_mjoin___rarg___closed__1; -x_623 = l_Lean_Parser_MonadParsec_error___at_Lean_Parser_Module_eoi_Parser___spec__2___rarg(x_621, x_622, x_620, x_620, x_2, x_3, x_4, x_5); +obj* x_435; obj* x_436; obj* x_437; obj* x_438; +x_435 = lean::box(0); +x_436 = l___private_init_lean_parser_combinators_1__many1Aux___main___rarg___closed__1; +x_437 = l_mjoin___rarg___closed__1; +x_438 = l_Lean_Parser_MonadParsec_error___at_Lean_Parser_Module_eoi_Parser___spec__2___rarg(x_436, x_437, x_435, x_435, x_2, x_3, x_4, x_5); lean::dec(x_4); lean::dec(x_3); lean::dec(x_2); -return x_623; +return x_438; } } } -obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { +obj* l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2___boxed(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { _start: { obj* x_4; -x_4 = l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__3(x_0, x_1, x_2, x_3); +x_4 = l_Lean_Parser_MonadParsec_any___at___private_init_lean_parser_module_1__commandWrecAux___main___spec__2(x_0, x_1, x_2, x_3); lean::dec(x_1); return x_4; } diff --git a/src/stage0/init/lean/parser/term.cpp b/src/stage0/init/lean/parser/term.cpp index 7bde6b8410..1ae3f3d255 100644 --- a/src/stage0/init/lean/parser/term.cpp +++ b/src/stage0/init/lean/parser/term.cpp @@ -84,7 +84,6 @@ obj* l_Lean_Parser_Term_mixedBinder_HasView_x_27___lambda__1(obj*); obj* l_Lean_Parser_Term_inaccessible_Parser_Lean_Parser_HasView; obj* l_Lean_Parser_Term_structInstField_HasView_x_27___lambda__2(obj*); obj* l_Lean_Parser_ParsecT_lookahead___at_Lean_Parser_Term_bracketedBinder_Parser_Lean_Parser_HasTokens___spec__4(obj*, obj*, obj*, obj*, obj*, obj*, obj*, obj*); -obj* l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7; obj* l_Lean_Parser_Term_paren_HasView_x_27___lambda__1___closed__2; obj* l_Lean_Parser_Term_binderDefault_HasView; obj* l_List_map___main___at_Lean_Parser_Term_matchEquation_HasView_x_27___spec__1(obj*); @@ -162,7 +161,6 @@ obj* l_Lean_Parser_Term_inaccessible_HasView_x_27___lambda__1___closed__1; obj* l_Lean_Parser_termParser_run(obj*, obj*, obj*, obj*, obj*); extern obj* l_Lean_Parser_BasicParserM_Monad; obj* l_Lean_Parser_Term_let_Parser_Lean_Parser_HasTokens; -obj* l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6; obj* l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; obj* l_List_mfoldl___main___at_Lean_Parser_Term_sortApp_Parser_Lean_Parser_HasTokens___spec__4(obj*, obj*, obj*, obj*, obj*, obj*, obj*, obj*, obj*); obj* l_Lean_Parser_Term_match_HasView_x_27___lambda__1___closed__2; @@ -8778,25 +8776,23 @@ return x_8; obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1() { _start: { -obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; obj* x_7; -x_0 = l_Lean_Parser_Term_binderIdent_HasView; +obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; +x_0 = l_Lean_Parser_Term_binderDefault_HasView; x_1 = lean::cnstr_get(x_0, 0); lean::inc(x_1); lean::dec(x_0); x_4 = lean::box(3); x_5 = lean::apply_1(x_1, x_4); -x_6 = lean::box(0); -x_7 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_7, 0, x_5); -lean::cnstr_set(x_7, 1, x_6); -return x_7; +x_6 = lean::alloc_cnstr(1, 1, 0); +lean::cnstr_set(x_6, 0, x_5); +return x_6; } } obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2() { _start: { obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; -x_0 = l_Lean_Parser_Term_binderDefault_HasView; +x_0 = l_Lean_Parser_Term_typeSpec_HasView; x_1 = lean::cnstr_get(x_0, 0); lean::inc(x_1); lean::dec(x_0); @@ -8811,209 +8807,22 @@ obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3 _start: { obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; obj* x_7; -x_0 = l_Lean_Parser_Term_typeSpec_HasView; +x_0 = l_Lean_Parser_Term_binderIdent_HasView; x_1 = lean::cnstr_get(x_0, 0); lean::inc(x_1); lean::dec(x_0); x_4 = lean::box(3); x_5 = lean::apply_1(x_1, x_4); -x_6 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_6, 0, x_5); -x_7 = l_Lean_Parser_Syntax_asNode___main(x_4); -if (lean::obj_tag(x_7) == 0) -{ -obj* x_8; obj* x_9; obj* x_10; -x_8 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_9 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_10 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_10, 0, x_8); -lean::cnstr_set(x_10, 1, x_6); -lean::cnstr_set(x_10, 2, x_9); -return x_10; -} -else -{ -obj* x_11; obj* x_13; obj* x_14; -x_11 = lean::cnstr_get(x_7, 0); -if (lean::is_exclusive(x_7)) { - 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); -} -x_14 = lean::cnstr_get(x_11, 1); -lean::inc(x_14); -lean::dec(x_11); -if (lean::obj_tag(x_14) == 0) -{ -obj* x_18; obj* x_19; obj* x_20; -lean::dec(x_13); -x_18 = lean::box(0); -x_19 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_20 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_20, 0, x_19); -lean::cnstr_set(x_20, 1, x_6); -lean::cnstr_set(x_20, 2, x_18); -return x_20; -} -else -{ -obj* x_21; -x_21 = lean::cnstr_get(x_14, 1); -lean::inc(x_21); -if (lean::obj_tag(x_21) == 0) -{ -obj* x_23; obj* x_26; obj* x_27; obj* x_30; obj* x_31; obj* x_32; obj* x_33; -x_23 = lean::cnstr_get(x_14, 0); -lean::inc(x_23); -lean::dec(x_14); -x_26 = l_Lean_Parser_Term_binderDefault_HasView; -x_27 = lean::cnstr_get(x_26, 0); -lean::inc(x_27); -lean::dec(x_26); -x_30 = lean::apply_1(x_27, x_23); -if (lean::is_scalar(x_13)) { - x_31 = lean::alloc_cnstr(1, 1, 0); -} else { - x_31 = x_13; -} -lean::cnstr_set(x_31, 0, x_30); -x_32 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_33 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_33, 0, x_32); -lean::cnstr_set(x_33, 1, x_6); -lean::cnstr_set(x_33, 2, x_31); -return x_33; -} -else -{ -obj* x_37; obj* x_38; obj* x_39; -lean::dec(x_14); -lean::dec(x_13); -lean::dec(x_21); -x_37 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_38 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_39 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_39, 0, x_37); -lean::cnstr_set(x_39, 1, x_6); -lean::cnstr_set(x_39, 2, x_38); -return x_39; -} -} -} +x_6 = lean::box(0); +x_7 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_7, 0, x_5); +lean::cnstr_set(x_7, 1, x_6); +return x_7; } } obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4() { _start: { -obj* x_0; obj* x_1; obj* x_4; obj* x_5; obj* x_6; -x_0 = l_Lean_Parser_Term_typeSpec_HasView; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -x_4 = lean::box(3); -x_5 = lean::apply_1(x_1, x_4); -x_6 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_6, 0, x_5); -return x_6; -} -} -obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5() { -_start: -{ -obj* x_0; obj* x_1; obj* x_2; -x_0 = lean::box(0); -x_1 = lean::box(3); -x_2 = l_Lean_Parser_Syntax_asNode___main(x_1); -if (lean::obj_tag(x_2) == 0) -{ -obj* x_3; obj* x_4; obj* x_5; -x_3 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_4 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_5 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_5, 0, x_3); -lean::cnstr_set(x_5, 1, x_0); -lean::cnstr_set(x_5, 2, x_4); -return x_5; -} -else -{ -obj* x_6; obj* x_8; obj* x_9; -x_6 = lean::cnstr_get(x_2, 0); -if (lean::is_exclusive(x_2)) { - lean::cnstr_set(x_2, 0, lean::box(0)); - x_8 = x_2; -} else { - lean::inc(x_6); - lean::dec(x_2); - x_8 = lean::box(0); -} -x_9 = lean::cnstr_get(x_6, 1); -lean::inc(x_9); -lean::dec(x_6); -if (lean::obj_tag(x_9) == 0) -{ -obj* x_13; obj* x_14; -lean::dec(x_8); -x_13 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_14 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_14, 0, x_13); -lean::cnstr_set(x_14, 1, x_0); -lean::cnstr_set(x_14, 2, x_0); -return x_14; -} -else -{ -obj* x_15; -x_15 = lean::cnstr_get(x_9, 1); -lean::inc(x_15); -if (lean::obj_tag(x_15) == 0) -{ -obj* x_17; obj* x_20; obj* x_21; obj* x_24; obj* x_25; obj* x_26; obj* x_27; -x_17 = lean::cnstr_get(x_9, 0); -lean::inc(x_17); -lean::dec(x_9); -x_20 = l_Lean_Parser_Term_binderDefault_HasView; -x_21 = lean::cnstr_get(x_20, 0); -lean::inc(x_21); -lean::dec(x_20); -x_24 = lean::apply_1(x_21, x_17); -if (lean::is_scalar(x_8)) { - x_25 = lean::alloc_cnstr(1, 1, 0); -} else { - x_25 = x_8; -} -lean::cnstr_set(x_25, 0, x_24); -x_26 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_27 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_27, 0, x_26); -lean::cnstr_set(x_27, 1, x_0); -lean::cnstr_set(x_27, 2, x_25); -return x_27; -} -else -{ -obj* x_31; obj* x_32; obj* x_33; -lean::dec(x_9); -lean::dec(x_8); -lean::dec(x_15); -x_31 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_32 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_33 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_33, 0, x_31); -lean::cnstr_set(x_33, 1, x_0); -lean::cnstr_set(x_33, 2, x_32); -return x_33; -} -} -} -} -} -obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6() { -_start: -{ obj* x_0; obj* x_1; x_0 = l_Lean_Parser_Term_binderIdent_HasView; x_1 = lean::cnstr_get(x_0, 0); @@ -9022,285 +8831,186 @@ lean::dec(x_0); return x_1; } } -obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7() { +obj* _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5() { _start: { -obj* x_0; obj* x_1; -x_0 = lean::box(3); -x_1 = l_Lean_Parser_Syntax_asNode___main(x_0); -if (lean::obj_tag(x_1) == 0) +obj* x_0; obj* x_2; obj* x_3; +x_2 = lean::box(3); +x_3 = l_Lean_Parser_Syntax_asNode___main(x_2); +if (lean::obj_tag(x_3) == 0) { -if (lean::obj_tag(x_1) == 0) -{ -obj* x_2; -x_2 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; -return x_2; +obj* x_4; +x_4 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; +x_0 = x_4; +goto lbl_1; } else { -obj* x_3; obj* x_5; -x_3 = lean::cnstr_get(x_1, 0); -lean::inc(x_3); -x_5 = lean::cnstr_get(x_3, 1); +obj* x_5; obj* x_8; obj* x_11; obj* x_12; +x_5 = lean::cnstr_get(x_3, 0); lean::inc(x_5); lean::dec(x_3); -if (lean::obj_tag(x_5) == 0) -{ -obj* x_8; -x_8 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5; -return x_8; -} -else -{ -obj* x_9; -x_9 = lean::cnstr_get(x_5, 1); -lean::inc(x_9); -if (lean::obj_tag(x_9) == 0) -{ -obj* x_11; obj* x_13; obj* x_14; obj* x_18; obj* x_19; -x_11 = lean::cnstr_get(x_5, 0); -lean::inc(x_11); -x_13 = l_Lean_Parser_Term_typeSpec_HasView; -x_14 = lean::cnstr_get(x_13, 0); -lean::inc(x_14); -lean::dec(x_13); -lean::inc(x_11); -x_18 = lean::apply_1(x_14, x_11); -x_19 = lean::alloc_cnstr(1, 1, 0); -lean::cnstr_set(x_19, 0, x_18); -if (lean::obj_tag(x_1) == 0) -{ -obj* x_22; obj* x_23; obj* x_24; +x_8 = lean::cnstr_get(x_5, 1); +lean::inc(x_8); lean::dec(x_5); -lean::dec(x_11); -x_22 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_23 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_24 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_24, 0, x_22); -lean::cnstr_set(x_24, 1, x_19); -lean::cnstr_set(x_24, 2, x_23); -return x_24; +x_11 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_12 = l_List_map___main___rarg(x_11, x_8); +x_0 = x_12; +goto lbl_1; +} +lbl_1: +{ +obj* x_13; obj* x_15; obj* x_16; +x_15 = lean::box(3); +x_16 = l_Lean_Parser_Syntax_asNode___main(x_15); +if (lean::obj_tag(x_16) == 0) +{ +obj* x_17; +x_17 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_13 = x_17; +goto lbl_14; } else { +obj* x_18; obj* x_20; obj* x_21; +x_18 = lean::cnstr_get(x_16, 0); +if (lean::is_exclusive(x_16)) { + 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); +} +x_21 = lean::cnstr_get(x_18, 1); +lean::inc(x_21); +lean::dec(x_18); +if (lean::obj_tag(x_21) == 0) +{ obj* x_25; -if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - x_25 = x_1; -} else { - lean::dec(x_1); - x_25 = lean::box(0); -} -if (lean::obj_tag(x_5) == 0) -{ -obj* x_28; obj* x_29; obj* x_30; -lean::dec(x_25); -lean::dec(x_11); -x_28 = lean::box(0); -x_29 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_30 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_30, 0, x_29); -lean::cnstr_set(x_30, 1, x_19); -lean::cnstr_set(x_30, 2, x_28); -return x_30; +lean::dec(x_20); +x_25 = lean::box(0); +x_13 = x_25; +goto lbl_14; } else { -lean::dec(x_5); -if (lean::obj_tag(x_9) == 0) +obj* x_26; +x_26 = lean::cnstr_get(x_21, 1); +lean::inc(x_26); +if (lean::obj_tag(x_26) == 0) { -obj* x_32; obj* x_33; obj* x_36; obj* x_37; obj* x_38; obj* x_39; -x_32 = l_Lean_Parser_Term_binderDefault_HasView; -x_33 = lean::cnstr_get(x_32, 0); -lean::inc(x_33); -lean::dec(x_32); -x_36 = lean::apply_1(x_33, x_11); -if (lean::is_scalar(x_25)) { - x_37 = lean::alloc_cnstr(1, 1, 0); +obj* x_28; obj* x_31; obj* x_32; obj* x_35; obj* x_36; +x_28 = lean::cnstr_get(x_21, 0); +lean::inc(x_28); +lean::dec(x_21); +x_31 = l_Lean_Parser_Term_typeSpec_HasView; +x_32 = lean::cnstr_get(x_31, 0); +lean::inc(x_32); +lean::dec(x_31); +x_35 = lean::apply_1(x_32, x_28); +if (lean::is_scalar(x_20)) { + x_36 = lean::alloc_cnstr(1, 1, 0); } else { - x_37 = x_25; + x_36 = x_20; } -lean::cnstr_set(x_37, 0, x_36); -x_38 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_39 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_39, 0, x_38); -lean::cnstr_set(x_39, 1, x_19); -lean::cnstr_set(x_39, 2, x_37); -return x_39; +lean::cnstr_set(x_36, 0, x_35); +x_13 = x_36; +goto lbl_14; } else { -obj* x_42; obj* x_43; obj* x_44; -lean::dec(x_25); -lean::dec(x_11); -x_42 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_43 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +obj* x_40; +lean::dec(x_26); +lean::dec(x_20); +lean::dec(x_21); +x_40 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_13 = x_40; +goto lbl_14; +} +} +} +lbl_14: +{ +obj* x_41; obj* x_42; +x_41 = lean::box(3); +x_42 = l_Lean_Parser_Syntax_asNode___main(x_41); +if (lean::obj_tag(x_42) == 0) +{ +obj* x_43; obj* x_44; +x_43 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; x_44 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_44, 0, x_42); -lean::cnstr_set(x_44, 1, x_19); +lean::cnstr_set(x_44, 0, x_0); +lean::cnstr_set(x_44, 1, x_13); lean::cnstr_set(x_44, 2, x_43); return x_44; } -} -} -} else { -obj* x_47; -lean::dec(x_9); -lean::dec(x_5); -x_47 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; -return x_47; +obj* x_45; obj* x_47; obj* x_48; +x_45 = lean::cnstr_get(x_42, 0); +if (lean::is_exclusive(x_42)) { + lean::cnstr_set(x_42, 0, lean::box(0)); + x_47 = x_42; +} else { + lean::inc(x_45); + lean::dec(x_42); + x_47 = lean::box(0); } -} -} -} -else -{ -obj* x_48; obj* x_50; obj* x_53; obj* x_55; obj* x_56; -x_48 = lean::cnstr_get(x_1, 0); +x_48 = lean::cnstr_get(x_45, 1); lean::inc(x_48); -x_50 = lean::cnstr_get(x_48, 1); -lean::inc(x_50); +lean::dec(x_45); +if (lean::obj_tag(x_48) == 0) +{ +obj* x_52; obj* x_53; +lean::dec(x_47); +x_52 = lean::box(0); +x_53 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_53, 0, x_0); +lean::cnstr_set(x_53, 1, x_13); +lean::cnstr_set(x_53, 2, x_52); +return x_53; +} +else +{ +obj* x_54; +x_54 = lean::cnstr_get(x_48, 1); +lean::inc(x_54); +if (lean::obj_tag(x_54) == 0) +{ +obj* x_56; obj* x_59; obj* x_60; obj* x_63; obj* x_64; obj* x_65; +x_56 = lean::cnstr_get(x_48, 0); +lean::inc(x_56); lean::dec(x_48); -x_53 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6; -lean::inc(x_50); -x_55 = l_List_map___main___rarg(x_53, x_50); -if (lean::obj_tag(x_1) == 0) -{ -obj* x_58; -x_58 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_56 = x_58; -goto lbl_57; -} -else -{ -obj* x_60; -lean::inc(x_1); -if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - x_60 = x_1; +x_59 = l_Lean_Parser_Term_binderDefault_HasView; +x_60 = lean::cnstr_get(x_59, 0); +lean::inc(x_60); +lean::dec(x_59); +x_63 = lean::apply_1(x_60, x_56); +if (lean::is_scalar(x_47)) { + x_64 = lean::alloc_cnstr(1, 1, 0); } else { - lean::dec(x_1); - x_60 = lean::box(0); + x_64 = x_47; } -if (lean::obj_tag(x_50) == 0) -{ -obj* x_62; -lean::dec(x_60); -x_62 = lean::box(0); -x_56 = x_62; -goto lbl_57; +lean::cnstr_set(x_64, 0, x_63); +x_65 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_65, 0, x_0); +lean::cnstr_set(x_65, 1, x_13); +lean::cnstr_set(x_65, 2, x_64); +return x_65; } else { -obj* x_63; -x_63 = lean::cnstr_get(x_50, 1); -lean::inc(x_63); -if (lean::obj_tag(x_63) == 0) -{ -obj* x_65; obj* x_67; obj* x_68; obj* x_71; obj* x_72; -x_65 = lean::cnstr_get(x_50, 0); -lean::inc(x_65); -x_67 = l_Lean_Parser_Term_typeSpec_HasView; -x_68 = lean::cnstr_get(x_67, 0); -lean::inc(x_68); -lean::dec(x_67); -x_71 = lean::apply_1(x_68, x_65); -if (lean::is_scalar(x_60)) { - x_72 = lean::alloc_cnstr(1, 1, 0); -} else { - x_72 = x_60; -} -lean::cnstr_set(x_72, 0, x_71); -x_56 = x_72; -goto lbl_57; -} -else -{ -obj* x_75; -lean::dec(x_63); -lean::dec(x_60); -x_75 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_56 = x_75; -goto lbl_57; -} -} -} -lbl_57: -{ -if (lean::obj_tag(x_1) == 0) -{ -obj* x_77; obj* x_78; -lean::dec(x_50); -x_77 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_78 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_78, 0, x_55); -lean::cnstr_set(x_78, 1, x_56); -lean::cnstr_set(x_78, 2, x_77); -return x_78; -} -else -{ -obj* x_79; -if (lean::is_exclusive(x_1)) { - lean::cnstr_release(x_1, 0); - x_79 = x_1; -} else { - lean::dec(x_1); - x_79 = lean::box(0); -} -if (lean::obj_tag(x_50) == 0) -{ -obj* x_81; obj* x_82; -lean::dec(x_79); -x_81 = lean::box(0); -x_82 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_82, 0, x_55); -lean::cnstr_set(x_82, 1, x_56); -lean::cnstr_set(x_82, 2, x_81); -return x_82; -} -else -{ -obj* x_83; -x_83 = lean::cnstr_get(x_50, 1); -lean::inc(x_83); -if (lean::obj_tag(x_83) == 0) -{ -obj* x_85; obj* x_88; obj* x_89; obj* x_92; obj* x_93; obj* x_94; -x_85 = lean::cnstr_get(x_50, 0); -lean::inc(x_85); -lean::dec(x_50); -x_88 = l_Lean_Parser_Term_binderDefault_HasView; -x_89 = lean::cnstr_get(x_88, 0); -lean::inc(x_89); -lean::dec(x_88); -x_92 = lean::apply_1(x_89, x_85); -if (lean::is_scalar(x_79)) { - x_93 = lean::alloc_cnstr(1, 1, 0); -} else { - x_93 = x_79; -} -lean::cnstr_set(x_93, 0, x_92); -x_94 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_94, 0, x_55); -lean::cnstr_set(x_94, 1, x_56); -lean::cnstr_set(x_94, 2, x_93); -return x_94; -} -else -{ -obj* x_98; obj* x_99; -lean::dec(x_50); -lean::dec(x_83); -lean::dec(x_79); -x_98 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_99 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_99, 0, x_55); -lean::cnstr_set(x_99, 1, x_56); -lean::cnstr_set(x_99, 2, x_98); -return x_99; +obj* x_69; obj* x_70; +lean::dec(x_47); +lean::dec(x_48); +lean::dec(x_54); +x_69 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_70 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_70, 0, x_0); +lean::cnstr_set(x_70, 1, x_13); +lean::cnstr_set(x_70, 2, x_69); +return x_70; } } } @@ -9316,7 +9026,7 @@ x_4 = l_Lean_Parser_Syntax_asNode___main(x_0); if (lean::obj_tag(x_4) == 0) { obj* x_5; -x_5 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7; +x_5 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5; return x_5; } else @@ -9351,649 +9061,342 @@ goto lbl_3; } lbl_3: { -obj* x_18; -x_18 = l_Lean_Parser_Syntax_asNode___main(x_2); -if (lean::obj_tag(x_18) == 0) +obj* x_18; obj* x_20; +x_20 = l_Lean_Parser_Syntax_asNode___main(x_2); +if (lean::obj_tag(x_20) == 0) { -obj* x_19; obj* x_20; obj* x_22; obj* x_23; +obj* x_21; +x_21 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; +x_18 = x_21; +goto lbl_19; +} +else +{ +obj* x_22; obj* x_25; obj* x_28; obj* x_29; +x_22 = lean::cnstr_get(x_20, 0); +lean::inc(x_22); +lean::dec(x_20); +x_25 = lean::cnstr_get(x_22, 1); +lean::inc(x_25); +lean::dec(x_22); +x_28 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_29 = l_List_map___main___rarg(x_28, x_25); +x_18 = x_29; +goto lbl_19; +} +lbl_19: +{ +obj* x_30; obj* x_32; obj* x_33; obj* x_35; obj* x_36; if (lean::obj_tag(x_1) == 0) { -obj* x_25; -x_25 = lean::box(3); -x_22 = x_1; -x_23 = x_25; -goto lbl_24; +obj* x_38; +x_38 = lean::box(3); +x_35 = x_1; +x_36 = x_38; +goto lbl_37; } else { -obj* x_26; obj* x_28; -x_26 = lean::cnstr_get(x_1, 0); -lean::inc(x_26); -x_28 = lean::cnstr_get(x_1, 1); -lean::inc(x_28); +obj* x_39; obj* x_41; +x_39 = lean::cnstr_get(x_1, 0); +lean::inc(x_39); +x_41 = lean::cnstr_get(x_1, 1); +lean::inc(x_41); lean::dec(x_1); -x_22 = x_28; -x_23 = x_26; -goto lbl_24; +x_35 = x_41; +x_36 = x_39; +goto lbl_37; } -lbl_21: +lbl_31: { -obj* x_31; -x_31 = l_Lean_Parser_Syntax_asNode___main(x_20); -if (lean::obj_tag(x_31) == 0) -{ -obj* x_32; obj* x_33; obj* x_34; -x_32 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_33 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_34 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_34, 0, x_32); -lean::cnstr_set(x_34, 1, x_19); -lean::cnstr_set(x_34, 2, x_33); -return x_34; -} -else -{ -obj* x_35; obj* x_37; obj* x_38; -x_35 = lean::cnstr_get(x_31, 0); -if (lean::is_exclusive(x_31)) { - lean::cnstr_set(x_31, 0, lean::box(0)); - x_37 = x_31; -} else { - lean::inc(x_35); - lean::dec(x_31); - x_37 = lean::box(0); -} -x_38 = lean::cnstr_get(x_35, 1); -lean::inc(x_38); -lean::dec(x_35); -if (lean::obj_tag(x_38) == 0) -{ -obj* x_42; obj* x_43; obj* x_44; -lean::dec(x_37); -x_42 = lean::box(0); -x_43 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_44 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_44, 0, x_43); -lean::cnstr_set(x_44, 1, x_19); -lean::cnstr_set(x_44, 2, x_42); -return x_44; -} -else -{ -obj* x_45; -x_45 = lean::cnstr_get(x_38, 1); -lean::inc(x_45); +obj* x_44; obj* x_45; +x_44 = lean::box(3); +x_45 = l_Lean_Parser_Syntax_asNode___main(x_44); if (lean::obj_tag(x_45) == 0) { -obj* x_47; obj* x_50; obj* x_51; obj* x_54; obj* x_55; obj* x_56; obj* x_57; -x_47 = lean::cnstr_get(x_38, 0); -lean::inc(x_47); -lean::dec(x_38); -x_50 = l_Lean_Parser_Term_binderDefault_HasView; -x_51 = lean::cnstr_get(x_50, 0); +obj* x_46; obj* x_47; +x_46 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_47 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_47, 0, x_18); +lean::cnstr_set(x_47, 1, x_30); +lean::cnstr_set(x_47, 2, x_46); +return x_47; +} +else +{ +obj* x_48; obj* x_50; obj* x_51; +x_48 = lean::cnstr_get(x_45, 0); +if (lean::is_exclusive(x_45)) { + 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); +} +x_51 = lean::cnstr_get(x_48, 1); lean::inc(x_51); +lean::dec(x_48); +if (lean::obj_tag(x_51) == 0) +{ +obj* x_55; obj* x_56; lean::dec(x_50); -x_54 = lean::apply_1(x_51, x_47); -if (lean::is_scalar(x_37)) { - x_55 = lean::alloc_cnstr(1, 1, 0); +x_55 = lean::box(0); +x_56 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_56, 0, x_18); +lean::cnstr_set(x_56, 1, x_30); +lean::cnstr_set(x_56, 2, x_55); +return x_56; +} +else +{ +obj* x_57; +x_57 = lean::cnstr_get(x_51, 1); +lean::inc(x_57); +if (lean::obj_tag(x_57) == 0) +{ +obj* x_59; obj* x_62; obj* x_63; obj* x_66; obj* x_67; obj* x_68; +x_59 = lean::cnstr_get(x_51, 0); +lean::inc(x_59); +lean::dec(x_51); +x_62 = l_Lean_Parser_Term_binderDefault_HasView; +x_63 = lean::cnstr_get(x_62, 0); +lean::inc(x_63); +lean::dec(x_62); +x_66 = lean::apply_1(x_63, x_59); +if (lean::is_scalar(x_50)) { + x_67 = lean::alloc_cnstr(1, 1, 0); } else { - x_55 = x_37; + x_67 = x_50; } -lean::cnstr_set(x_55, 0, x_54); -x_56 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_57 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_57, 0, x_56); -lean::cnstr_set(x_57, 1, x_19); -lean::cnstr_set(x_57, 2, x_55); -return x_57; +lean::cnstr_set(x_67, 0, x_66); +x_68 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_68, 0, x_18); +lean::cnstr_set(x_68, 1, x_30); +lean::cnstr_set(x_68, 2, x_67); +return x_68; } else { -obj* x_61; obj* x_62; obj* x_63; -lean::dec(x_38); -lean::dec(x_37); -lean::dec(x_45); -x_61 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_62 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_63 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_63, 0, x_61); -lean::cnstr_set(x_63, 1, x_19); -lean::cnstr_set(x_63, 2, x_62); -return x_63; +obj* x_72; obj* x_73; +lean::dec(x_57); +lean::dec(x_51); +lean::dec(x_50); +x_72 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_73 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_73, 0, x_18); +lean::cnstr_set(x_73, 1, x_30); +lean::cnstr_set(x_73, 2, x_72); +return x_73; } } } } -lbl_24: +lbl_34: { -obj* x_64; -x_64 = l_Lean_Parser_Syntax_asNode___main(x_23); -if (lean::obj_tag(x_64) == 0) +obj* x_74; +x_74 = l_Lean_Parser_Syntax_asNode___main(x_33); +if (lean::obj_tag(x_74) == 0) { -if (lean::obj_tag(x_22) == 0) -{ -obj* x_65; -x_65 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; -return x_65; +obj* x_75; obj* x_76; +x_75 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_76 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_76, 0, x_18); +lean::cnstr_set(x_76, 1, x_32); +lean::cnstr_set(x_76, 2, x_75); +return x_76; } else { -obj* x_66; obj* x_69; -x_66 = lean::cnstr_get(x_22, 0); -lean::inc(x_66); -lean::dec(x_22); -x_69 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_19 = x_69; -x_20 = x_66; -goto lbl_21; -} -} -else -{ -obj* x_70; obj* x_72; obj* x_73; -x_70 = lean::cnstr_get(x_64, 0); -if (lean::is_exclusive(x_64)) { - lean::cnstr_set(x_64, 0, lean::box(0)); - x_72 = x_64; +obj* x_77; obj* x_79; obj* x_80; +x_77 = lean::cnstr_get(x_74, 0); +if (lean::is_exclusive(x_74)) { + lean::cnstr_set(x_74, 0, lean::box(0)); + x_79 = x_74; } else { - lean::inc(x_70); - lean::dec(x_64); - x_72 = lean::box(0); + lean::inc(x_77); + lean::dec(x_74); + x_79 = lean::box(0); } -x_73 = lean::cnstr_get(x_70, 1); -lean::inc(x_73); -lean::dec(x_70); -if (lean::obj_tag(x_73) == 0) +x_80 = lean::cnstr_get(x_77, 1); +lean::inc(x_80); +lean::dec(x_77); +if (lean::obj_tag(x_80) == 0) { -lean::dec(x_72); -if (lean::obj_tag(x_22) == 0) -{ -obj* x_77; -x_77 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5; -return x_77; +obj* x_84; obj* x_85; +lean::dec(x_79); +x_84 = lean::box(0); +x_85 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_85, 0, x_18); +lean::cnstr_set(x_85, 1, x_32); +lean::cnstr_set(x_85, 2, x_84); +return x_85; } else { -obj* x_78; obj* x_81; -x_78 = lean::cnstr_get(x_22, 0); -lean::inc(x_78); -lean::dec(x_22); -x_81 = lean::box(0); -x_19 = x_81; -x_20 = x_78; -goto lbl_21; -} -} -else +obj* x_86; +x_86 = lean::cnstr_get(x_80, 1); +lean::inc(x_86); +if (lean::obj_tag(x_86) == 0) { -obj* x_82; -x_82 = lean::cnstr_get(x_73, 1); -lean::inc(x_82); -if (lean::obj_tag(x_82) == 0) -{ -obj* x_84; obj* x_87; obj* x_88; obj* x_91; obj* x_92; -x_84 = lean::cnstr_get(x_73, 0); -lean::inc(x_84); -lean::dec(x_73); -x_87 = l_Lean_Parser_Term_typeSpec_HasView; -x_88 = lean::cnstr_get(x_87, 0); +obj* x_88; obj* x_91; obj* x_92; obj* x_95; obj* x_96; obj* x_97; +x_88 = lean::cnstr_get(x_80, 0); lean::inc(x_88); -lean::dec(x_87); -x_91 = lean::apply_1(x_88, x_84); -if (lean::is_scalar(x_72)) { - x_92 = lean::alloc_cnstr(1, 1, 0); +lean::dec(x_80); +x_91 = l_Lean_Parser_Term_binderDefault_HasView; +x_92 = lean::cnstr_get(x_91, 0); +lean::inc(x_92); +lean::dec(x_91); +x_95 = lean::apply_1(x_92, x_88); +if (lean::is_scalar(x_79)) { + x_96 = lean::alloc_cnstr(1, 1, 0); } else { - x_92 = x_72; + x_96 = x_79; } -lean::cnstr_set(x_92, 0, x_91); -if (lean::obj_tag(x_22) == 0) -{ -obj* x_93; obj* x_94; -x_93 = lean::box(3); -x_94 = l_Lean_Parser_Syntax_asNode___main(x_93); -if (lean::obj_tag(x_94) == 0) -{ -obj* x_95; obj* x_96; obj* x_97; -x_95 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_96 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +lean::cnstr_set(x_96, 0, x_95); x_97 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_97, 0, x_95); -lean::cnstr_set(x_97, 1, x_92); +lean::cnstr_set(x_97, 0, x_18); +lean::cnstr_set(x_97, 1, x_32); lean::cnstr_set(x_97, 2, x_96); return x_97; } else { -obj* x_98; obj* x_100; obj* x_101; -x_98 = lean::cnstr_get(x_94, 0); -if (lean::is_exclusive(x_94)) { - lean::cnstr_set(x_94, 0, lean::box(0)); - x_100 = x_94; +obj* x_101; obj* x_102; +lean::dec(x_79); +lean::dec(x_80); +lean::dec(x_86); +x_101 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_102 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_102, 0, x_18); +lean::cnstr_set(x_102, 1, x_32); +lean::cnstr_set(x_102, 2, x_101); +return x_102; +} +} +} +} +lbl_37: +{ +obj* x_103; +x_103 = l_Lean_Parser_Syntax_asNode___main(x_36); +if (lean::obj_tag(x_103) == 0) +{ +if (lean::obj_tag(x_35) == 0) +{ +obj* x_104; +x_104 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_30 = x_104; +goto lbl_31; +} +else +{ +obj* x_105; obj* x_108; +x_105 = lean::cnstr_get(x_35, 0); +lean::inc(x_105); +lean::dec(x_35); +x_108 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_32 = x_108; +x_33 = x_105; +goto lbl_34; +} +} +else +{ +obj* x_109; obj* x_111; obj* x_112; +x_109 = lean::cnstr_get(x_103, 0); +if (lean::is_exclusive(x_103)) { + lean::cnstr_set(x_103, 0, lean::box(0)); + x_111 = x_103; } else { - lean::inc(x_98); - lean::dec(x_94); - x_100 = lean::box(0); + lean::inc(x_109); + lean::dec(x_103); + x_111 = lean::box(0); } -x_101 = lean::cnstr_get(x_98, 1); -lean::inc(x_101); -lean::dec(x_98); -if (lean::obj_tag(x_101) == 0) +x_112 = lean::cnstr_get(x_109, 1); +lean::inc(x_112); +lean::dec(x_109); +if (lean::obj_tag(x_112) == 0) { -obj* x_105; obj* x_106; obj* x_107; -lean::dec(x_100); -x_105 = lean::box(0); -x_106 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_107 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_107, 0, x_106); -lean::cnstr_set(x_107, 1, x_92); -lean::cnstr_set(x_107, 2, x_105); -return x_107; +obj* x_116; +lean::dec(x_111); +x_116 = lean::box(0); +if (lean::obj_tag(x_35) == 0) +{ +x_30 = x_116; +goto lbl_31; } else { -obj* x_108; -x_108 = lean::cnstr_get(x_101, 1); -lean::inc(x_108); -if (lean::obj_tag(x_108) == 0) +obj* x_117; +x_117 = lean::cnstr_get(x_35, 0); +lean::inc(x_117); +lean::dec(x_35); +x_32 = x_116; +x_33 = x_117; +goto lbl_34; +} +} +else { -obj* x_110; obj* x_113; obj* x_114; obj* x_117; obj* x_118; obj* x_119; obj* x_120; -x_110 = lean::cnstr_get(x_101, 0); -lean::inc(x_110); -lean::dec(x_101); -x_113 = l_Lean_Parser_Term_binderDefault_HasView; -x_114 = lean::cnstr_get(x_113, 0); -lean::inc(x_114); -lean::dec(x_113); -x_117 = lean::apply_1(x_114, x_110); -if (lean::is_scalar(x_100)) { - x_118 = lean::alloc_cnstr(1, 1, 0); +obj* x_120; +x_120 = lean::cnstr_get(x_112, 1); +lean::inc(x_120); +if (lean::obj_tag(x_120) == 0) +{ +obj* x_122; obj* x_125; obj* x_126; obj* x_129; obj* x_130; +x_122 = lean::cnstr_get(x_112, 0); +lean::inc(x_122); +lean::dec(x_112); +x_125 = l_Lean_Parser_Term_typeSpec_HasView; +x_126 = lean::cnstr_get(x_125, 0); +lean::inc(x_126); +lean::dec(x_125); +x_129 = lean::apply_1(x_126, x_122); +if (lean::is_scalar(x_111)) { + x_130 = lean::alloc_cnstr(1, 1, 0); } else { - x_118 = x_100; + x_130 = x_111; } -lean::cnstr_set(x_118, 0, x_117); -x_119 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_120 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_120, 0, x_119); -lean::cnstr_set(x_120, 1, x_92); -lean::cnstr_set(x_120, 2, x_118); -return x_120; +lean::cnstr_set(x_130, 0, x_129); +if (lean::obj_tag(x_35) == 0) +{ +x_30 = x_130; +goto lbl_31; } else { -obj* x_124; obj* x_125; obj* x_126; -lean::dec(x_101); -lean::dec(x_100); -lean::dec(x_108); -x_124 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; -x_125 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_126 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_126, 0, x_124); -lean::cnstr_set(x_126, 1, x_92); -lean::cnstr_set(x_126, 2, x_125); -return x_126; -} -} +obj* x_131; +x_131 = lean::cnstr_get(x_35, 0); +lean::inc(x_131); +lean::dec(x_35); +x_32 = x_130; +x_33 = x_131; +goto lbl_34; } } else { -obj* x_127; -x_127 = lean::cnstr_get(x_22, 0); -lean::inc(x_127); -lean::dec(x_22); -x_19 = x_92; -x_20 = x_127; -goto lbl_21; -} +lean::dec(x_112); +lean::dec(x_111); +lean::dec(x_120); +if (lean::obj_tag(x_35) == 0) +{ +obj* x_137; +x_137 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_30 = x_137; +goto lbl_31; } else { -lean::dec(x_73); -lean::dec(x_82); -lean::dec(x_72); -if (lean::obj_tag(x_22) == 0) -{ -obj* x_133; -x_133 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; -return x_133; -} -else -{ -obj* x_134; obj* x_137; -x_134 = lean::cnstr_get(x_22, 0); -lean::inc(x_134); -lean::dec(x_22); -x_137 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_19 = x_137; -x_20 = x_134; -goto lbl_21; -} -} -} -} -} -} -else -{ -obj* x_138; obj* x_141; obj* x_144; obj* x_145; obj* x_146; obj* x_148; obj* x_149; obj* x_151; obj* x_152; -x_138 = lean::cnstr_get(x_18, 0); +obj* x_138; obj* x_141; +x_138 = lean::cnstr_get(x_35, 0); lean::inc(x_138); -lean::dec(x_18); -x_141 = lean::cnstr_get(x_138, 1); -lean::inc(x_141); -lean::dec(x_138); -x_144 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6; -x_145 = l_List_map___main___rarg(x_144, x_141); -if (lean::obj_tag(x_1) == 0) -{ -obj* x_154; -x_154 = lean::box(3); -x_151 = x_1; -x_152 = x_154; -goto lbl_153; -} -else -{ -obj* x_155; obj* x_157; -x_155 = lean::cnstr_get(x_1, 0); -lean::inc(x_155); -x_157 = lean::cnstr_get(x_1, 1); -lean::inc(x_157); -lean::dec(x_1); -x_151 = x_157; -x_152 = x_155; -goto lbl_153; -} -lbl_147: -{ -obj* x_160; obj* x_161; -x_160 = lean::box(3); -x_161 = l_Lean_Parser_Syntax_asNode___main(x_160); -if (lean::obj_tag(x_161) == 0) -{ -obj* x_162; obj* x_163; -x_162 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_163 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_163, 0, x_145); -lean::cnstr_set(x_163, 1, x_146); -lean::cnstr_set(x_163, 2, x_162); -return x_163; -} -else -{ -obj* x_164; obj* x_166; obj* x_167; -x_164 = lean::cnstr_get(x_161, 0); -if (lean::is_exclusive(x_161)) { - lean::cnstr_set(x_161, 0, lean::box(0)); - x_166 = x_161; -} else { - lean::inc(x_164); - lean::dec(x_161); - x_166 = lean::box(0); -} -x_167 = lean::cnstr_get(x_164, 1); -lean::inc(x_167); -lean::dec(x_164); -if (lean::obj_tag(x_167) == 0) -{ -obj* x_171; obj* x_172; -lean::dec(x_166); -x_171 = lean::box(0); -x_172 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_172, 0, x_145); -lean::cnstr_set(x_172, 1, x_146); -lean::cnstr_set(x_172, 2, x_171); -return x_172; -} -else -{ -obj* x_173; -x_173 = lean::cnstr_get(x_167, 1); -lean::inc(x_173); -if (lean::obj_tag(x_173) == 0) -{ -obj* x_175; obj* x_178; obj* x_179; obj* x_182; obj* x_183; obj* x_184; -x_175 = lean::cnstr_get(x_167, 0); -lean::inc(x_175); -lean::dec(x_167); -x_178 = l_Lean_Parser_Term_binderDefault_HasView; -x_179 = lean::cnstr_get(x_178, 0); -lean::inc(x_179); -lean::dec(x_178); -x_182 = lean::apply_1(x_179, x_175); -if (lean::is_scalar(x_166)) { - x_183 = lean::alloc_cnstr(1, 1, 0); -} else { - x_183 = x_166; -} -lean::cnstr_set(x_183, 0, x_182); -x_184 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_184, 0, x_145); -lean::cnstr_set(x_184, 1, x_146); -lean::cnstr_set(x_184, 2, x_183); -return x_184; -} -else -{ -obj* x_188; obj* x_189; -lean::dec(x_167); -lean::dec(x_166); -lean::dec(x_173); -x_188 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_189 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_189, 0, x_145); -lean::cnstr_set(x_189, 1, x_146); -lean::cnstr_set(x_189, 2, x_188); -return x_189; -} -} -} -} -lbl_150: -{ -obj* x_190; -x_190 = l_Lean_Parser_Syntax_asNode___main(x_149); -if (lean::obj_tag(x_190) == 0) -{ -obj* x_191; obj* x_192; -x_191 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_192 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_192, 0, x_145); -lean::cnstr_set(x_192, 1, x_148); -lean::cnstr_set(x_192, 2, x_191); -return x_192; -} -else -{ -obj* x_193; obj* x_195; obj* x_196; -x_193 = lean::cnstr_get(x_190, 0); -if (lean::is_exclusive(x_190)) { - lean::cnstr_set(x_190, 0, lean::box(0)); - x_195 = x_190; -} else { - lean::inc(x_193); - lean::dec(x_190); - x_195 = lean::box(0); -} -x_196 = lean::cnstr_get(x_193, 1); -lean::inc(x_196); -lean::dec(x_193); -if (lean::obj_tag(x_196) == 0) -{ -obj* x_200; obj* x_201; -lean::dec(x_195); -x_200 = lean::box(0); -x_201 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_201, 0, x_145); -lean::cnstr_set(x_201, 1, x_148); -lean::cnstr_set(x_201, 2, x_200); -return x_201; -} -else -{ -obj* x_202; -x_202 = lean::cnstr_get(x_196, 1); -lean::inc(x_202); -if (lean::obj_tag(x_202) == 0) -{ -obj* x_204; obj* x_207; obj* x_208; obj* x_211; obj* x_212; obj* x_213; -x_204 = lean::cnstr_get(x_196, 0); -lean::inc(x_204); -lean::dec(x_196); -x_207 = l_Lean_Parser_Term_binderDefault_HasView; -x_208 = lean::cnstr_get(x_207, 0); -lean::inc(x_208); -lean::dec(x_207); -x_211 = lean::apply_1(x_208, x_204); -if (lean::is_scalar(x_195)) { - x_212 = lean::alloc_cnstr(1, 1, 0); -} else { - x_212 = x_195; -} -lean::cnstr_set(x_212, 0, x_211); -x_213 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_213, 0, x_145); -lean::cnstr_set(x_213, 1, x_148); -lean::cnstr_set(x_213, 2, x_212); -return x_213; -} -else -{ -obj* x_217; obj* x_218; -lean::dec(x_196); -lean::dec(x_202); -lean::dec(x_195); -x_217 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; -x_218 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_218, 0, x_145); -lean::cnstr_set(x_218, 1, x_148); -lean::cnstr_set(x_218, 2, x_217); -return x_218; -} -} -} -} -lbl_153: -{ -obj* x_219; -x_219 = l_Lean_Parser_Syntax_asNode___main(x_152); -if (lean::obj_tag(x_219) == 0) -{ -if (lean::obj_tag(x_151) == 0) -{ -obj* x_220; -x_220 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_146 = x_220; -goto lbl_147; -} -else -{ -obj* x_221; obj* x_224; -x_221 = lean::cnstr_get(x_151, 0); -lean::inc(x_221); -lean::dec(x_151); -x_224 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_148 = x_224; -x_149 = x_221; -goto lbl_150; -} -} -else -{ -obj* x_225; obj* x_227; obj* x_228; -x_225 = lean::cnstr_get(x_219, 0); -if (lean::is_exclusive(x_219)) { - lean::cnstr_set(x_219, 0, lean::box(0)); - x_227 = x_219; -} else { - lean::inc(x_225); - lean::dec(x_219); - x_227 = lean::box(0); -} -x_228 = lean::cnstr_get(x_225, 1); -lean::inc(x_228); -lean::dec(x_225); -if (lean::obj_tag(x_228) == 0) -{ -obj* x_232; -lean::dec(x_227); -x_232 = lean::box(0); -if (lean::obj_tag(x_151) == 0) -{ -x_146 = x_232; -goto lbl_147; -} -else -{ -obj* x_233; -x_233 = lean::cnstr_get(x_151, 0); -lean::inc(x_233); -lean::dec(x_151); -x_148 = x_232; -x_149 = x_233; -goto lbl_150; -} -} -else -{ -obj* x_236; -x_236 = lean::cnstr_get(x_228, 1); -lean::inc(x_236); -if (lean::obj_tag(x_236) == 0) -{ -obj* x_238; obj* x_241; obj* x_242; obj* x_245; obj* x_246; -x_238 = lean::cnstr_get(x_228, 0); -lean::inc(x_238); -lean::dec(x_228); -x_241 = l_Lean_Parser_Term_typeSpec_HasView; -x_242 = lean::cnstr_get(x_241, 0); -lean::inc(x_242); -lean::dec(x_241); -x_245 = lean::apply_1(x_242, x_238); -if (lean::is_scalar(x_227)) { - x_246 = lean::alloc_cnstr(1, 1, 0); -} else { - x_246 = x_227; -} -lean::cnstr_set(x_246, 0, x_245); -if (lean::obj_tag(x_151) == 0) -{ -x_146 = x_246; -goto lbl_147; -} -else -{ -obj* x_247; -x_247 = lean::cnstr_get(x_151, 0); -lean::inc(x_247); -lean::dec(x_151); -x_148 = x_246; -x_149 = x_247; -goto lbl_150; -} -} -else -{ -lean::dec(x_227); -lean::dec(x_228); -lean::dec(x_236); -if (lean::obj_tag(x_151) == 0) -{ -obj* x_253; -x_253 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_146 = x_253; -goto lbl_147; -} -else -{ -obj* x_254; obj* x_257; -x_254 = lean::cnstr_get(x_151, 0); -lean::inc(x_254); -lean::dec(x_151); -x_257 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; -x_148 = x_257; -x_149 = x_254; -goto lbl_150; +lean::dec(x_35); +x_141 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; +x_32 = x_141; +x_33 = x_138; +goto lbl_34; } } } @@ -21206,7 +20609,7 @@ if (lean::is_scalar(x_5)) { x_21 = x_5; } lean::cnstr_set(x_21, 0, x_20); -x_22 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_22 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; x_23 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_23, 0, x_22); lean::cnstr_set(x_23, 1, x_21); @@ -21260,7 +20663,7 @@ lean::inc(x_3); x_5 = lean::cnstr_get(x_3, 1); lean::inc(x_5); lean::dec(x_3); -x_8 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6; +x_8 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; lean::inc(x_5); x_10 = l_List_map___main___rarg(x_8, x_5); if (lean::obj_tag(x_1) == 0) @@ -21447,7 +20850,7 @@ if (lean::is_scalar(x_27)) { x_43 = x_27; } lean::cnstr_set(x_43, 0, x_42); -x_44 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__1; +x_44 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__3; x_45 = lean::alloc_cnstr(0, 2, 0); lean::cnstr_set(x_45, 0, x_44); lean::cnstr_set(x_45, 1, x_43); @@ -21475,7 +20878,7 @@ lean::dec(x_18); x_53 = lean::cnstr_get(x_50, 1); lean::inc(x_53); lean::dec(x_50); -x_56 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6; +x_56 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; x_57 = l_List_map___main___rarg(x_56, x_53); if (lean::obj_tag(x_1) == 0) { @@ -26322,7 +25725,7 @@ if (lean::obj_tag(x_1) == 0) obj* x_2; obj* x_3; obj* x_4; obj* x_5; x_2 = l_Lean_Parser_ident_Parser_View___rarg___lambda__1___closed__1; x_3 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_4 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_4 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_5 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_5, 0, x_2); lean::cnstr_set(x_5, 1, x_3); @@ -26395,7 +25798,7 @@ lean::dec(x_17); lean::dec(x_9); x_34 = l_Lean_Parser_ident_Parser_View___rarg___lambda__1___closed__1; x_35 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_36 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_36 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_37 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_37, 0, x_34); lean::cnstr_set(x_37, 1, x_35); @@ -26421,7 +25824,7 @@ if (lean::obj_tag(x_1) == 0) obj* x_47; obj* x_48; obj* x_49; lean::dec(x_40); x_47 = l_Lean_Parser_ident_Parser_View___rarg___lambda__1___closed__1; -x_48 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_48 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_49 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_49, 0, x_47); lean::cnstr_set(x_49, 1, x_45); @@ -26486,7 +25889,7 @@ lean::dec(x_50); lean::dec(x_40); lean::dec(x_55); x_71 = l_Lean_Parser_ident_Parser_View___rarg___lambda__1___closed__1; -x_72 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_72 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_73 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_73, 0, x_71); lean::cnstr_set(x_73, 1, x_45); @@ -26606,7 +26009,7 @@ if (lean::obj_tag(x_37) == 0) { obj* x_38; obj* x_39; obj* x_40; x_38 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_39 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_39 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_40 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_40, 0, x_18); lean::cnstr_set(x_40, 1, x_38); @@ -26676,7 +26079,7 @@ lean::dec(x_51); lean::dec(x_43); lean::dec(x_44); x_67 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_68 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_68 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_69 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_69, 0, x_18); lean::cnstr_set(x_69, 1, x_67); @@ -26697,7 +26100,7 @@ if (lean::obj_tag(x_73) == 0) { obj* x_74; obj* x_75; obj* x_76; x_74 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_75 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_75 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_76 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_76, 0, x_18); lean::cnstr_set(x_76, 1, x_74); @@ -26767,7 +26170,7 @@ lean::dec(x_79); lean::dec(x_87); lean::dec(x_80); x_103 = l_Lean_Parser_Term_letLhsId_HasView_x_27___lambda__1___closed__1; -x_104 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_104 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_105 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_105, 0, x_18); lean::cnstr_set(x_105, 1, x_103); @@ -26797,7 +26200,7 @@ x_115 = l_Lean_Parser_Syntax_asNode___main(x_114); if (lean::obj_tag(x_115) == 0) { obj* x_116; obj* x_117; -x_116 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_116 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_117 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_117, 0, x_18); lean::cnstr_set(x_117, 1, x_113); @@ -26864,7 +26267,7 @@ obj* x_142; obj* x_143; lean::dec(x_127); lean::dec(x_121); lean::dec(x_120); -x_142 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_142 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_143 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_143, 0, x_18); lean::cnstr_set(x_143, 1, x_113); @@ -26884,7 +26287,7 @@ x_147 = l_Lean_Parser_Syntax_asNode___main(x_144); if (lean::obj_tag(x_147) == 0) { obj* x_148; obj* x_149; -x_148 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_148 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_149 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_149, 0, x_18); lean::cnstr_set(x_149, 1, x_113); @@ -26951,7 +26354,7 @@ obj* x_174; obj* x_175; lean::dec(x_152); lean::dec(x_159); lean::dec(x_153); -x_174 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_174 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_175 = lean::alloc_cnstr(0, 3, 0); lean::cnstr_set(x_175, 0, x_18); lean::cnstr_set(x_175, 1, x_113); @@ -32318,7 +31721,7 @@ x_18 = l_Lean_Parser_Syntax_asNode___main(x_17); if (lean::obj_tag(x_18) == 0) { obj* x_19; -x_19 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_19 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_15 = x_19; goto lbl_16; } @@ -32374,7 +31777,7 @@ obj* x_41; lean::dec(x_22); lean::dec(x_23); lean::dec(x_27); -x_41 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_41 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_15 = x_41; goto lbl_16; } @@ -32668,7 +32071,7 @@ x_60 = l_Lean_Parser_Syntax_asNode___main(x_50); if (lean::obj_tag(x_60) == 0) { obj* x_61; -x_61 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_61 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_58 = x_61; goto lbl_59; } @@ -32726,7 +32129,7 @@ obj* x_84; lean::dec(x_64); lean::dec(x_70); lean::dec(x_65); -x_84 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_84 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_58 = x_84; goto lbl_59; } @@ -38334,7 +37737,7 @@ x_4 = l_Lean_Parser_Syntax_asNode___main(x_3); if (lean::obj_tag(x_4) == 0) { obj* x_5; -x_5 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_5 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_1 = x_5; goto lbl_2; } @@ -38390,7 +37793,7 @@ obj* x_27; lean::dec(x_13); lean::dec(x_8); lean::dec(x_9); -x_27 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_27 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_1 = x_27; goto lbl_2; } @@ -38566,7 +37969,7 @@ x_55 = l_Lean_Parser_Syntax_asNode___main(x_45); if (lean::obj_tag(x_55) == 0) { obj* x_56; -x_56 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_56 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_53 = x_56; goto lbl_54; } @@ -38624,7 +38027,7 @@ obj* x_79; lean::dec(x_65); lean::dec(x_60); lean::dec(x_59); -x_79 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4; +x_79 = l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__2; x_53 = x_79; goto lbl_54; } @@ -42376,7 +41779,7 @@ x_8 = lean::cnstr_get(x_7, 0); lean::inc(x_8); if (lean::obj_tag(x_8) == 0) { -obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; uint8 x_21; +obj* x_10; obj* x_12; obj* x_13; obj* x_15; obj* x_17; obj* x_19; obj* x_20; uint8 x_21; uint8 x_23; x_10 = lean::cnstr_get(x_7, 1); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); @@ -42407,211 +41810,228 @@ x_21 = l_Lean_Parser_Syntax_isOfKind___main(x_20, x_13); lean::dec(x_13); if (x_21 == 0) { -obj* x_25; obj* x_26; obj* x_28; obj* x_30; obj* x_31; +uint8 x_25; +x_25 = 0; +x_23 = x_25; +goto lbl_24; +} +else +{ +uint8 x_26; +x_26 = 1; +x_23 = x_26; +goto lbl_24; +} +lbl_24: +{ +if (x_23 == 0) +{ +obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; lean::dec(x_12); lean::dec(x_19); -x_25 = l_Lean_Parser_ParsecT_failure___at_Lean_Parser_token___spec__4___rarg(x_15, x_10); -x_26 = lean::cnstr_get(x_25, 0); -x_28 = lean::cnstr_get(x_25, 1); -if (lean::is_exclusive(x_25)) { - lean::cnstr_set(x_25, 0, lean::box(0)); - lean::cnstr_set(x_25, 1, lean::box(0)); - x_30 = x_25; +x_29 = l_Lean_Parser_ParsecT_failure___at_Lean_Parser_token___spec__4___rarg(x_15, x_10); +x_30 = lean::cnstr_get(x_29, 0); +x_32 = lean::cnstr_get(x_29, 1); +if (lean::is_exclusive(x_29)) { + 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_26); - lean::inc(x_28); - lean::dec(x_25); - x_30 = lean::box(0); + lean::inc(x_30); + lean::inc(x_32); + lean::dec(x_29); + x_34 = lean::box(0); } -x_31 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_17, x_26); -if (lean::obj_tag(x_31) == 0) +x_35 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_17, x_30); +if (lean::obj_tag(x_35) == 0) { -obj* x_33; obj* x_35; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_43; obj* x_45; obj* x_46; obj* x_47; -lean::dec(x_30); -x_33 = lean::cnstr_get(x_31, 1); -lean::inc(x_33); -x_35 = lean::cnstr_get(x_31, 2); -lean::inc(x_35); -lean::dec(x_31); -x_38 = l_Lean_Parser_Term_sortApp; -x_39 = l_Lean_Parser_Term_sortApp_Parser___closed__1; -x_40 = l_Lean_Parser_Combinators_node___at_Lean_Parser_Term_sortApp_Parser_Lean_Parser_HasTokens___spec__3(x_38, x_39, x_0, x_1, x_2, x_3, x_33, x_28); -x_41 = lean::cnstr_get(x_40, 0); -x_43 = lean::cnstr_get(x_40, 1); -if (lean::is_exclusive(x_40)) { - x_45 = x_40; +obj* x_37; obj* x_39; obj* x_42; obj* x_43; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_51; +lean::dec(x_34); +x_37 = lean::cnstr_get(x_35, 1); +lean::inc(x_37); +x_39 = lean::cnstr_get(x_35, 2); +lean::inc(x_39); +lean::dec(x_35); +x_42 = l_Lean_Parser_Term_sortApp; +x_43 = l_Lean_Parser_Term_sortApp_Parser___closed__1; +x_44 = l_Lean_Parser_Combinators_node___at_Lean_Parser_Term_sortApp_Parser_Lean_Parser_HasTokens___spec__3(x_42, x_43, x_0, x_1, x_2, x_3, x_37, x_32); +x_45 = lean::cnstr_get(x_44, 0); +x_47 = lean::cnstr_get(x_44, 1); +if (lean::is_exclusive(x_44)) { + x_49 = x_44; } else { - lean::inc(x_41); - lean::inc(x_43); - lean::dec(x_40); - x_45 = lean::box(0); + lean::inc(x_45); + lean::inc(x_47); + lean::dec(x_44); + x_49 = lean::box(0); } -x_46 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_35, x_41); -if (lean::is_scalar(x_45)) { - x_47 = lean::alloc_cnstr(0, 2, 0); +x_50 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_39, x_45); +if (lean::is_scalar(x_49)) { + x_51 = lean::alloc_cnstr(0, 2, 0); } else { - x_47 = x_45; + x_51 = x_49; } -lean::cnstr_set(x_47, 0, x_46); -lean::cnstr_set(x_47, 1, x_43); -return x_47; +lean::cnstr_set(x_51, 0, x_50); +lean::cnstr_set(x_51, 1, x_47); +return x_51; } else { -obj* x_52; uint8 x_54; obj* x_55; obj* x_56; obj* x_57; obj* x_58; +obj* x_56; uint8 x_58; obj* x_59; obj* x_60; obj* x_61; obj* x_62; lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); -x_52 = lean::cnstr_get(x_31, 0); -x_54 = lean::cnstr_get_scalar(x_31, sizeof(void*)*1); -if (lean::is_exclusive(x_31)) { - x_55 = x_31; +x_56 = lean::cnstr_get(x_35, 0); +x_58 = lean::cnstr_get_scalar(x_35, sizeof(void*)*1); +if (lean::is_exclusive(x_35)) { + x_59 = x_35; } else { - lean::inc(x_52); - lean::dec(x_31); - x_55 = lean::box(0); + lean::inc(x_56); + lean::dec(x_35); + x_59 = lean::box(0); } -if (lean::is_scalar(x_55)) { - x_56 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_59)) { + x_60 = lean::alloc_cnstr(1, 1, 1); } else { - x_56 = x_55; + x_60 = x_59; } -lean::cnstr_set(x_56, 0, x_52); -lean::cnstr_set_scalar(x_56, sizeof(void*)*1, x_54); -x_57 = x_56; -if (lean::is_scalar(x_30)) { - x_58 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_60, 0, x_56); +lean::cnstr_set_scalar(x_60, sizeof(void*)*1, x_58); +x_61 = x_60; +if (lean::is_scalar(x_34)) { + x_62 = lean::alloc_cnstr(0, 2, 0); } else { - x_58 = x_30; + x_62 = x_34; } -lean::cnstr_set(x_58, 0, x_57); -lean::cnstr_set(x_58, 1, x_28); -return x_58; +lean::cnstr_set(x_62, 0, x_61); +lean::cnstr_set(x_62, 1, x_32); +return x_62; } } else { -obj* x_59; obj* x_60; obj* x_61; obj* x_62; -x_59 = lean::box(0); -x_60 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; +obj* x_63; obj* x_64; obj* x_65; obj* x_66; +x_63 = lean::box(0); +x_64 = l_Lean_Parser_Parsec_Result_mkEps___rarg___closed__1; if (lean::is_scalar(x_19)) { - x_61 = lean::alloc_cnstr(0, 3, 0); + x_65 = lean::alloc_cnstr(0, 3, 0); } else { - x_61 = x_19; + x_65 = x_19; } -lean::cnstr_set(x_61, 0, x_59); -lean::cnstr_set(x_61, 1, x_15); -lean::cnstr_set(x_61, 2, x_60); -x_62 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_17, x_61); -if (lean::obj_tag(x_62) == 0) +lean::cnstr_set(x_65, 0, x_63); +lean::cnstr_set(x_65, 1, x_15); +lean::cnstr_set(x_65, 2, x_64); +x_66 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_17, x_65); +if (lean::obj_tag(x_66) == 0) { -obj* x_64; obj* x_66; obj* x_69; obj* x_70; obj* x_71; obj* x_72; obj* x_74; obj* x_76; obj* x_77; obj* x_78; +obj* x_68; obj* x_70; obj* x_73; obj* x_74; obj* x_75; obj* x_76; obj* x_78; obj* x_80; obj* x_81; obj* x_82; lean::dec(x_12); -x_64 = lean::cnstr_get(x_62, 1); -lean::inc(x_64); -x_66 = lean::cnstr_get(x_62, 2); -lean::inc(x_66); -lean::dec(x_62); -x_69 = l_Lean_Parser_Term_sortApp; -x_70 = l_Lean_Parser_Term_sortApp_Parser___closed__1; -x_71 = l_Lean_Parser_Combinators_node___at_Lean_Parser_Term_sortApp_Parser_Lean_Parser_HasTokens___spec__3(x_69, x_70, x_0, x_1, x_2, x_3, x_64, x_10); -x_72 = lean::cnstr_get(x_71, 0); -x_74 = lean::cnstr_get(x_71, 1); -if (lean::is_exclusive(x_71)) { - x_76 = x_71; +x_68 = lean::cnstr_get(x_66, 1); +lean::inc(x_68); +x_70 = lean::cnstr_get(x_66, 2); +lean::inc(x_70); +lean::dec(x_66); +x_73 = l_Lean_Parser_Term_sortApp; +x_74 = l_Lean_Parser_Term_sortApp_Parser___closed__1; +x_75 = l_Lean_Parser_Combinators_node___at_Lean_Parser_Term_sortApp_Parser_Lean_Parser_HasTokens___spec__3(x_73, x_74, x_0, x_1, x_2, x_3, x_68, x_10); +x_76 = lean::cnstr_get(x_75, 0); +x_78 = lean::cnstr_get(x_75, 1); +if (lean::is_exclusive(x_75)) { + x_80 = x_75; } else { - lean::inc(x_72); - lean::inc(x_74); - lean::dec(x_71); - x_76 = lean::box(0); + lean::inc(x_76); + lean::inc(x_78); + lean::dec(x_75); + x_80 = lean::box(0); } -x_77 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_66, x_72); -if (lean::is_scalar(x_76)) { - x_78 = lean::alloc_cnstr(0, 2, 0); +x_81 = l_Lean_Parser_ParsecT_bindMkRes___rarg(x_70, x_76); +if (lean::is_scalar(x_80)) { + x_82 = lean::alloc_cnstr(0, 2, 0); } else { - x_78 = x_76; + x_82 = x_80; } -lean::cnstr_set(x_78, 0, x_77); -lean::cnstr_set(x_78, 1, x_74); -return x_78; +lean::cnstr_set(x_82, 0, x_81); +lean::cnstr_set(x_82, 1, x_78); +return x_82; } else { -obj* x_83; uint8 x_85; obj* x_86; obj* x_87; obj* x_88; obj* x_89; +obj* x_87; uint8 x_89; obj* x_90; obj* x_91; obj* x_92; obj* x_93; lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); -x_83 = lean::cnstr_get(x_62, 0); -x_85 = lean::cnstr_get_scalar(x_62, sizeof(void*)*1); -if (lean::is_exclusive(x_62)) { - x_86 = x_62; +x_87 = lean::cnstr_get(x_66, 0); +x_89 = lean::cnstr_get_scalar(x_66, sizeof(void*)*1); +if (lean::is_exclusive(x_66)) { + x_90 = x_66; } else { - lean::inc(x_83); - lean::dec(x_62); - x_86 = lean::box(0); + lean::inc(x_87); + lean::dec(x_66); + x_90 = lean::box(0); } -if (lean::is_scalar(x_86)) { - x_87 = lean::alloc_cnstr(1, 1, 1); +if (lean::is_scalar(x_90)) { + x_91 = lean::alloc_cnstr(1, 1, 1); } else { - x_87 = x_86; + x_91 = x_90; } -lean::cnstr_set(x_87, 0, x_83); -lean::cnstr_set_scalar(x_87, sizeof(void*)*1, x_85); -x_88 = x_87; +lean::cnstr_set(x_91, 0, x_87); +lean::cnstr_set_scalar(x_91, sizeof(void*)*1, x_89); +x_92 = x_91; if (lean::is_scalar(x_12)) { - x_89 = lean::alloc_cnstr(0, 2, 0); + x_93 = lean::alloc_cnstr(0, 2, 0); } else { - x_89 = x_12; + x_93 = x_12; +} +lean::cnstr_set(x_93, 0, x_92); +lean::cnstr_set(x_93, 1, x_10); +return x_93; } -lean::cnstr_set(x_89, 0, x_88); -lean::cnstr_set(x_89, 1, x_10); -return x_89; } } } else { -obj* x_94; obj* x_96; obj* x_97; uint8 x_99; obj* x_100; obj* x_101; obj* x_102; obj* x_103; +obj* x_98; obj* x_100; obj* x_101; uint8 x_103; obj* x_104; obj* x_105; obj* x_106; obj* x_107; lean::dec(x_1); lean::dec(x_3); lean::dec(x_0); lean::dec(x_2); -x_94 = lean::cnstr_get(x_7, 1); +x_98 = lean::cnstr_get(x_7, 1); if (lean::is_exclusive(x_7)) { lean::cnstr_release(x_7, 0); - x_96 = x_7; + x_100 = x_7; } else { - lean::inc(x_94); + lean::inc(x_98); lean::dec(x_7); - x_96 = lean::box(0); -} -x_97 = lean::cnstr_get(x_8, 0); -x_99 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); -if (lean::is_exclusive(x_8)) { - x_100 = x_8; -} else { - lean::inc(x_97); - lean::dec(x_8); x_100 = lean::box(0); } +x_101 = lean::cnstr_get(x_8, 0); +x_103 = lean::cnstr_get_scalar(x_8, sizeof(void*)*1); +if (lean::is_exclusive(x_8)) { + x_104 = x_8; +} else { + lean::inc(x_101); + lean::dec(x_8); + x_104 = lean::box(0); +} +if (lean::is_scalar(x_104)) { + x_105 = lean::alloc_cnstr(1, 1, 1); +} else { + x_105 = x_104; +} +lean::cnstr_set(x_105, 0, x_101); +lean::cnstr_set_scalar(x_105, sizeof(void*)*1, x_103); +x_106 = x_105; if (lean::is_scalar(x_100)) { - x_101 = lean::alloc_cnstr(1, 1, 1); + x_107 = lean::alloc_cnstr(0, 2, 0); } else { - x_101 = x_100; + x_107 = x_100; } -lean::cnstr_set(x_101, 0, x_97); -lean::cnstr_set_scalar(x_101, sizeof(void*)*1, x_99); -x_102 = x_101; -if (lean::is_scalar(x_96)) { - x_103 = lean::alloc_cnstr(0, 2, 0); -} else { - x_103 = x_96; -} -lean::cnstr_set(x_103, 0, x_102); -lean::cnstr_set(x_103, 1, x_94); -return x_103; +lean::cnstr_set(x_107, 0, x_106); +lean::cnstr_set(x_107, 1, x_98); +return x_107; } } } @@ -49609,10 +49029,6 @@ lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1_ lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__4); l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5 = _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5(); lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__5); - l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6 = _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6(); -lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__6); - l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7 = _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7(); -lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__1___closed__7); l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__2___closed__1 = _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__2___closed__1(); lean::mark_persistent(l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__2___closed__1); l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__2___closed__2 = _init_l_Lean_Parser_Term_binderContent_HasView_x_27___lambda__2___closed__2();