From c2d2fd98babce1cae8ca9ec082225d726b316fc8 Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Sat, 25 Jan 2020 18:15:11 -0800 Subject: [PATCH] chore: update stage0 --- stage0/src/Init/Lean/Elab/Quotation.lean | 8 +- stage0/src/Init/Lean/Elab/TermBinders.lean | 4 +- stage0/src/Init/Lean/Parser/Command.lean | 2 +- stage0/src/Init/Lean/Parser/Syntax.lean | 2 +- stage0/src/Init/Lean/Parser/Term.lean | 28 +- stage0/stdlib/Init/Lean/Elab/Quotation.c | 125 +- stage0/stdlib/Init/Lean/Elab/Syntax.c | 16 +- stage0/stdlib/Init/Lean/Elab/TermBinders.c | 776 +- stage0/stdlib/Init/Lean/Parser/Command.c | 756 +- stage0/stdlib/Init/Lean/Parser/Syntax.c | 839 +-- stage0/stdlib/Init/Lean/Parser/Term.c | 7787 +++++++++++--------- 11 files changed, 4615 insertions(+), 5728 deletions(-) diff --git a/stage0/src/Init/Lean/Elab/Quotation.lean b/stage0/src/Init/Lean/Elab/Quotation.lean index aa357adb21..68e5f2141b 100644 --- a/stage0/src/Init/Lean/Elab/Quotation.lean +++ b/stage0/src/Init/Lean/Elab/Quotation.lean @@ -324,13 +324,13 @@ private def letBindRhss (cont : List Alt → TermElabM Syntax) : List Alt → Li def match_syntax.expand (stx : Syntax) : TermElabM Syntax := do let discr := stx.getArg 1; -let alts := stx.getArg 3; -alts ← alts.getArgs.mapM $ fun alt => do { - let pats := alt.getArg 1; +let alts := stx.getArg 4; +alts ← alts.getArgs.getSepElems.mapM $ fun alt => do { + let pats := alt.getArg 0; pat ← if pats.getArgs.size == 1 then pure $ pats.getArg 0 else throwError stx "match_syntax: expected exactly one pattern per alternative"; let pat := if pat.isOfKind `Lean.Parser.Term.stxQuot then pat.setArg 1 $ elimAntiquotChoices $ pat.getArg 1 else pat; - let rhs := alt.getArg 3; + let rhs := alt.getArg 2; pure ([pat], rhs) }; -- letBindRhss (compileStxMatch stx [discr]) alts.toList [] diff --git a/stage0/src/Init/Lean/Elab/TermBinders.lean b/stage0/src/Init/Lean/Elab/TermBinders.lean index 3830ab5515..20f7984693 100644 --- a/stage0/src/Init/Lean/Elab/TermBinders.lean +++ b/stage0/src/Init/Lean/Elab/TermBinders.lean @@ -305,7 +305,8 @@ let type := expandOptType ref (decl.getArg 2); let val := decl.getArg 4; elabLetDeclAux ref n binders type val body expectedType? -@[builtinTermElab letDecl] def elabLetDecl : TermElab := +/- +@[builtinTermElab «let»] def elabLetDecl : TermElab := fun stx expectedType? => match_syntax stx with | `(let $id $args* := $val; $body) => elabLetDeclAux stx id.getId args (mkHole stx) val body expectedType? @@ -317,6 +318,7 @@ fun stx expectedType? => match_syntax stx with stx ← `(let $id:ident := $val; $body); elabTerm stx expectedType? | _ => throwUnsupportedSyntax +-/ @[init] private def regTraceClasses : IO Unit := do registerTraceClass `Elab.let; diff --git a/stage0/src/Init/Lean/Parser/Command.lean b/stage0/src/Init/Lean/Parser/Command.lean index 24b7a4c633..cfd18a8223 100644 --- a/stage0/src/Init/Lean/Parser/Command.lean +++ b/stage0/src/Init/Lean/Parser/Command.lean @@ -46,7 +46,7 @@ def declId := parser! ident >> optional (".{" >> sepBy1 ident ", " >> def declSig := parser! many Term.bracktedBinder >> Term.typeSpec def optDeclSig := parser! many Term.bracktedBinder >> Term.optType def declValSimple := parser! " := " >> termParser -def declValEqns := parser! many1Indent Term.equation "equations must be indented" +def declValEqns := parser! Term.matchAlts false def declVal := declValSimple <|> declValEqns def «abbrev» := parser! "abbrev " >> declId >> optDeclSig >> declVal def «def» := parser! "def " >> declId >> optDeclSig >> declVal diff --git a/stage0/src/Init/Lean/Parser/Syntax.lean b/stage0/src/Init/Lean/Parser/Syntax.lean index 80bc7d36d5..0f7f821905 100644 --- a/stage0/src/Init/Lean/Parser/Syntax.lean +++ b/stage0/src/Init/Lean/Parser/Syntax.lean @@ -61,7 +61,7 @@ def identPrec := parser! ident >> optPrecedence -- TODO: remove " := " after old frontend is gone @[builtinCommandParser] def «notation» := parser! "notation" >> many (strLitPrec <|> quotedSymbolPrec <|> identPrec) >> (" := " <|> darrow) >> termParser -@[builtinCommandParser] def «macro_rules» := parser! "macro_rules" >> many1Indent Term.matchAlt "'match' alternatives must be indented" +@[builtinCommandParser] def «macro_rules» := parser! "macro_rules" >> Term.matchAlts @[builtinCommandParser] def «syntax» := parser! "syntax " >> optional ("[" >> ident >> "]") >> many1 syntaxParser >> " : " >> ident @[builtinCommandParser] def syntaxCat := parser! "declare_syntax_cat " >> ident def macroArgType := nonReservedSymbol "ident" <|> nonReservedSymbol "num" <|> nonReservedSymbol "str" <|> nonReservedSymbol "char" <|> (ident >> optPrecedence) diff --git a/stage0/src/Init/Lean/Parser/Term.lean b/stage0/src/Init/Lean/Parser/Term.lean index bdbd51437f..b2e7b368da 100644 --- a/stage0/src/Init/Lean/Parser/Term.lean +++ b/stage0/src/Init/Lean/Parser/Term.lean @@ -79,8 +79,17 @@ def bracktedBinder (requireType := false) := explicitBinder requireType <|> impl @[builtinTermParser] def depArrow := parser! bracktedBinder true >> unicodeSymbolCheckPrec " → " " -> " 25 >> termParser def simpleBinder := parser! many1 binderIdent @[builtinTermParser] def «forall» := parser! unicodeSymbol "∀" "forall" >> many1 (simpleBinder <|> bracktedBinder) >> ", " >> termParser -def matchAlt := parser! " | " >> sepBy1 termParser ", " >> darrow >> termParser -@[builtinTermParser] def «match» := parser! "match " >> sepBy1 termParser ", " >> optType >> " with " >> many1Indent matchAlt "'match' alternatives must be indented" + +def matchAlt : Parser := + let k := `Lean.Parser.Term.matchAlt; + mkAntiquot "matchAlt" k false <|> node k (sepBy1 termParser ", " >> darrow >> termParser) + +def matchAlts (optionalFirstBar := true) : Parser := +withPosition $ fun pos => + (if optionalFirstBar then optional "|" else "|") >> + sepBy1 matchAlt (checkColGe pos.column "alternatives must be indented" >> "|") + +@[builtinTermParser] def «match» := parser! "match " >> sepBy1 termParser ", " >> optType >> " with " >> matchAlts @[builtinTermParser] def «nomatch» := parser! "nomatch " >> termParser @[builtinTermParser] def «parser!» := parser! "parser! " >> termParser @[builtinTermParser] def «tparser!» := parser! "tparser! " >> termParser @@ -88,20 +97,15 @@ def matchAlt := parser! " | " >> sepBy1 termParser ", " >> darrow >> termParser @[builtinTermParser] def quotedName := parser! nameLit -- NOTE: syntax quotations are defined in Init.Lean.Parser.Command @[builtinTermParser] def antiquot := (mkAntiquot "term" none true : Parser) -@[builtinTermParser] def «match_syntax» := parser! "match_syntax" >> termParser >> " with " >> many1Indent matchAlt "'match_syntax' alternatives must be indented" +@[builtinTermParser] def «match_syntax» := parser! "match_syntax" >> termParser >> " with " >> matchAlts /- Remark: we use `checkWsBefore` to ensure `let x[i] := e; b` is not parsed as `let x [i] := e; b` where `[i]` is an `instBinder`. -/ def letIdLhs : Parser := ident >> checkWsBefore "expected space before binders" >> many bracktedBinder >> optType def letSimpleDecl : Parser := try (letIdLhs >> " := ") >> termParser -def letPatDecl : Parser := termParser >> optType >> " := " >> termParser -@[builtinTermParser] def «let» := parser! "let " >> (letSimpleDecl <|> letPatDecl) >> "; " >> termParser - -def equation := matchAlt -def letEqnsDecl : Parser := letIdLhs >> many1Indent equation "equations must be indented" -@[builtinTermParser] def letEqns := -parser! "let " >> letEqnsDecl >> "; " >> termParser - -def letDecl := letSimpleDecl <|> letPatDecl <|> letEqnsDecl +def letPatDecl : Parser := try (termParser >> optType >> " := ") >> termParser +def letEqnsDecl : Parser := letIdLhs >> matchAlts false +def letDecl := letSimpleDecl <|> letPatDecl <|> letEqnsDecl +@[builtinTermParser] def «let» := parser! "let " >> letDecl >> "; " >> termParser @[builtinTermParser] def «let_core» := parser! "let_core " >> termParser >> ":=" >> termParser >> "; " >> termParser diff --git a/stage0/stdlib/Init/Lean/Elab/Quotation.c b/stage0/stdlib/Init/Lean/Elab/Quotation.c index e820441aa8..d127755a7d 100644 --- a/stage0/stdlib/Init/Lean/Elab/Quotation.c +++ b/stage0/stdlib/Init/Lean/Elab/Quotation.c @@ -195,6 +195,7 @@ lean_object* l_Lean_Elab_Term_Quotation_oldExpandStxQuot___closed__1; lean_object* l_Lean_Elab_Term_Quotation_stxQuot_expand___closed__30; lean_object* l_List_head_x21___at___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___spec__2(lean_object*); extern lean_object* l_Lean_mkTermIdFromIdent___closed__2; +lean_object* l_Array_foldlStepMAux___main___at_Lean_Elab_Term_elabParen___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkMData(lean_object*, lean_object*); lean_object* l_Lean_Syntax_isSimpleTermId_x3f(lean_object*, uint8_t); lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19; @@ -13437,56 +13438,56 @@ return x_10; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; x_11 = lean_array_fget(x_3, x_2); x_12 = lean_box(0); x_13 = x_12; x_14 = lean_array_fset(x_3, x_2, x_13); -x_15 = lean_unsigned_to_nat(1u); +x_15 = lean_unsigned_to_nat(0u); x_16 = l_Lean_Syntax_getArg(x_11, x_15); x_17 = l_Lean_Syntax_getArgs(x_16); x_18 = lean_array_get_size(x_17); lean_dec(x_17); -x_19 = lean_nat_dec_eq(x_18, x_15); +x_19 = lean_unsigned_to_nat(1u); +x_20 = lean_nat_dec_eq(x_18, x_19); lean_dec(x_18); -if (x_19 == 0) +if (x_20 == 0) { -lean_object* x_20; lean_object* x_21; uint8_t x_22; +lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_dec(x_16); lean_dec(x_14); lean_dec(x_11); lean_dec(x_2); -x_20 = l_Array_umapMAux___main___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__1___closed__3; -x_21 = l_Lean_Elab_Term_throwError___rarg(x_1, x_20, x_4, x_5); -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) +x_21 = l_Array_umapMAux___main___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__1___closed__3; +x_22 = l_Lean_Elab_Term_throwError___rarg(x_1, x_21, x_4, x_5); +x_23 = !lean_is_exclusive(x_22); +if (x_23 == 0) { -return x_21; +return x_22; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_21, 0); -x_24 = lean_ctor_get(x_21, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_22, 0); +x_25 = lean_ctor_get(x_22, 1); +lean_inc(x_25); lean_inc(x_24); -lean_inc(x_23); -lean_dec(x_21); -x_25 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -return x_25; +lean_dec(x_22); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_26 = lean_unsigned_to_nat(0u); -x_27 = l_Lean_Syntax_getArg(x_16, x_26); +lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_27 = l_Lean_Syntax_getArg(x_16, x_15); lean_dec(x_16); x_28 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__2; lean_inc(x_27); x_29 = l_Lean_Syntax_isOfKind(x_27, x_28); -x_30 = lean_unsigned_to_nat(3u); +x_30 = lean_unsigned_to_nat(2u); x_31 = l_Lean_Syntax_getArg(x_11, x_30); x_32 = lean_box(0); if (x_29 == 0) @@ -13498,7 +13499,7 @@ lean_ctor_set(x_33, 1, x_32); x_34 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_34, 0, x_33); lean_ctor_set(x_34, 1, x_31); -x_35 = lean_nat_add(x_2, x_15); +x_35 = lean_nat_add(x_2, x_19); x_36 = x_34; lean_dec(x_11); x_37 = lean_array_fset(x_14, x_2, x_36); @@ -13510,16 +13511,16 @@ goto _start; else { lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_39 = l_Lean_Syntax_getArg(x_27, x_15); +x_39 = l_Lean_Syntax_getArg(x_27, x_19); x_40 = l___private_Init_Lean_Elab_Quotation_4__elimAntiquotChoices___main(x_39); -x_41 = l_Lean_Syntax_setArg(x_27, x_15, x_40); +x_41 = l_Lean_Syntax_setArg(x_27, x_19, x_40); x_42 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_42, 0, x_41); lean_ctor_set(x_42, 1, x_32); x_43 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_43, 0, x_42); lean_ctor_set(x_43, 1, x_31); -x_44 = lean_nat_add(x_2, x_15); +x_44 = lean_nat_add(x_2, x_19); x_45 = x_43; lean_dec(x_11); x_46 = lean_array_fset(x_14, x_2, x_45); @@ -13535,55 +13536,59 @@ goto _start; lean_object* l_Lean_Elab_Term_Quotation_match__syntax_expand(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_4 = lean_unsigned_to_nat(1u); x_5 = l_Lean_Syntax_getArg(x_1, x_4); -x_6 = lean_unsigned_to_nat(3u); +x_6 = lean_unsigned_to_nat(4u); x_7 = l_Lean_Syntax_getArg(x_1, x_6); x_8 = l_Lean_Syntax_getArgs(x_7); lean_dec(x_7); -x_9 = lean_unsigned_to_nat(0u); +x_9 = lean_unsigned_to_nat(2u); +x_10 = lean_unsigned_to_nat(0u); +x_11 = l_Array_empty___closed__1; +x_12 = l_Array_foldlStepMAux___main___at_Lean_Elab_Term_elabParen___spec__1(x_9, x_8, x_10, x_11); +lean_dec(x_8); lean_inc(x_2); -x_10 = l_Array_umapMAux___main___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__1(x_1, x_9, x_8, x_2, x_3); -if (lean_obj_tag(x_10) == 0) +x_13 = l_Array_umapMAux___main___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__1(x_1, x_10, x_12, x_2, x_3); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = lean_box(0); -x_14 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_14, 0, x_5); -lean_ctor_set(x_14, 1, x_13); -x_15 = l_Array_toList___rarg(x_11); -lean_dec(x_11); -x_16 = l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main(x_1, x_14, x_15, x_2, x_12); -return x_16; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_box(0); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_5); +lean_ctor_set(x_17, 1, x_16); +x_18 = l_Array_toList___rarg(x_14); +lean_dec(x_14); +x_19 = l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main(x_1, x_17, x_18, x_2, x_15); +return x_19; } else { -uint8_t x_17; +uint8_t x_20; lean_dec(x_5); lean_dec(x_2); -x_17 = !lean_is_exclusive(x_10); -if (x_17 == 0) +x_20 = !lean_is_exclusive(x_13); +if (x_20 == 0) { -return x_10; +return x_13; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_10, 0); -x_19 = lean_ctor_get(x_10, 1); -lean_inc(x_19); -lean_inc(x_18); -lean_dec(x_10); -x_20 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_13, 0); +x_22 = lean_ctor_get(x_13, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_13); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +return x_23; } } } diff --git a/stage0/stdlib/Init/Lean/Elab/Syntax.c b/stage0/stdlib/Init/Lean/Elab/Syntax.c index 544ef5a6f2..3c8a72436e 100644 --- a/stage0/stdlib/Init/Lean/Elab/Syntax.c +++ b/stage0/stdlib/Init/Lean/Elab/Syntax.c @@ -225,7 +225,6 @@ extern lean_object* l_Lean_Parser_Command_def___elambda__1___closed__1; lean_object* l___private_Init_Lean_Elab_Syntax_3__markAsTrailingParser(lean_object*, uint8_t, lean_object*); lean_object* l_Array_umapMAux___main___at___private_Init_Lean_Elab_Syntax_7__antiquote___main___spec__1(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_strLitKind___closed__1; -extern lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__1; extern lean_object* l_Lean_Elab_Term_mkConst___closed__4; @@ -431,6 +430,7 @@ extern lean_object* l_Lean_mkOptionalNode___closed__1; lean_object* l_Lean_Elab_Command_elabSyntax___closed__13; lean_object* l_Lean_Elab_Term_toParserDescrAux___main___closed__57; lean_object* l___private_Init_Lean_Elab_Syntax_5__withNoPushLeading___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); +extern lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; lean_object* l_Lean_Elab_Term_toParserDescrAux___main___closed__122; lean_object* l___regBuiltinMacro_Lean_Elab_Command_expandNotation(lean_object*); lean_object* l_Lean_Elab_Term_toParserDescrAux___main___closed__94; @@ -9443,7 +9443,7 @@ lean_object* _init_l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__18() _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2 = l___private_Init_Lean_Elab_Quotation_11__letBindRhss___main___closed__11; x_3 = lean_array_push(x_1, x_2); return x_3; @@ -12264,7 +12264,7 @@ x_57 = lean_array_push(x_41, x_56); x_58 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_58, 0, x_37); lean_ctor_set(x_58, 1, x_57); -x_59 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_59 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_60 = lean_array_push(x_59, x_58); x_61 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_62 = lean_array_push(x_60, x_61); @@ -12344,7 +12344,7 @@ x_104 = lean_array_push(x_88, x_103); x_105 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_105, 0, x_84); lean_ctor_set(x_105, 1, x_104); -x_106 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_106 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_107 = lean_array_push(x_106, x_105); x_108 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_109 = lean_array_push(x_107, x_108); @@ -13172,7 +13172,7 @@ x_72 = lean_array_push(x_56, x_71); x_73 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_73, 0, x_52); lean_ctor_set(x_73, 1, x_72); -x_74 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_74 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_75 = lean_array_push(x_74, x_73); x_76 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_77 = lean_array_push(x_75, x_76); @@ -13246,7 +13246,7 @@ x_119 = lean_array_push(x_103, x_118); x_120 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_120, 0, x_99); lean_ctor_set(x_120, 1, x_119); -x_121 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_121 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_122 = lean_array_push(x_121, x_120); x_123 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_124 = lean_array_push(x_122, x_123); @@ -13334,7 +13334,7 @@ x_170 = lean_array_push(x_154, x_169); x_171 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_171, 0, x_150); lean_ctor_set(x_171, 1, x_170); -x_172 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_172 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_173 = lean_array_push(x_172, x_171); x_174 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_175 = lean_array_push(x_173, x_174); @@ -13409,7 +13409,7 @@ x_218 = lean_array_push(x_202, x_217); x_219 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_219, 0, x_198); lean_ctor_set(x_219, 1, x_218); -x_220 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_220 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_221 = lean_array_push(x_220, x_219); x_222 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_223 = lean_array_push(x_221, x_222); diff --git a/stage0/stdlib/Init/Lean/Elab/TermBinders.c b/stage0/stdlib/Init/Lean/Elab/TermBinders.c index 511e5ea36d..ede6401984 100644 --- a/stage0/stdlib/Init/Lean/Elab/TermBinders.c +++ b/stage0/stdlib/Init/Lean/Elab/TermBinders.c @@ -17,9 +17,7 @@ lean_object* l_Lean_Elab_Term_elabBinder___rarg___lambda__1___boxed(lean_object* lean_object* l_Lean_Elab_Term_elabBinders(lean_object*); lean_object* l_Lean_Elab_Term_mkForall(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Elab_TermBinders_7__elabBindersAux___main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__5; lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabDepArrow___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_instantiateMVars(lean_object*, lean_object*, lean_object*, lean_object*); @@ -73,7 +71,6 @@ lean_object* l_Lean_Elab_Term_getMainModule___rarg(lean_object*); extern lean_object* l_Lean_mkAppStx___closed__8; lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l___private_Init_Lean_Elab_TermBinders_11__expandFunBinders(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2; lean_object* l___private_Init_Lean_Elab_TermBinders_4__expandBinderModifier___closed__2; lean_object* l_Lean_Elab_Term_mkFreshAnonymousIdent(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; @@ -83,7 +80,6 @@ lean_object* l_Lean_Elab_Term_getOptions(lean_object*, lean_object*); extern lean_object* l_Lean_mkTermIdFromIdent___closed__2; lean_object* l_Lean_Syntax_isSimpleTermId_x3f(lean_object*, uint8_t); lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; -lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl(lean_object*); lean_object* l___private_Init_Lean_Elab_TermBinders_12__regTraceClasses(lean_object*); lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__3; lean_object* lean_array_fget(lean_object*, lean_object*); @@ -105,8 +101,6 @@ lean_object* l___private_Init_Lean_Elab_TermBinders_6__elabBinderViews(lean_obje lean_object* l_Lean_Elab_Term_elabForall___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabLetDeclAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__4; -extern lean_object* l_Lean_Parser_Term_let__core___elambda__1___closed__7; lean_object* l_Array_umapMAux___main___at___private_Init_Lean_Elab_TermBinders_5__matchBinder___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); @@ -139,7 +133,6 @@ lean_object* l___private_Init_Lean_Elab_TermBinders_5__matchBinder___boxed(lean_ lean_object* l_Lean_Elab_Term_elabArrow___lambda__1___closed__2; lean_object* l_Lean_Elab_Term_expandOptType(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabArrow___lambda__1___closed__6; -extern lean_object* l_Lean_mkAppStx___closed__6; lean_object* l_Lean_Elab_Term_mkFreshFVarId(lean_object*); uint8_t l_coeDecidableEq(uint8_t); lean_object* l___private_Init_Lean_Elab_TermBinders_1__expandBinderType(lean_object*); @@ -174,7 +167,6 @@ lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabForall___closed__1; extern lean_object* l_Lean_Parser_Term_implicitBinder___elambda__1___closed__2; extern lean_object* l_Lean_Syntax_inhabited; lean_object* l_Lean_Elab_Term_elabArrow(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; extern lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; lean_object* l_Lean_Elab_Term_elabArrow___lambda__1___closed__5; extern lean_object* l_Lean_mkAppStx___closed__5; @@ -188,25 +180,20 @@ extern lean_object* l___private_Init_Lean_Elab_Term_5__expandCDot___closed__2; lean_object* l___private_Init_Lean_Elab_TermBinders_6__elabBinderViews___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Expr_getOptParamDefault_x3f___closed__1; lean_object* l_Lean_Elab_Term_elabLetIdDecl___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__2; extern lean_object* l_Lean_Parser_Term_match___elambda__1___closed__2; lean_object* l___private_Init_Lean_Elab_TermBinders_4__expandBinderModifier___closed__7; -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__6; lean_object* l_Lean_Syntax_isTermId_x3f(lean_object*, uint8_t); extern lean_object* l_Lean_Parser_Term_let___elambda__1___closed__1; lean_object* l_Lean_Syntax_getArgs(lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__1; lean_object* l_Lean_Elab_Term_mkFreshFVarId___boxed(lean_object*); lean_object* l_Lean_Elab_Term_elabLetDeclAux___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l___private_Init_Util_1__mkPanicMessage___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetCore(lean_object*); -lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1; extern lean_object* l_Lean_mkHole___closed__1; lean_object* l_Lean_Elab_Term_mkExplicitBinder(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_adaptExpander(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Elab_TermBinders_4__expandBinderModifier(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__8; lean_object* l_Lean_Elab_Term_elabType(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabArrow___lambda__1___closed__7; lean_object* l___private_Init_Lean_Elab_TermBinders_7__elabBindersAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -215,6 +202,7 @@ lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux(lean lean_object* l_Lean_Elab_Term_elabLetIdDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* l_Lean_Elab_Term_resetSynthInstanceCache___rarg(lean_object*); +extern lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1; extern lean_object* l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; lean_object* l___private_Init_Lean_Elab_TermBinders_4__expandBinderModifier___closed__5; lean_object* l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; @@ -231,8 +219,6 @@ lean_object* l___private_Init_Lean_Elab_TermBinders_4__expandBinderModifier___cl extern lean_object* l___private_Init_Lean_Elab_Term_5__expandCDot___closed__4; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); extern lean_object* l_Lean_mkOptionalNode___closed__2; -lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3; -extern lean_object* l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetCore___closed__1; lean_object* l_Lean_Elab_Term_elabArrow___lambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*, lean_object*); @@ -245,12 +231,10 @@ extern lean_object* l___private_Init_Lean_Meta_ExprDefEq_10__checkAssignmentFail lean_object* l_Lean_Elab_Term_elabArrow___lambda__1___closed__3; extern lean_object* l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; extern lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__1; -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__7; lean_object* l___private_Init_Lean_Elab_TermBinders_6__elabBinderViews___main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_numeral(lean_object*, lean_object*); extern lean_object* l_Lean_mkAppStx___closed__1; lean_object* l___private_Init_Lean_Elab_TermBinders_3__expandOptIdent(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_Term_elabLetDecl___closed__3; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetCore___closed__2; uint8_t lean_string_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); @@ -4509,34 +4493,26 @@ return x_3; lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__4() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("|"); -return x_1; -} -} -lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__4; +x_2 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6() { +lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Array_empty___closed__1; -x_2 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; +x_2 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__4; x_3 = lean_array_push(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__7() { +lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6() { _start: { lean_object* x_1; @@ -4544,21 +4520,21 @@ x_1 = lean_mk_string("invalid binder, simple identifier expected"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8() { +lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__7; +x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; x_2 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9() { +lean_object* _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; +x_1 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__7; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; @@ -4737,7 +4713,7 @@ x_69 = lean_ctor_get(x_11, 0); lean_dec(x_69); lean_ctor_set(x_11, 1, x_66); lean_ctor_set(x_11, 0, x_59); -x_70 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_70 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_71 = lean_array_push(x_70, x_11); x_72 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_73 = lean_array_push(x_71, x_72); @@ -4766,7 +4742,7 @@ lean_dec(x_11); x_82 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_82, 0, x_59); lean_ctor_set(x_82, 1, x_66); -x_83 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_83 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_84 = lean_array_push(x_83, x_82); x_85 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_86 = lean_array_push(x_84, x_85); @@ -4830,7 +4806,7 @@ if (lean_is_scalar(x_111)) { } lean_ctor_set(x_112, 0, x_103); lean_ctor_set(x_112, 1, x_110); -x_113 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_113 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_114 = lean_array_push(x_113, x_112); x_115 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_116 = lean_array_push(x_114, x_115); @@ -4914,7 +4890,7 @@ if (lean_is_scalar(x_148)) { } lean_ctor_set(x_149, 0, x_140); lean_ctor_set(x_149, 1, x_147); -x_150 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_150 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_151 = lean_array_push(x_150, x_149); x_152 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_153 = lean_array_push(x_151, x_152); @@ -4991,7 +4967,7 @@ lean_dec(x_169); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_172 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_172 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_173 = l_Lean_Elab_Term_throwError___rarg(x_11, x_172, x_5, x_6); lean_dec(x_11); x_174 = !lean_is_exclusive(x_173); @@ -5118,7 +5094,7 @@ x_224 = lean_ctor_get(x_11, 0); lean_dec(x_224); lean_ctor_set(x_11, 1, x_221); lean_ctor_set(x_11, 0, x_214); -x_225 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_225 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_226 = lean_array_push(x_225, x_11); x_227 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_228 = lean_array_push(x_226, x_227); @@ -5147,7 +5123,7 @@ lean_dec(x_11); x_237 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_237, 0, x_214); lean_ctor_set(x_237, 1, x_221); -x_238 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_238 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_239 = lean_array_push(x_238, x_237); x_240 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_241 = lean_array_push(x_239, x_240); @@ -5211,7 +5187,7 @@ if (lean_is_scalar(x_266)) { } lean_ctor_set(x_267, 0, x_258); lean_ctor_set(x_267, 1, x_265); -x_268 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_268 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_269 = lean_array_push(x_268, x_267); x_270 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_271 = lean_array_push(x_269, x_270); @@ -5295,7 +5271,7 @@ if (lean_is_scalar(x_303)) { } lean_ctor_set(x_304, 0, x_295); lean_ctor_set(x_304, 1, x_302); -x_305 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_305 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_306 = lean_array_push(x_305, x_304); x_307 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_308 = lean_array_push(x_306, x_307); @@ -5373,7 +5349,7 @@ lean_dec(x_324); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_327 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_327 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_328 = l_Lean_Elab_Term_throwError___rarg(x_186, x_327, x_5, x_6); lean_dec(x_186); x_329 = !lean_is_exclusive(x_328); @@ -5502,7 +5478,7 @@ x_379 = lean_ctor_get(x_11, 0); lean_dec(x_379); lean_ctor_set(x_11, 1, x_376); lean_ctor_set(x_11, 0, x_369); -x_380 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_380 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_381 = lean_array_push(x_380, x_11); x_382 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_383 = lean_array_push(x_381, x_382); @@ -5531,7 +5507,7 @@ lean_dec(x_11); x_392 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_392, 0, x_369); lean_ctor_set(x_392, 1, x_376); -x_393 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_393 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_394 = lean_array_push(x_393, x_392); x_395 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_396 = lean_array_push(x_394, x_395); @@ -5595,7 +5571,7 @@ if (lean_is_scalar(x_421)) { } lean_ctor_set(x_422, 0, x_413); lean_ctor_set(x_422, 1, x_420); -x_423 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_423 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_424 = lean_array_push(x_423, x_422); x_425 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_426 = lean_array_push(x_424, x_425); @@ -5679,7 +5655,7 @@ if (lean_is_scalar(x_458)) { } lean_ctor_set(x_459, 0, x_450); lean_ctor_set(x_459, 1, x_457); -x_460 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_460 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_461 = lean_array_push(x_460, x_459); x_462 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_463 = lean_array_push(x_461, x_462); @@ -5757,7 +5733,7 @@ lean_dec(x_479); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_482 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_482 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_483 = l_Lean_Elab_Term_throwError___rarg(x_341, x_482, x_5, x_6); lean_dec(x_341); x_484 = !lean_is_exclusive(x_483); @@ -5892,7 +5868,7 @@ x_536 = lean_ctor_get(x_11, 0); lean_dec(x_536); lean_ctor_set(x_11, 1, x_533); lean_ctor_set(x_11, 0, x_526); -x_537 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_537 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_538 = lean_array_push(x_537, x_11); x_539 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_540 = lean_array_push(x_538, x_539); @@ -5921,7 +5897,7 @@ lean_dec(x_11); x_549 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_549, 0, x_526); lean_ctor_set(x_549, 1, x_533); -x_550 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_550 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_551 = lean_array_push(x_550, x_549); x_552 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_553 = lean_array_push(x_551, x_552); @@ -5985,7 +5961,7 @@ if (lean_is_scalar(x_578)) { } lean_ctor_set(x_579, 0, x_570); lean_ctor_set(x_579, 1, x_577); -x_580 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_580 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_581 = lean_array_push(x_580, x_579); x_582 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_583 = lean_array_push(x_581, x_582); @@ -6069,7 +6045,7 @@ if (lean_is_scalar(x_615)) { } lean_ctor_set(x_616, 0, x_607); lean_ctor_set(x_616, 1, x_614); -x_617 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_617 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_618 = lean_array_push(x_617, x_616); x_619 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_620 = lean_array_push(x_618, x_619); @@ -6147,7 +6123,7 @@ lean_dec(x_636); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_639 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_639 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_640 = l_Lean_Elab_Term_throwError___rarg(x_498, x_639, x_5, x_6); lean_dec(x_498); x_641 = !lean_is_exclusive(x_640); @@ -6294,7 +6270,7 @@ x_700 = lean_ctor_get(x_11, 0); lean_dec(x_700); lean_ctor_set(x_11, 1, x_697); lean_ctor_set(x_11, 0, x_690); -x_701 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_701 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_702 = lean_array_push(x_701, x_11); x_703 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_704 = lean_array_push(x_702, x_703); @@ -6323,7 +6299,7 @@ lean_dec(x_11); x_713 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_713, 0, x_690); lean_ctor_set(x_713, 1, x_697); -x_714 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_714 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_715 = lean_array_push(x_714, x_713); x_716 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_717 = lean_array_push(x_715, x_716); @@ -6387,7 +6363,7 @@ if (lean_is_scalar(x_742)) { } lean_ctor_set(x_743, 0, x_734); lean_ctor_set(x_743, 1, x_741); -x_744 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_744 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_745 = lean_array_push(x_744, x_743); x_746 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_747 = lean_array_push(x_745, x_746); @@ -6471,7 +6447,7 @@ if (lean_is_scalar(x_779)) { } lean_ctor_set(x_780, 0, x_771); lean_ctor_set(x_780, 1, x_778); -x_781 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_781 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_782 = lean_array_push(x_781, x_780); x_783 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_784 = lean_array_push(x_782, x_783); @@ -6612,7 +6588,7 @@ x_837 = lean_ctor_get(x_11, 0); lean_dec(x_837); lean_ctor_set(x_11, 1, x_834); lean_ctor_set(x_11, 0, x_827); -x_838 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_838 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_839 = lean_array_push(x_838, x_11); x_840 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_841 = lean_array_push(x_839, x_840); @@ -6641,7 +6617,7 @@ lean_dec(x_11); x_850 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_850, 0, x_827); lean_ctor_set(x_850, 1, x_834); -x_851 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_851 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_852 = lean_array_push(x_851, x_850); x_853 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_854 = lean_array_push(x_852, x_853); @@ -6705,7 +6681,7 @@ if (lean_is_scalar(x_879)) { } lean_ctor_set(x_880, 0, x_871); lean_ctor_set(x_880, 1, x_878); -x_881 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_881 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_882 = lean_array_push(x_881, x_880); x_883 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_884 = lean_array_push(x_882, x_883); @@ -6789,7 +6765,7 @@ if (lean_is_scalar(x_916)) { } lean_ctor_set(x_917, 0, x_908); lean_ctor_set(x_917, 1, x_915); -x_918 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_918 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_919 = lean_array_push(x_918, x_917); x_920 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_921 = lean_array_push(x_919, x_920); @@ -6942,7 +6918,7 @@ x_976 = lean_ctor_get(x_11, 0); lean_dec(x_976); lean_ctor_set(x_11, 1, x_973); lean_ctor_set(x_11, 0, x_966); -x_977 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_977 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_978 = lean_array_push(x_977, x_11); x_979 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_980 = lean_array_push(x_978, x_979); @@ -6971,7 +6947,7 @@ lean_dec(x_11); x_989 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_989, 0, x_966); lean_ctor_set(x_989, 1, x_973); -x_990 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_990 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_991 = lean_array_push(x_990, x_989); x_992 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_993 = lean_array_push(x_991, x_992); @@ -7035,7 +7011,7 @@ if (lean_is_scalar(x_1018)) { } lean_ctor_set(x_1019, 0, x_1010); lean_ctor_set(x_1019, 1, x_1017); -x_1020 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1020 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1021 = lean_array_push(x_1020, x_1019); x_1022 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1023 = lean_array_push(x_1021, x_1022); @@ -7119,7 +7095,7 @@ if (lean_is_scalar(x_1055)) { } lean_ctor_set(x_1056, 0, x_1047); lean_ctor_set(x_1056, 1, x_1054); -x_1057 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1057 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1058 = lean_array_push(x_1057, x_1056); x_1059 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1060 = lean_array_push(x_1058, x_1059); @@ -7250,7 +7226,7 @@ x_1109 = lean_ctor_get(x_11, 0); lean_dec(x_1109); lean_ctor_set(x_11, 1, x_1106); lean_ctor_set(x_11, 0, x_1099); -x_1110 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1110 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1111 = lean_array_push(x_1110, x_11); x_1112 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1113 = lean_array_push(x_1111, x_1112); @@ -7279,7 +7255,7 @@ lean_dec(x_11); x_1122 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_1122, 0, x_1099); lean_ctor_set(x_1122, 1, x_1106); -x_1123 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1123 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1124 = lean_array_push(x_1123, x_1122); x_1125 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1126 = lean_array_push(x_1124, x_1125); @@ -7343,7 +7319,7 @@ if (lean_is_scalar(x_1151)) { } lean_ctor_set(x_1152, 0, x_1143); lean_ctor_set(x_1152, 1, x_1150); -x_1153 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1153 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1154 = lean_array_push(x_1153, x_1152); x_1155 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1156 = lean_array_push(x_1154, x_1155); @@ -7427,7 +7403,7 @@ if (lean_is_scalar(x_1188)) { } lean_ctor_set(x_1189, 0, x_1180); lean_ctor_set(x_1189, 1, x_1187); -x_1190 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1190 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1191 = lean_array_push(x_1190, x_1189); x_1192 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1193 = lean_array_push(x_1191, x_1192); @@ -7627,7 +7603,7 @@ if (lean_is_scalar(x_1256)) { } lean_ctor_set(x_1257, 0, x_1248); lean_ctor_set(x_1257, 1, x_1255); -x_1258 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1258 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1259 = lean_array_push(x_1258, x_1257); x_1260 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1261 = lean_array_push(x_1259, x_1260); @@ -7709,7 +7685,7 @@ lean_dec(x_1277); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1280 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1280 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1281 = l_Lean_Elab_Term_throwError___rarg(x_11, x_1280, x_5, x_6); lean_dec(x_11); x_1282 = lean_ctor_get(x_1281, 0); @@ -7858,7 +7834,7 @@ if (lean_is_scalar(x_1332)) { } lean_ctor_set(x_1333, 0, x_1324); lean_ctor_set(x_1333, 1, x_1331); -x_1334 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1334 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1335 = lean_array_push(x_1334, x_1333); x_1336 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1337 = lean_array_push(x_1335, x_1336); @@ -7941,7 +7917,7 @@ lean_dec(x_1353); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1356 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1356 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1357 = l_Lean_Elab_Term_throwError___rarg(x_1295, x_1356, x_5, x_6); lean_dec(x_1295); x_1358 = lean_ctor_get(x_1357, 0); @@ -8092,7 +8068,7 @@ if (lean_is_scalar(x_1408)) { } lean_ctor_set(x_1409, 0, x_1400); lean_ctor_set(x_1409, 1, x_1407); -x_1410 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1410 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1411 = lean_array_push(x_1410, x_1409); x_1412 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1413 = lean_array_push(x_1411, x_1412); @@ -8175,7 +8151,7 @@ lean_dec(x_1429); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1432 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1432 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1433 = l_Lean_Elab_Term_throwError___rarg(x_1371, x_1432, x_5, x_6); lean_dec(x_1371); x_1434 = lean_ctor_get(x_1433, 0); @@ -8332,7 +8308,7 @@ if (lean_is_scalar(x_1486)) { } lean_ctor_set(x_1487, 0, x_1478); lean_ctor_set(x_1487, 1, x_1485); -x_1488 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1488 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1489 = lean_array_push(x_1488, x_1487); x_1490 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1491 = lean_array_push(x_1489, x_1490); @@ -8415,7 +8391,7 @@ lean_dec(x_1507); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1510 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1510 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1511 = l_Lean_Elab_Term_throwError___rarg(x_1449, x_1510, x_5, x_6); lean_dec(x_1449); x_1512 = lean_ctor_get(x_1511, 0); @@ -8579,7 +8555,7 @@ if (lean_is_scalar(x_1570)) { } lean_ctor_set(x_1571, 0, x_1562); lean_ctor_set(x_1571, 1, x_1569); -x_1572 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1572 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1573 = lean_array_push(x_1572, x_1571); x_1574 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1575 = lean_array_push(x_1573, x_1574); @@ -8741,7 +8717,7 @@ if (lean_is_scalar(x_1627)) { } lean_ctor_set(x_1628, 0, x_1619); lean_ctor_set(x_1628, 1, x_1626); -x_1629 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1629 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1630 = lean_array_push(x_1629, x_1628); x_1631 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1632 = lean_array_push(x_1630, x_1631); @@ -8915,7 +8891,7 @@ if (lean_is_scalar(x_1686)) { } lean_ctor_set(x_1687, 0, x_1678); lean_ctor_set(x_1687, 1, x_1685); -x_1688 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1688 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1689 = lean_array_push(x_1688, x_1687); x_1690 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1691 = lean_array_push(x_1689, x_1690); @@ -9067,7 +9043,7 @@ if (lean_is_scalar(x_1739)) { } lean_ctor_set(x_1740, 0, x_1731); lean_ctor_set(x_1740, 1, x_1738); -x_1741 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1741 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1742 = lean_array_push(x_1741, x_1740); x_1743 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1744 = lean_array_push(x_1742, x_1743); @@ -9283,7 +9259,7 @@ if (lean_is_scalar(x_1810)) { } lean_ctor_set(x_1811, 0, x_1802); lean_ctor_set(x_1811, 1, x_1809); -x_1812 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1812 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1813 = lean_array_push(x_1812, x_1811); x_1814 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1815 = lean_array_push(x_1813, x_1814); @@ -9365,7 +9341,7 @@ lean_dec(x_1831); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1834 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1834 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1835 = l_Lean_Elab_Term_throwError___rarg(x_11, x_1834, x_5, x_6); lean_dec(x_11); x_1836 = lean_ctor_get(x_1835, 0); @@ -9522,7 +9498,7 @@ if (lean_is_scalar(x_1887)) { } lean_ctor_set(x_1888, 0, x_1879); lean_ctor_set(x_1888, 1, x_1886); -x_1889 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1889 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1890 = lean_array_push(x_1889, x_1888); x_1891 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1892 = lean_array_push(x_1890, x_1891); @@ -9605,7 +9581,7 @@ lean_dec(x_1908); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1911 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1911 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1912 = l_Lean_Elab_Term_throwError___rarg(x_1850, x_1911, x_5, x_6); lean_dec(x_1850); x_1913 = lean_ctor_get(x_1912, 0); @@ -9763,7 +9739,7 @@ if (lean_is_scalar(x_1964)) { } lean_ctor_set(x_1965, 0, x_1956); lean_ctor_set(x_1965, 1, x_1963); -x_1966 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_1966 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_1967 = lean_array_push(x_1966, x_1965); x_1968 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_1969 = lean_array_push(x_1967, x_1968); @@ -9846,7 +9822,7 @@ lean_dec(x_1985); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_1988 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_1988 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_1989 = l_Lean_Elab_Term_throwError___rarg(x_1927, x_1988, x_5, x_6); lean_dec(x_1927); x_1990 = lean_ctor_get(x_1989, 0); @@ -10010,7 +9986,7 @@ if (lean_is_scalar(x_2043)) { } lean_ctor_set(x_2044, 0, x_2035); lean_ctor_set(x_2044, 1, x_2042); -x_2045 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2045 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2046 = lean_array_push(x_2045, x_2044); x_2047 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2048 = lean_array_push(x_2046, x_2047); @@ -10093,7 +10069,7 @@ lean_dec(x_2064); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2067 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2067 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2068 = l_Lean_Elab_Term_throwError___rarg(x_2006, x_2067, x_5, x_6); lean_dec(x_2006); x_2069 = lean_ctor_get(x_2068, 0); @@ -10257,7 +10233,7 @@ if (lean_is_scalar(x_2127)) { } lean_ctor_set(x_2128, 0, x_2119); lean_ctor_set(x_2128, 1, x_2126); -x_2129 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2129 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2130 = lean_array_push(x_2129, x_2128); x_2131 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2132 = lean_array_push(x_2130, x_2131); @@ -10419,7 +10395,7 @@ if (lean_is_scalar(x_2184)) { } lean_ctor_set(x_2185, 0, x_2176); lean_ctor_set(x_2185, 1, x_2183); -x_2186 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2186 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2187 = lean_array_push(x_2186, x_2185); x_2188 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2189 = lean_array_push(x_2187, x_2188); @@ -10593,7 +10569,7 @@ if (lean_is_scalar(x_2243)) { } lean_ctor_set(x_2244, 0, x_2235); lean_ctor_set(x_2244, 1, x_2242); -x_2245 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2245 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2246 = lean_array_push(x_2245, x_2244); x_2247 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2248 = lean_array_push(x_2246, x_2247); @@ -10745,7 +10721,7 @@ if (lean_is_scalar(x_2296)) { } lean_ctor_set(x_2297, 0, x_2288); lean_ctor_set(x_2297, 1, x_2295); -x_2298 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2298 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2299 = lean_array_push(x_2298, x_2297); x_2300 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2301 = lean_array_push(x_2299, x_2300); @@ -10972,7 +10948,7 @@ if (lean_is_scalar(x_2370)) { } lean_ctor_set(x_2371, 0, x_2362); lean_ctor_set(x_2371, 1, x_2369); -x_2372 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2372 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2373 = lean_array_push(x_2372, x_2371); x_2374 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2375 = lean_array_push(x_2373, x_2374); @@ -11054,7 +11030,7 @@ lean_dec(x_2391); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2394 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2394 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2395 = l_Lean_Elab_Term_throwError___rarg(x_11, x_2394, x_5, x_6); lean_dec(x_11); x_2396 = lean_ctor_get(x_2395, 0); @@ -11219,7 +11195,7 @@ if (lean_is_scalar(x_2448)) { } lean_ctor_set(x_2449, 0, x_2440); lean_ctor_set(x_2449, 1, x_2447); -x_2450 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2450 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2451 = lean_array_push(x_2450, x_2449); x_2452 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2453 = lean_array_push(x_2451, x_2452); @@ -11302,7 +11278,7 @@ lean_dec(x_2469); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2472 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2472 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2473 = l_Lean_Elab_Term_throwError___rarg(x_2411, x_2472, x_5, x_6); lean_dec(x_2411); x_2474 = lean_ctor_get(x_2473, 0); @@ -11468,7 +11444,7 @@ if (lean_is_scalar(x_2526)) { } lean_ctor_set(x_2527, 0, x_2518); lean_ctor_set(x_2527, 1, x_2525); -x_2528 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2528 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2529 = lean_array_push(x_2528, x_2527); x_2530 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2531 = lean_array_push(x_2529, x_2530); @@ -11551,7 +11527,7 @@ lean_dec(x_2547); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2550 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2550 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2551 = l_Lean_Elab_Term_throwError___rarg(x_2489, x_2550, x_5, x_6); lean_dec(x_2489); x_2552 = lean_ctor_get(x_2551, 0); @@ -11722,7 +11698,7 @@ if (lean_is_scalar(x_2606)) { } lean_ctor_set(x_2607, 0, x_2598); lean_ctor_set(x_2607, 1, x_2605); -x_2608 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2608 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2609 = lean_array_push(x_2608, x_2607); x_2610 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2611 = lean_array_push(x_2609, x_2610); @@ -11805,7 +11781,7 @@ lean_dec(x_2627); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2630 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2630 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2631 = l_Lean_Elab_Term_throwError___rarg(x_2569, x_2630, x_5, x_6); lean_dec(x_2569); x_2632 = lean_ctor_get(x_2631, 0); @@ -11969,7 +11945,7 @@ if (lean_is_scalar(x_2690)) { } lean_ctor_set(x_2691, 0, x_2682); lean_ctor_set(x_2691, 1, x_2689); -x_2692 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2692 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2693 = lean_array_push(x_2692, x_2691); x_2694 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2695 = lean_array_push(x_2693, x_2694); @@ -12131,7 +12107,7 @@ if (lean_is_scalar(x_2747)) { } lean_ctor_set(x_2748, 0, x_2739); lean_ctor_set(x_2748, 1, x_2746); -x_2749 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2749 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2750 = lean_array_push(x_2749, x_2748); x_2751 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2752 = lean_array_push(x_2750, x_2751); @@ -12305,7 +12281,7 @@ if (lean_is_scalar(x_2806)) { } lean_ctor_set(x_2807, 0, x_2798); lean_ctor_set(x_2807, 1, x_2805); -x_2808 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2808 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2809 = lean_array_push(x_2808, x_2807); x_2810 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2811 = lean_array_push(x_2809, x_2810); @@ -12457,7 +12433,7 @@ if (lean_is_scalar(x_2859)) { } lean_ctor_set(x_2860, 0, x_2851); lean_ctor_set(x_2860, 1, x_2858); -x_2861 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2861 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2862 = lean_array_push(x_2861, x_2860); x_2863 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2864 = lean_array_push(x_2862, x_2863); @@ -12695,7 +12671,7 @@ if (lean_is_scalar(x_2936)) { } lean_ctor_set(x_2937, 0, x_2928); lean_ctor_set(x_2937, 1, x_2935); -x_2938 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_2938 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_2939 = lean_array_push(x_2938, x_2937); x_2940 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_2941 = lean_array_push(x_2939, x_2940); @@ -12777,7 +12753,7 @@ lean_dec(x_2957); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_2960 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_2960 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_2961 = l_Lean_Elab_Term_throwError___rarg(x_11, x_2960, x_5, x_6); lean_dec(x_11); x_2962 = lean_ctor_get(x_2961, 0); @@ -12949,7 +12925,7 @@ if (lean_is_scalar(x_3015)) { } lean_ctor_set(x_3016, 0, x_3007); lean_ctor_set(x_3016, 1, x_3014); -x_3017 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3017 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3018 = lean_array_push(x_3017, x_3016); x_3019 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3020 = lean_array_push(x_3018, x_3019); @@ -13032,7 +13008,7 @@ lean_dec(x_3036); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3039 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3039 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3040 = l_Lean_Elab_Term_throwError___rarg(x_2978, x_3039, x_5, x_6); lean_dec(x_2978); x_3041 = lean_ctor_get(x_3040, 0); @@ -13205,7 +13181,7 @@ if (lean_is_scalar(x_3094)) { } lean_ctor_set(x_3095, 0, x_3086); lean_ctor_set(x_3095, 1, x_3093); -x_3096 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3096 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3097 = lean_array_push(x_3096, x_3095); x_3098 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3099 = lean_array_push(x_3097, x_3098); @@ -13288,7 +13264,7 @@ lean_dec(x_3115); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3118 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3118 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3119 = l_Lean_Elab_Term_throwError___rarg(x_3057, x_3118, x_5, x_6); lean_dec(x_3057); x_3120 = lean_ctor_get(x_3119, 0); @@ -13466,7 +13442,7 @@ if (lean_is_scalar(x_3175)) { } lean_ctor_set(x_3176, 0, x_3167); lean_ctor_set(x_3176, 1, x_3174); -x_3177 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3177 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3178 = lean_array_push(x_3177, x_3176); x_3179 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3180 = lean_array_push(x_3178, x_3179); @@ -13549,7 +13525,7 @@ lean_dec(x_3196); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3199 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3199 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3200 = l_Lean_Elab_Term_throwError___rarg(x_3138, x_3199, x_5, x_6); lean_dec(x_3138); x_3201 = lean_ctor_get(x_3200, 0); @@ -13713,7 +13689,7 @@ if (lean_is_scalar(x_3259)) { } lean_ctor_set(x_3260, 0, x_3251); lean_ctor_set(x_3260, 1, x_3258); -x_3261 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3261 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3262 = lean_array_push(x_3261, x_3260); x_3263 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3264 = lean_array_push(x_3262, x_3263); @@ -13875,7 +13851,7 @@ if (lean_is_scalar(x_3316)) { } lean_ctor_set(x_3317, 0, x_3308); lean_ctor_set(x_3317, 1, x_3315); -x_3318 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3318 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3319 = lean_array_push(x_3318, x_3317); x_3320 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3321 = lean_array_push(x_3319, x_3320); @@ -14049,7 +14025,7 @@ if (lean_is_scalar(x_3375)) { } lean_ctor_set(x_3376, 0, x_3367); lean_ctor_set(x_3376, 1, x_3374); -x_3377 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3377 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3378 = lean_array_push(x_3377, x_3376); x_3379 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3380 = lean_array_push(x_3378, x_3379); @@ -14201,7 +14177,7 @@ if (lean_is_scalar(x_3428)) { } lean_ctor_set(x_3429, 0, x_3420); lean_ctor_set(x_3429, 1, x_3427); -x_3430 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3430 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3431 = lean_array_push(x_3430, x_3429); x_3432 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3433 = lean_array_push(x_3431, x_3432); @@ -14378,7 +14354,7 @@ x_3493 = lean_ctor_get(x_11, 0); lean_dec(x_3493); lean_ctor_set(x_11, 1, x_3490); lean_ctor_set(x_11, 0, x_3483); -x_3494 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3494 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3495 = lean_array_push(x_3494, x_11); x_3496 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3497 = lean_array_push(x_3495, x_3496); @@ -14407,7 +14383,7 @@ lean_dec(x_11); x_3506 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3506, 0, x_3483); lean_ctor_set(x_3506, 1, x_3490); -x_3507 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3507 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3508 = lean_array_push(x_3507, x_3506); x_3509 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3510 = lean_array_push(x_3508, x_3509); @@ -14471,7 +14447,7 @@ if (lean_is_scalar(x_3535)) { } lean_ctor_set(x_3536, 0, x_3527); lean_ctor_set(x_3536, 1, x_3534); -x_3537 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3537 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3538 = lean_array_push(x_3537, x_3536); x_3539 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3540 = lean_array_push(x_3538, x_3539); @@ -14555,7 +14531,7 @@ if (lean_is_scalar(x_3572)) { } lean_ctor_set(x_3573, 0, x_3564); lean_ctor_set(x_3573, 1, x_3571); -x_3574 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3574 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3575 = lean_array_push(x_3574, x_3573); x_3576 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3577 = lean_array_push(x_3575, x_3576); @@ -14632,7 +14608,7 @@ lean_dec(x_3593); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3596 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3596 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3597 = l_Lean_Elab_Term_throwError___rarg(x_11, x_3596, x_5, x_6); lean_dec(x_11); x_3598 = !lean_is_exclusive(x_3597); @@ -14754,7 +14730,7 @@ x_3645 = lean_ctor_get(x_11, 0); lean_dec(x_3645); lean_ctor_set(x_11, 1, x_3642); lean_ctor_set(x_11, 0, x_3635); -x_3646 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3646 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3647 = lean_array_push(x_3646, x_11); x_3648 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3649 = lean_array_push(x_3647, x_3648); @@ -14783,7 +14759,7 @@ lean_dec(x_11); x_3658 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3658, 0, x_3635); lean_ctor_set(x_3658, 1, x_3642); -x_3659 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3659 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3660 = lean_array_push(x_3659, x_3658); x_3661 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3662 = lean_array_push(x_3660, x_3661); @@ -14847,7 +14823,7 @@ if (lean_is_scalar(x_3687)) { } lean_ctor_set(x_3688, 0, x_3679); lean_ctor_set(x_3688, 1, x_3686); -x_3689 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3689 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3690 = lean_array_push(x_3689, x_3688); x_3691 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3692 = lean_array_push(x_3690, x_3691); @@ -14931,7 +14907,7 @@ if (lean_is_scalar(x_3724)) { } lean_ctor_set(x_3725, 0, x_3716); lean_ctor_set(x_3725, 1, x_3723); -x_3726 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3726 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3727 = lean_array_push(x_3726, x_3725); x_3728 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3729 = lean_array_push(x_3727, x_3728); @@ -15008,7 +14984,7 @@ lean_dec(x_3745); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3748 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3748 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3749 = l_Lean_Elab_Term_throwError___rarg(x_11, x_3748, x_5, x_6); lean_dec(x_11); x_3750 = !lean_is_exclusive(x_3749); @@ -15129,7 +15105,7 @@ x_3797 = lean_ctor_get(x_11, 0); lean_dec(x_3797); lean_ctor_set(x_11, 1, x_3794); lean_ctor_set(x_11, 0, x_3787); -x_3798 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3798 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3799 = lean_array_push(x_3798, x_11); x_3800 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3801 = lean_array_push(x_3799, x_3800); @@ -15158,7 +15134,7 @@ lean_dec(x_11); x_3810 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3810, 0, x_3787); lean_ctor_set(x_3810, 1, x_3794); -x_3811 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3811 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3812 = lean_array_push(x_3811, x_3810); x_3813 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3814 = lean_array_push(x_3812, x_3813); @@ -15222,7 +15198,7 @@ if (lean_is_scalar(x_3839)) { } lean_ctor_set(x_3840, 0, x_3831); lean_ctor_set(x_3840, 1, x_3838); -x_3841 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3841 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3842 = lean_array_push(x_3841, x_3840); x_3843 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3844 = lean_array_push(x_3842, x_3843); @@ -15306,7 +15282,7 @@ if (lean_is_scalar(x_3876)) { } lean_ctor_set(x_3877, 0, x_3868); lean_ctor_set(x_3877, 1, x_3875); -x_3878 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3878 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3879 = lean_array_push(x_3878, x_3877); x_3880 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3881 = lean_array_push(x_3879, x_3880); @@ -15383,7 +15359,7 @@ lean_dec(x_3897); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_3900 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_3900 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_3901 = l_Lean_Elab_Term_throwError___rarg(x_11, x_3900, x_5, x_6); lean_dec(x_11); x_3902 = !lean_is_exclusive(x_3901); @@ -15503,7 +15479,7 @@ x_3949 = lean_ctor_get(x_11, 0); lean_dec(x_3949); lean_ctor_set(x_11, 1, x_3946); lean_ctor_set(x_11, 0, x_3939); -x_3950 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3950 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3951 = lean_array_push(x_3950, x_11); x_3952 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3953 = lean_array_push(x_3951, x_3952); @@ -15532,7 +15508,7 @@ lean_dec(x_11); x_3962 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3962, 0, x_3939); lean_ctor_set(x_3962, 1, x_3946); -x_3963 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3963 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3964 = lean_array_push(x_3963, x_3962); x_3965 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3966 = lean_array_push(x_3964, x_3965); @@ -15596,7 +15572,7 @@ if (lean_is_scalar(x_3991)) { } lean_ctor_set(x_3992, 0, x_3983); lean_ctor_set(x_3992, 1, x_3990); -x_3993 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_3993 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_3994 = lean_array_push(x_3993, x_3992); x_3995 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_3996 = lean_array_push(x_3994, x_3995); @@ -15680,7 +15656,7 @@ if (lean_is_scalar(x_4028)) { } lean_ctor_set(x_4029, 0, x_4020); lean_ctor_set(x_4029, 1, x_4027); -x_4030 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4030 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4031 = lean_array_push(x_4030, x_4029); x_4032 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4033 = lean_array_push(x_4031, x_4032); @@ -15757,7 +15733,7 @@ lean_dec(x_4049); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_4052 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_4052 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_4053 = l_Lean_Elab_Term_throwError___rarg(x_11, x_4052, x_5, x_6); lean_dec(x_11); x_4054 = !lean_is_exclusive(x_4053); @@ -15876,7 +15852,7 @@ x_4101 = lean_ctor_get(x_11, 0); lean_dec(x_4101); lean_ctor_set(x_11, 1, x_4098); lean_ctor_set(x_11, 0, x_4091); -x_4102 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4102 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4103 = lean_array_push(x_4102, x_11); x_4104 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4105 = lean_array_push(x_4103, x_4104); @@ -15905,7 +15881,7 @@ lean_dec(x_11); x_4114 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_4114, 0, x_4091); lean_ctor_set(x_4114, 1, x_4098); -x_4115 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4115 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4116 = lean_array_push(x_4115, x_4114); x_4117 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4118 = lean_array_push(x_4116, x_4117); @@ -15969,7 +15945,7 @@ if (lean_is_scalar(x_4143)) { } lean_ctor_set(x_4144, 0, x_4135); lean_ctor_set(x_4144, 1, x_4142); -x_4145 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4145 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4146 = lean_array_push(x_4145, x_4144); x_4147 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4148 = lean_array_push(x_4146, x_4147); @@ -16053,7 +16029,7 @@ if (lean_is_scalar(x_4180)) { } lean_ctor_set(x_4181, 0, x_4172); lean_ctor_set(x_4181, 1, x_4179); -x_4182 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4182 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4183 = lean_array_push(x_4182, x_4181); x_4184 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4185 = lean_array_push(x_4183, x_4184); @@ -16130,7 +16106,7 @@ lean_dec(x_4201); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_4204 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_4204 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_4205 = l_Lean_Elab_Term_throwError___rarg(x_11, x_4204, x_5, x_6); lean_dec(x_11); x_4206 = !lean_is_exclusive(x_4205); @@ -16249,7 +16225,7 @@ lean_dec(x_4253); lean_ctor_set_tag(x_11, 1); lean_ctor_set(x_11, 1, x_4250); lean_ctor_set(x_11, 0, x_4243); -x_4254 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4254 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4255 = lean_array_push(x_4254, x_11); x_4256 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4257 = lean_array_push(x_4255, x_4256); @@ -16278,7 +16254,7 @@ lean_dec(x_11); x_4266 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_4266, 0, x_4243); lean_ctor_set(x_4266, 1, x_4250); -x_4267 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4267 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4268 = lean_array_push(x_4267, x_4266); x_4269 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4270 = lean_array_push(x_4268, x_4269); @@ -16343,7 +16319,7 @@ if (lean_is_scalar(x_4295)) { } lean_ctor_set(x_4296, 0, x_4287); lean_ctor_set(x_4296, 1, x_4294); -x_4297 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4297 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4298 = lean_array_push(x_4297, x_4296); x_4299 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4300 = lean_array_push(x_4298, x_4299); @@ -16428,7 +16404,7 @@ if (lean_is_scalar(x_4332)) { } lean_ctor_set(x_4333, 0, x_4324); lean_ctor_set(x_4333, 1, x_4331); -x_4334 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4334 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4335 = lean_array_push(x_4334, x_4333); x_4336 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4337 = lean_array_push(x_4335, x_4336); @@ -16505,7 +16481,7 @@ lean_dec(x_4353); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_4356 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_4356 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_4357 = l_Lean_Elab_Term_throwError___rarg(x_11, x_4356, x_5, x_6); lean_dec(x_11); x_4358 = !lean_is_exclusive(x_4357); @@ -16614,7 +16590,7 @@ x_4402 = lean_array_push(x_4388, x_11); x_4403 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_4403, 0, x_4395); lean_ctor_set(x_4403, 1, x_4402); -x_4404 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4404 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4405 = lean_array_push(x_4404, x_4403); x_4406 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4407 = lean_array_push(x_4405, x_4406); @@ -16664,7 +16640,7 @@ x_4431 = lean_array_push(x_4417, x_11); x_4432 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_4432, 0, x_4424); lean_ctor_set(x_4432, 1, x_4431); -x_4433 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4433 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4434 = lean_array_push(x_4433, x_4432); x_4435 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4436 = lean_array_push(x_4434, x_4435); @@ -16735,7 +16711,7 @@ x_4467 = lean_array_push(x_4453, x_11); x_4468 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_4468, 0, x_4460); lean_ctor_set(x_4468, 1, x_4467); -x_4469 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__6; +x_4469 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__5; x_4470 = lean_array_push(x_4469, x_4468); x_4471 = l_Lean_Elab_Term_expandCDot_x3f___closed__3; x_4472 = lean_array_push(x_4470, x_4471); @@ -16812,7 +16788,7 @@ lean_dec(x_4488); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_4491 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9; +x_4491 = l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8; x_4492 = l_Lean_Elab_Term_throwError___rarg(x_11, x_4491, x_5, x_6); lean_dec(x_11); x_4493 = !lean_is_exclusive(x_4492); @@ -18163,477 +18139,6 @@ lean_dec(x_2); return x_7; } } -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("letDecl"); -return x_1; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_mkAppStx___closed__6; -x_2 = l_Lean_Elab_Term_elabLetDecl___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__1; -x_3 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_empty___closed__1; -x_2 = l_Lean_Elab_Term_elabLetDecl___closed__3; -x_3 = lean_array_push(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_nullKind___closed__2; -x_2 = l_Array_empty___closed__1; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_let__core___elambda__1___closed__7; -x_3 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string(";"); -return x_1; -} -} -lean_object* _init_l_Lean_Elab_Term_elabLetDecl___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Term_elabLetDecl___closed__7; -x_3 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* l_Lean_Elab_Term_elabLetDecl(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -uint8_t x_5; lean_object* x_53; uint8_t x_54; uint8_t x_55; -x_53 = l_Lean_Elab_Term_elabLetDecl___closed__2; -lean_inc(x_1); -x_54 = l_Lean_Syntax_isOfKind(x_1, x_53); -if (x_54 == 0) -{ -uint8_t x_126; -x_126 = 0; -x_55 = x_126; -goto block_125; -} -else -{ -lean_object* x_127; lean_object* x_128; lean_object* x_129; uint8_t x_130; -x_127 = l_Lean_Syntax_getArgs(x_1); -x_128 = lean_array_get_size(x_127); -lean_dec(x_127); -x_129 = lean_unsigned_to_nat(8u); -x_130 = lean_nat_dec_eq(x_128, x_129); -lean_dec(x_128); -x_55 = x_130; -goto block_125; -} -block_52: -{ -uint8_t x_6; -x_6 = l_coeDecidableEq(x_5); -if (x_6 == 0) -{ -lean_object* x_7; -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_7 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_7; -} -else -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; uint8_t x_12; -x_8 = lean_unsigned_to_nat(1u); -x_9 = l_Lean_Syntax_getArg(x_1, x_8); -x_10 = l_Lean_mkTermIdFromIdent___closed__2; -lean_inc(x_9); -x_11 = l_Lean_Syntax_isOfKind(x_9, x_10); -x_12 = l_coeDecidableEq(x_11); -if (x_12 == 0) -{ -lean_object* x_13; -lean_dec(x_9); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_13 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_13; -} -else -{ -lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_45; uint8_t x_46; -x_14 = lean_unsigned_to_nat(2u); -x_15 = l_Lean_Syntax_getArg(x_1, x_14); -x_45 = l_Lean_nullKind___closed__2; -lean_inc(x_15); -x_46 = l_Lean_Syntax_isOfKind(x_15, x_45); -if (x_46 == 0) -{ -uint8_t x_47; -lean_dec(x_15); -x_47 = 0; -x_16 = x_47; -goto block_44; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_48 = l_Lean_Syntax_getArgs(x_15); -lean_dec(x_15); -x_49 = lean_array_get_size(x_48); -lean_dec(x_48); -x_50 = lean_unsigned_to_nat(0u); -x_51 = lean_nat_dec_eq(x_49, x_50); -lean_dec(x_49); -x_16 = x_51; -goto block_44; -} -block_44: -{ -uint8_t x_17; -x_17 = l_coeDecidableEq(x_16); -if (x_17 == 0) -{ -lean_object* x_18; -lean_dec(x_9); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_18 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; lean_object* x_43; -x_19 = lean_unsigned_to_nat(4u); -x_20 = l_Lean_Syntax_getArg(x_1, x_19); -x_21 = lean_unsigned_to_nat(6u); -x_22 = l_Lean_Syntax_getArg(x_1, x_21); -lean_dec(x_1); -x_23 = lean_unsigned_to_nat(0u); -x_24 = l_Lean_Syntax_getArg(x_9, x_23); -lean_dec(x_9); -x_25 = l_Lean_Elab_Term_getCurrMacroScope(x_3, x_4); -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Elab_Term_getMainModule___rarg(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_Elab_Term_elabLetDecl___closed__4; -x_30 = lean_array_push(x_29, x_24); -x_31 = l_Lean_Elab_Term_elabLetDecl___closed__5; -x_32 = lean_array_push(x_30, x_31); -x_33 = lean_array_push(x_32, x_31); -x_34 = l_Lean_Elab_Term_elabLetDecl___closed__6; -x_35 = lean_array_push(x_33, x_34); -x_36 = lean_array_push(x_35, x_20); -x_37 = l_Lean_Elab_Term_elabLetDecl___closed__8; -x_38 = lean_array_push(x_36, x_37); -x_39 = lean_array_push(x_38, x_22); -x_40 = l_Lean_Elab_Term_elabLetDecl___closed__2; -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_39); -x_42 = 1; -x_43 = l_Lean_Elab_Term_elabTermAux___main(x_2, x_42, x_41, x_3, x_28); -return x_43; -} -} -} -} -} -block_125: -{ -uint8_t x_56; -x_56 = l_coeDecidableEq(x_55); -if (x_56 == 0) -{ -if (x_54 == 0) -{ -uint8_t x_57; -x_57 = 0; -x_5 = x_57; -goto block_52; -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_58 = l_Lean_Syntax_getArgs(x_1); -x_59 = lean_array_get_size(x_58); -lean_dec(x_58); -x_60 = lean_unsigned_to_nat(7u); -x_61 = lean_nat_dec_eq(x_59, x_60); -lean_dec(x_59); -x_5 = x_61; -goto block_52; -} -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; lean_object* x_99; uint8_t x_100; -x_62 = lean_unsigned_to_nat(1u); -x_63 = l_Lean_Syntax_getArg(x_1, x_62); -x_64 = lean_unsigned_to_nat(2u); -x_65 = l_Lean_Syntax_getArg(x_1, x_64); -x_66 = lean_unsigned_to_nat(3u); -x_67 = l_Lean_Syntax_getArg(x_1, x_66); -x_99 = l_Lean_nullKind___closed__2; -lean_inc(x_67); -x_100 = l_Lean_Syntax_isOfKind(x_67, x_99); -if (x_100 == 0) -{ -uint8_t x_101; -x_101 = l___private_Init_Lean_Elab_Term_4__isCDot___closed__1; -if (x_101 == 0) -{ -uint8_t x_102; -x_102 = 0; -x_68 = x_102; -goto block_98; -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_67); -x_103 = lean_unsigned_to_nat(5u); -x_104 = l_Lean_Syntax_getArg(x_1, x_103); -x_105 = lean_unsigned_to_nat(7u); -x_106 = l_Lean_Syntax_getArg(x_1, x_105); -x_107 = l_Lean_Syntax_getArgs(x_65); -lean_dec(x_65); -x_108 = l_Lean_Syntax_getId(x_63); -lean_dec(x_63); -x_109 = l_Lean_mkHole(x_1); -x_110 = l_Lean_Elab_Term_elabLetDeclAux(x_1, x_108, x_107, x_109, x_104, x_106, x_2, x_3, x_4); -lean_dec(x_107); -return x_110; -} -} -else -{ -lean_object* x_111; lean_object* x_112; lean_object* x_113; uint8_t x_114; uint8_t x_115; -x_111 = l_Lean_Syntax_getArgs(x_67); -x_112 = lean_array_get_size(x_111); -lean_dec(x_111); -x_113 = lean_unsigned_to_nat(0u); -x_114 = lean_nat_dec_eq(x_112, x_113); -x_115 = l_coeDecidableEq(x_114); -if (x_115 == 0) -{ -uint8_t x_116; -x_116 = lean_nat_dec_eq(x_112, x_62); -lean_dec(x_112); -x_68 = x_116; -goto block_98; -} -else -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -lean_dec(x_112); -lean_dec(x_67); -x_117 = lean_unsigned_to_nat(5u); -x_118 = l_Lean_Syntax_getArg(x_1, x_117); -x_119 = lean_unsigned_to_nat(7u); -x_120 = l_Lean_Syntax_getArg(x_1, x_119); -x_121 = l_Lean_Syntax_getArgs(x_65); -lean_dec(x_65); -x_122 = l_Lean_Syntax_getId(x_63); -lean_dec(x_63); -x_123 = l_Lean_mkHole(x_1); -x_124 = l_Lean_Elab_Term_elabLetDeclAux(x_1, x_122, x_121, x_123, x_118, x_120, x_2, x_3, x_4); -lean_dec(x_121); -return x_124; -} -} -block_98: -{ -uint8_t x_69; -x_69 = l_coeDecidableEq(x_68); -if (x_69 == 0) -{ -lean_object* x_70; -lean_dec(x_67); -lean_dec(x_65); -lean_dec(x_63); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_70 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_70; -} -else -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; -x_71 = lean_unsigned_to_nat(0u); -x_72 = l_Lean_Syntax_getArg(x_67, x_71); -lean_dec(x_67); -x_73 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; -lean_inc(x_72); -x_74 = l_Lean_Syntax_isOfKind(x_72, x_73); -if (x_74 == 0) -{ -uint8_t x_75; -x_75 = l___private_Init_Lean_Elab_Term_4__isCDot___closed__1; -if (x_75 == 0) -{ -lean_object* x_76; -lean_dec(x_72); -lean_dec(x_65); -lean_dec(x_63); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_76 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_76; -} -else -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_77 = l_Lean_Syntax_getArg(x_72, x_62); -lean_dec(x_72); -x_78 = lean_unsigned_to_nat(5u); -x_79 = l_Lean_Syntax_getArg(x_1, x_78); -x_80 = lean_unsigned_to_nat(7u); -x_81 = l_Lean_Syntax_getArg(x_1, x_80); -x_82 = l_Lean_Syntax_getArgs(x_65); -lean_dec(x_65); -x_83 = l_Lean_Syntax_getId(x_63); -lean_dec(x_63); -x_84 = l_Lean_Elab_Term_elabLetDeclAux(x_1, x_83, x_82, x_77, x_79, x_81, x_2, x_3, x_4); -lean_dec(x_82); -return x_84; -} -} -else -{ -lean_object* x_85; lean_object* x_86; uint8_t x_87; uint8_t x_88; -x_85 = l_Lean_Syntax_getArgs(x_72); -x_86 = lean_array_get_size(x_85); -lean_dec(x_85); -x_87 = lean_nat_dec_eq(x_86, x_64); -lean_dec(x_86); -x_88 = l_coeDecidableEq(x_87); -if (x_88 == 0) -{ -lean_object* x_89; -lean_dec(x_72); -lean_dec(x_65); -lean_dec(x_63); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_89 = l_Lean_Elab_Term_throwUnsupportedSyntax___rarg(x_4); -return x_89; -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_90 = l_Lean_Syntax_getArg(x_72, x_62); -lean_dec(x_72); -x_91 = lean_unsigned_to_nat(5u); -x_92 = l_Lean_Syntax_getArg(x_1, x_91); -x_93 = lean_unsigned_to_nat(7u); -x_94 = l_Lean_Syntax_getArg(x_1, x_93); -x_95 = l_Lean_Syntax_getArgs(x_65); -lean_dec(x_65); -x_96 = l_Lean_Syntax_getId(x_63); -lean_dec(x_63); -x_97 = l_Lean_Elab_Term_elabLetDeclAux(x_1, x_96, x_95, x_90, x_92, x_94, x_2, x_3, x_4); -lean_dec(x_95); -return x_97; -} -} -} -} -} -} -} -} -lean_object* _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("elabLetDecl"); -return x_1; -} -} -lean_object* _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_declareBuiltinTermElab___closed__3; -x_2 = l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabLetDecl), 4, 0); -return x_1; -} -} -lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_2 = l_Lean_Elab_Term_elabLetDecl___closed__2; -x_3 = l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2; -x_4 = l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3; -x_5 = l_Lean_Elab_Term_addBuiltinTermElab(x_2, x_3, x_4, x_1); -return x_5; -} -} lean_object* l___private_Init_Lean_Elab_TermBinders_12__regTraceClasses(lean_object* x_1) { _start: { @@ -18774,8 +18279,6 @@ l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__ lean_mark_persistent(l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__7); l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8 = _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8(); lean_mark_persistent(l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__8); -l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9 = _init_l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9(); -lean_mark_persistent(l___private_Init_Lean_Elab_TermBinders_10__expandFunBindersAux___main___closed__9); l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__1 = _init_l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__1(); lean_mark_persistent(l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__1); l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__2 = _init_l___regBuiltinTermElab_Lean_Elab_Term_elabFun___closed__2(); @@ -18800,31 +18303,6 @@ lean_mark_persistent(l___regBuiltinTermElab_Lean_Elab_Term_elabLetCore___closed_ res = l___regBuiltinTermElab_Lean_Elab_Term_elabLetCore(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Elab_Term_elabLetDecl___closed__1 = _init_l_Lean_Elab_Term_elabLetDecl___closed__1(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__1); -l_Lean_Elab_Term_elabLetDecl___closed__2 = _init_l_Lean_Elab_Term_elabLetDecl___closed__2(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__2); -l_Lean_Elab_Term_elabLetDecl___closed__3 = _init_l_Lean_Elab_Term_elabLetDecl___closed__3(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__3); -l_Lean_Elab_Term_elabLetDecl___closed__4 = _init_l_Lean_Elab_Term_elabLetDecl___closed__4(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__4); -l_Lean_Elab_Term_elabLetDecl___closed__5 = _init_l_Lean_Elab_Term_elabLetDecl___closed__5(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__5); -l_Lean_Elab_Term_elabLetDecl___closed__6 = _init_l_Lean_Elab_Term_elabLetDecl___closed__6(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__6); -l_Lean_Elab_Term_elabLetDecl___closed__7 = _init_l_Lean_Elab_Term_elabLetDecl___closed__7(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__7); -l_Lean_Elab_Term_elabLetDecl___closed__8 = _init_l_Lean_Elab_Term_elabLetDecl___closed__8(); -lean_mark_persistent(l_Lean_Elab_Term_elabLetDecl___closed__8); -l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1 = _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1(); -lean_mark_persistent(l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__1); -l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2 = _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2(); -lean_mark_persistent(l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__2); -l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3 = _init_l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3(); -lean_mark_persistent(l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl___closed__3); -res = l___regBuiltinTermElab_Lean_Elab_Term_elabLetDecl(lean_io_mk_world()); -if (lean_io_result_is_error(res)) return res; -lean_dec_ref(res); res = l___private_Init_Lean_Elab_TermBinders_12__regTraceClasses(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Init/Lean/Parser/Command.c b/stage0/stdlib/Init/Lean/Parser/Command.c index 77c2fbc989..2e4de145b8 100644 --- a/stage0/stdlib/Init/Lean/Parser/Command.c +++ b/stage0/stdlib/Init/Lean/Parser/Command.c @@ -52,7 +52,6 @@ lean_object* l_Lean_Parser_Command_docComment___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_docComment___closed__3; lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_regBuiltinCommandParserAttr___closed__1; -lean_object* l_Lean_Parser_ParserState_mkError(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_instance___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Command_variable(lean_object*); lean_object* l_Lean_Parser_Command_visibility; @@ -102,7 +101,6 @@ lean_object* l_Lean_Parser_Command_partial___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_classInductive___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_openHiding; lean_object* l_Lean_Parser_Command_synth___elambda__1___closed__7; -extern lean_object* l_Lean_Parser_Term_letEqnsDecl___closed__1; lean_object* l_Lean_Parser_Command_declModifiers___closed__8; lean_object* l_Lean_Parser_Command_def___elambda__1___closed__8; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__5; @@ -124,7 +122,6 @@ lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structFields_ lean_object* l_Lean_Parser_Command_introRule___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_init__quot___closed__5; lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__8; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_synth___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__7; @@ -190,6 +187,7 @@ lean_object* l_Lean_Parser_Command_namespace___closed__4; lean_object* l_Lean_Parser_Command_def; lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__13; lean_object* l_Lean_Parser_Command_declSig___closed__2; +extern lean_object* l_Lean_Parser_Term_doPat___closed__2; lean_object* l_Lean_Parser_Command_structure___closed__2; lean_object* l_Lean_Parser_Command_declaration___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_structFields___closed__4; @@ -479,7 +477,6 @@ lean_object* l_Lean_Parser_Command_attrArg; lean_object* l_Lean_Parser_Command_variables___closed__4; lean_object* l_Lean_Parser_Command_protected___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__15; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_openSimple___closed__3; lean_object* l_Lean_Parser_Command_openRenamingItem___closed__2; lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__8; @@ -500,13 +497,11 @@ lean_object* l_Lean_Parser_Command_protected___closed__1; lean_object* l_Lean_Parser_Command_docComment___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_declValEqns___closed__2; lean_object* l_Lean_Parser_Command_abbrev___elambda__1(lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_declModifiers___closed__3; lean_object* l_Lean_Parser_Command_classInductive___closed__1; extern lean_object* l_Char_HasRepr___closed__1; lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__6; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_export___closed__1; lean_object* l_Lean_Parser_Command_set__option___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_section___closed__2; @@ -520,13 +515,11 @@ lean_object* l_Lean_Parser_Command_structImplicitBinder___closed__5; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_variable___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_synth___closed__6; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_orelseInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_attrInstance___elambda__1___spec__1(uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structCtor___closed__2; lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__5; lean_object* l___regBuiltinParser_Lean_Parser_Command_namespace(lean_object*); -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_abbrev___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_export___closed__2; lean_object* l_Lean_Parser_Command_classTk___closed__4; @@ -556,7 +549,6 @@ lean_object* l_Lean_Parser_Command_namespace___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_partial___closed__5; lean_object* l_Lean_Parser_Command_classTk___closed__2; lean_object* l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(lean_object*); -extern lean_object* l_Lean_Parser_Term_equation; lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__9; lean_object* l_Lean_Parser_rawIdent(uint8_t); lean_object* l_Lean_Parser_Command_set__option___closed__5; @@ -625,7 +617,6 @@ lean_object* l_Lean_Parser_Command_structFields___closed__3; lean_object* l_Lean_Parser_Command_commentBody___elambda__1___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_explicitUniv___closed__4; lean_object* l_Lean_Parser_Command_declModifiers___elambda__1___closed__4; -lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_section___elambda__1___closed__6; @@ -686,7 +677,6 @@ lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__12; lean_object* l_Lean_Parser_Command_declValSimple___closed__2; lean_object* l_Lean_Parser_Command_attributes___closed__4; lean_object* l_Lean_Parser_Command_export; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_openRenaming___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Command_init__quot(lean_object*); lean_object* l_Lean_Parser_Command_namespace___elambda__1___closed__3; @@ -804,7 +794,6 @@ lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_structCtor___closed__5; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__2; extern lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__9; -uint8_t lean_nat_dec_le(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_docComment___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_private___closed__4; lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__3; @@ -870,7 +859,7 @@ extern lean_object* l_Lean_Parser_Term_explicitUniv___closed__1; extern lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; lean_object* l_Lean_Parser_Command_open___closed__6; lean_object* l_Lean_Parser_Command_declModifiers___closed__12; -extern lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +extern lean_object* l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_attribute___closed__8; lean_object* l_Lean_Parser_Command_structureTk___elambda__1(lean_object*, lean_object*, lean_object*); @@ -888,7 +877,6 @@ lean_object* l_Lean_Parser_Command_structFields___closed__7; lean_object* l_Lean_Parser_Command_export___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_section___closed__7; lean_object* l_Lean_Parser_Command_noncomputable___elambda__1___closed__8; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structure___closed__9; lean_object* l_Lean_Parser_Command_declaration___closed__2; lean_object* l_Lean_Parser_Command_end___elambda__1___closed__7; @@ -911,6 +899,7 @@ lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__11; lean_object* l_Lean_Parser_Command_openHiding___closed__2; lean_object* l_Lean_Parser_Command_constant___closed__4; +extern lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_attrArg___closed__1; lean_object* l_Lean_Parser_Command_partial___closed__2; lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__2; @@ -928,7 +917,6 @@ lean_object* l_Lean_Parser_Command_openRenaming___closed__2; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__6; lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_declaration___closed__8; -extern lean_object* l_Lean_Parser_Term_matchAlt___closed__2; lean_object* l_Lean_Parser_Command_optDeclSig___elambda__1___closed__4; lean_object* l_String_trim(lean_object*); lean_object* l_Lean_Parser_Command_structure___elambda__1(lean_object*, lean_object*, lean_object*); @@ -957,6 +945,7 @@ lean_object* l_Lean_Parser_Command_declSig___closed__5; lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_structureTk___closed__5; lean_object* l_Lean_Parser_Command_universes___elambda__1___closed__9; +extern lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_set__option___closed__1; extern lean_object* l_Lean_Parser_Term_matchAlt___closed__1; lean_object* l_Lean_Parser_Command_protected___elambda__1(lean_object*, lean_object*, lean_object*); @@ -973,7 +962,6 @@ lean_object* l_Lean_Parser_Command_strictInferMod___closed__2; lean_object* l_Lean_Parser_Command_synth___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__4; -extern lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_declValSimple___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_set__option___closed__2; @@ -1050,7 +1038,6 @@ lean_object* l_Lean_Parser_Command_export___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_def___closed__4; lean_object* l_Lean_Parser_Command_declaration___closed__5; lean_object* l_Lean_Parser_Command_extends___closed__6; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolInfo(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_init__quot; lean_object* l_Lean_Parser_Command_openRenaming___closed__6; @@ -6856,262 +6843,6 @@ x_1 = l_Lean_Parser_Command_declValSimple___closed__4; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} lean_object* _init_l_Lean_Parser_Command_declValEqns___elambda__1___closed__1() { _start: { @@ -7155,398 +6886,83 @@ return x_5; lean_object* l_Lean_Parser_Command_declValEqns___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__4; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); +x_6 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__4; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); +lean_inc(x_10); lean_inc(x_2); lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); -lean_dec(x_12); -if (x_13 == 0) +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -return x_9; +return x_11; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 0); +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); -x_18 = lean_ctor_get(x_17, 2); -lean_inc(x_18); +x_18 = lean_array_get_size(x_17); lean_dec(x_17); -x_19 = l_Lean_FileMap_toPosition(x_18, x_8); -lean_dec(x_18); -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); -lean_dec(x_19); -x_21 = l_Lean_Parser_Term_equation; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = lean_nat_dec_le(x_20, x_20); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_22); -lean_dec(x_20); -lean_dec(x_2); -lean_dec(x_1); -x_24 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_25 = l_Lean_Parser_ParserState_mkError(x_14, x_24); -x_26 = l_Lean_nullKind; -lean_inc(x_16); -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_16); -x_28 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_16); -x_30 = l_Lean_Parser_mergeOrElseErrors(x_29, x_11, x_8); -lean_dec(x_8); -return x_30; -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_inc(x_2); -lean_inc(x_1); -x_31 = lean_apply_3(x_22, x_1, x_2, x_14); -x_32 = lean_ctor_get(x_31, 3); -lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) -{ -uint8_t x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_33 = 0; -x_34 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2(x_20, x_33, x_1, x_2, x_31); -lean_dec(x_20); -x_35 = l_Lean_nullKind; -lean_inc(x_16); -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_16); -x_37 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_16); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_11, x_8); -lean_dec(x_8); -return x_39; -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_32); -lean_dec(x_20); -lean_dec(x_2); -lean_dec(x_1); -x_40 = l_Lean_nullKind; -lean_inc(x_16); -x_41 = l_Lean_Parser_ParserState_mkNode(x_31, x_40, x_16); -x_42 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_16); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_11, x_8); -lean_dec(x_8); -return x_44; -} -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); +x_19 = lean_apply_3(x_5, x_1, x_2, x_16); +x_20 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_18); +x_22 = l_Lean_Parser_mergeOrElseErrors(x_21, x_13, x_10); lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); return x_22; } } } -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} } lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_2 = l_Lean_Parser_Term_letEqnsDecl___closed__1; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; +x_4 = l_Lean_Parser_nodeInfo(x_3, x_2); +return x_4; } } lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__2() { @@ -7589,50 +7005,6 @@ x_1 = l_Lean_Parser_Command_declValEqns___closed__4; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___elambda__1___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_declValEqns___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} lean_object* l_Lean_Parser_Command_declVal___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -11370,13 +10742,13 @@ lean_object* x_72; lean_object* x_73; uint8_t x_74; x_72 = lean_ctor_get(x_71, 1); lean_inc(x_72); lean_dec(x_71); -x_73 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; +x_73 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; x_74 = lean_string_dec_eq(x_72, x_73); lean_dec(x_72); if (x_74 == 0) { lean_object* x_75; lean_object* x_76; -x_75 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_75 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_10); x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_75, x_10); x_19 = x_76; @@ -11392,7 +10764,7 @@ else { lean_object* x_77; lean_object* x_78; lean_dec(x_71); -x_77 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_77 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_10); x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_77, x_10); x_19 = x_78; @@ -11403,7 +10775,7 @@ else { lean_object* x_79; lean_object* x_80; lean_dec(x_69); -x_79 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_79 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_10); x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_79, x_10); x_19 = x_80; @@ -11609,7 +10981,7 @@ lean_object* _init_l_Lean_Parser_Command_introRule___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___closed__1; +x_1 = l_Lean_Parser_Term_doPat___closed__2; x_2 = l_Lean_Parser_Command_introRule___closed__3; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; @@ -15591,7 +14963,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_extends___closed__1; -x_2 = l_Lean_Parser_Term_matchAlt___closed__2; +x_2 = l_Lean_Parser_Term_matchAlt___closed__1; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } diff --git a/stage0/stdlib/Init/Lean/Parser/Syntax.c b/stage0/stdlib/Init/Lean/Parser/Syntax.c index e60adad5e0..ff6e7077fd 100644 --- a/stage0/stdlib/Init/Lean/Parser/Syntax.c +++ b/stage0/stdlib/Init/Lean/Parser/Syntax.c @@ -40,7 +40,6 @@ lean_object* l_Lean_Parser_Syntax_many1; lean_object* l_Lean_Parser_Command_notation___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__2; lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); -lean_object* l_Lean_Parser_ParserState_mkError(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_mixfix; lean_object* l_Lean_Parser_Command_mixfixSymbol___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_lookahead___closed__4; @@ -122,7 +121,6 @@ lean_object* l_Lean_Parser_Syntax_str___closed__5; lean_object* l_Lean_Parser_Command_macroTailCommand___closed__5; lean_object* l_Lean_Parser_Command_strLitPrec___closed__1; extern lean_object* l_Lean_Parser_Level_num___elambda__1___closed__1; -extern lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; lean_object* l_Lean_Parser_Command_strLitPrec___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_syntaxCat___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_macroArgSimple___closed__1; @@ -180,7 +178,6 @@ extern lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__9; lean_object* l_Lean_Parser_Syntax_char___elambda__1___closed__5; lean_object* l_Lean_Parser_Syntax_sepBy___closed__4; lean_object* l_Lean_Parser_Command_macro___closed__5; -extern lean_object* l_Lean_Parser_Term_match___closed__3; extern lean_object* l_Lean_Parser_mkAntiquot___closed__3; lean_object* l_Lean_Parser_Syntax_str___closed__4; lean_object* l_Lean_Parser_Command_infix___elambda__1___closed__4; @@ -199,7 +196,6 @@ lean_object* l_Lean_Parser_Syntax_ident___closed__5; lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_macroTailDefault___closed__5; lean_object* l_Lean_Parser_Command_notation___closed__6; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_macroArg___closed__3; lean_object* l_Lean_Parser_Command_macroTail___closed__2; lean_object* l_Lean_Parser_Command_reserve___elambda__1___closed__5; @@ -326,14 +322,12 @@ lean_object* l_Lean_Parser_Command_infixr___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__6; lean_object* l_Lean_Parser_checkNoWsBeforeFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_cat; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_mkAntiquot___closed__10; lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__4; lean_object* l_Lean_Parser_orelseInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_char___closed__4; lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__3; lean_object* l_Lean_Parser_Syntax_lookahead___closed__3; -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_mixfixSymbol___closed__2; lean_object* l_Lean_Parser_Command_macroTailTactic; lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3; @@ -348,7 +342,6 @@ lean_object* l___regBuiltinParser_Lean_Parser_Syntax_str(lean_object*); lean_object* l_Lean_Parser_Syntax_ident___elambda__1___closed__3; extern lean_object* l___regBuiltinParser_Lean_Parser_Command_antiquot___closed__2; extern lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__5; extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__11; lean_object* l_Lean_Parser_Syntax_char___elambda__1___closed__2; @@ -373,7 +366,6 @@ lean_object* l_Lean_Parser_Command_mixfixSymbol___closed__3; lean_object* l_Lean_Parser_Command_quotedSymbolPrec___closed__4; lean_object* l_Lean_Parser_Syntax_char___elambda__1___closed__1; lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; -lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_identPrec___elambda__1___closed__2; lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__2; @@ -412,7 +404,6 @@ lean_object* l_Lean_Parser_Command_macroTailCommand___closed__1; lean_object* l_Lean_Parser_Command_identPrec___closed__4; lean_object* l_Lean_Parser_Command_syntax___closed__1; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__3; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_precedence___closed__3; extern lean_object* l_Lean_Parser_Tactic_orelse___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_macroTailTactic___elambda__1___boxed(lean_object*, lean_object*, lean_object*); @@ -478,7 +469,6 @@ lean_object* l_Lean_Parser_Command_reserve___closed__6; lean_object* l_Lean_Parser_Syntax_sepBy1___closed__1; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__2; extern lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__9; -uint8_t lean_nat_dec_le(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_syntaxCat___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_quotedSymbolPrec___closed__2; @@ -496,6 +486,7 @@ lean_object* l_Lean_Parser_Command_notation___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_infix___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_macro__rules___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_syntaxCat___closed__5; +extern lean_object* l_Lean_Parser_Term_match___elambda__1___closed__9; lean_object* l_Lean_Parser_maxPrec___closed__5; lean_object* l_Lean_Parser_Command_macroTailTactic___closed__6; lean_object* l_Lean_Parser_Command_notation___closed__1; @@ -595,7 +586,6 @@ lean_object* l_Lean_Parser_Syntax_char___closed__5; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot(uint8_t, lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Parser_Command_macroTailCommand; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_syntaxCat___closed__1; lean_object* l_Lean_Parser_Command_macro__rules; lean_object* l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; @@ -603,7 +593,6 @@ lean_object* l_Lean_Parser_Command_infix___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_prefix___closed__3; lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__6; lean_object* l_Lean_Parser_maxPrec___elambda__1___closed__5; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_try___closed__2; lean_object* l_Lean_Parser_Command_quotedSymbolPrec___elambda__1___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Syntax_ident(lean_object*); @@ -622,7 +611,6 @@ lean_object* l_Lean_Parser_precedence___closed__2; lean_object* l_Lean_Parser_Syntax_char___elambda__1(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; lean_object* l_Lean_Parser_Command_infixr___closed__4; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_macroTailDefault___closed__4; lean_object* l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; @@ -703,7 +691,6 @@ lean_object* l_Lean_Parser_Syntax_orelse; lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_macro___closed__9; lean_object* l_Lean_Parser_Command_syntax___closed__4; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_strLitPrec___elambda__1___closed__4; lean_object* l_Lean_Parser_syntaxParser(uint8_t, lean_object*); @@ -8674,254 +8661,6 @@ x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); return x_6; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} lean_object* _init_l_Lean_Parser_Command_macro__rules___elambda__1___closed__1() { _start: { @@ -9006,455 +8745,147 @@ return x_3; lean_object* l_Lean_Parser_Command_macro__rules___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__4; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Term_match___elambda__1___closed__9; x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); +x_6 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__4; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); +lean_inc(x_10); lean_inc(x_2); lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); -lean_dec(x_12); -if (x_13 == 0) +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -return x_9; +return x_11; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_52; lean_object* x_53; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_29; lean_object* x_30; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); lean_inc(x_2); -x_52 = l_Lean_Parser_tokenFn(x_2, x_14); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) +x_29 = l_Lean_Parser_tokenFn(x_2, x_16); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_54); -lean_dec(x_54); -if (lean_obj_tag(x_55) == 2) +lean_object* x_31; lean_object* x_32; +x_31 = lean_ctor_get(x_29, 0); +lean_inc(x_31); +x_32 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_31); +lean_dec(x_31); +if (lean_obj_tag(x_32) == 2) { -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; -x_58 = lean_string_dec_eq(x_56, x_57); -lean_dec(x_56); -if (x_58 == 0) +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; +x_35 = lean_string_dec_eq(x_33, x_34); +lean_dec(x_33); +if (x_35 == 0) { -lean_object* x_59; lean_object* x_60; -x_59 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_8); -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_8); -x_17 = x_60; -goto block_51; +lean_object* x_36; lean_object* x_37; +x_36 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +lean_inc(x_10); +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_36, x_10); +x_19 = x_37; +goto block_28; } else { -x_17 = x_52; -goto block_51; +x_19 = x_29; +goto block_28; } } else { -lean_object* x_61; lean_object* x_62; -lean_dec(x_55); -x_61 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_8); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_8); -x_17 = x_62; -goto block_51; +lean_object* x_38; lean_object* x_39; +lean_dec(x_32); +x_38 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +lean_inc(x_10); +x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_38, x_10); +x_19 = x_39; +goto block_28; } } else { -lean_object* x_63; lean_object* x_64; -lean_dec(x_53); -x_63 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_8); -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_8); -x_17 = x_64; -goto block_51; +lean_object* x_40; lean_object* x_41; +lean_dec(x_30); +x_40 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +lean_inc(x_10); +x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_40, x_10); +x_19 = x_41; +goto block_28; } -block_51: +block_28: { -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_19, 2); +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 3); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); -x_22 = l_Lean_FileMap_toPosition(x_20, x_21); -lean_dec(x_21); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = lean_apply_3(x_5, x_1, x_2, x_19); +x_22 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_18); +x_24 = l_Lean_Parser_mergeOrElseErrors(x_23, x_13, x_10); +lean_dec(x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_dec(x_20); -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = lean_ctor_get(x_17, 0); -lean_inc(x_24); -x_25 = lean_array_get_size(x_24); -lean_dec(x_24); -x_26 = lean_nat_dec_le(x_23, x_23); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_23); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_27 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkError(x_17, x_27); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_25); -x_31 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); -lean_dec(x_8); -return x_33; -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_inc(x_2); -lean_inc(x_1); -x_34 = l_Lean_Parser_Term_matchAlt___elambda__1(x_1, x_2, x_17); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) -{ -uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_36 = 0; -x_37 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2(x_23, x_36, x_1, x_2, x_34); -lean_dec(x_23); -x_38 = l_Lean_nullKind; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_25); -x_40 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_16); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_11, x_8); -lean_dec(x_8); -return x_42; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_35); -lean_dec(x_23); -lean_dec(x_2); -lean_dec(x_1); -x_43 = l_Lean_nullKind; -x_44 = l_Lean_Parser_ParserState_mkNode(x_34, x_43, x_25); -x_45 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_16); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_11, x_8); -lean_dec(x_8); -return x_47; -} -} -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_18); -lean_dec(x_2); -lean_dec(x_1); -x_48 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_17, x_48, x_16); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_11, x_8); -lean_dec(x_8); -return x_50; -} -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; +x_25 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_19, x_25, x_18); +x_27 = l_Lean_Parser_mergeOrElseErrors(x_26, x_13, x_10); lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; +return x_27; } -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; } } } @@ -9473,11 +8904,13 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_macro__rules___closed__1; -x_2 = l_Lean_Parser_Term_match___closed__3; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_match___elambda__1___closed__9; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_macro__rules___closed__1; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; } } lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__3() { @@ -9530,50 +8963,6 @@ x_1 = l_Lean_Parser_Command_macro__rules___closed__6; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___elambda__1___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro__rules___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} lean_object* l___regBuiltinParser_Lean_Parser_Command_macro__rules(lean_object* x_1) { _start: { diff --git a/stage0/stdlib/Init/Lean/Parser/Term.c b/stage0/stdlib/Init/Lean/Parser/Term.c index e42cc71d5b..101ba1c240 100644 --- a/stage0/stdlib/Init/Lean/Parser/Term.c +++ b/stage0/stdlib/Init/Lean/Parser/Term.c @@ -33,6 +33,7 @@ lean_object* l_Lean_Parser_Term_not; extern lean_object* l_Lean_Name_toString___closed__1; lean_object* l_Lean_Parser_Term_heq___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_parser_x21___elambda__1___closed__5; +lean_object* l_Lean_Parser_Term_matchAlts___closed__3; lean_object* l_Lean_Parser_Term_infixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_iff(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_suffices(lean_object*); @@ -65,10 +66,8 @@ lean_object* l_Lean_Parser_Term_fromTerm___closed__3; lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_orelse; lean_object* l_Lean_Parser_Term_seqLeft___closed__1; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_simpleBinder___closed__2; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__18; -lean_object* l_Lean_Parser_Term_letEqns___elambda__1___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_structInst(lean_object*); lean_object* l_Lean_Parser_Term_gt___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_haveAssign___elambda__1(lean_object*, lean_object*, lean_object*); @@ -83,6 +82,7 @@ lean_object* l_Lean_Parser_Term_have___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_explicit___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_bnot___closed__4; lean_object* l_Lean_Parser_Term_sub___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkError(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_optType___closed__2; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__7; @@ -114,6 +114,7 @@ lean_object* l_Lean_Parser_Term_mapConstRev___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_show; lean_object* l_Lean_Parser_Term_ne___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_band; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__3(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_sub___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_show___elambda__1___closed__5; extern lean_object* l_Array_iterateMAux___main___at_Lean_ppGoal___spec__6___closed__3; @@ -128,6 +129,7 @@ extern lean_object* l_Lean_Parser_Level_paren___closed__2; lean_object* l_Lean_Parser_darrow___elambda__1___rarg___closed__5; lean_object* l_Lean_Parser_Term_inaccessible___closed__1; lean_object* l_Lean_Parser_Term_not___closed__6; +lean_object* l_Lean_Parser_Term_matchAlts(uint8_t); lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__12; lean_object* l_Lean_Parser_Term_lt___elambda__1___closed__4; @@ -173,7 +175,7 @@ lean_object* l_Lean_Parser_Term_subst___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_seqLeft___closed__2; lean_object* l_Lean_Parser_Term_namedArgument___closed__5; -lean_object* l_Lean_Parser_Term_letEqns___elambda__1___closed__4; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_show___elambda__1___closed__8; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__5; lean_object* l_Lean_Parser_Term_match; @@ -197,7 +199,6 @@ lean_object* l_Lean_Parser_Term_inaccessible___closed__4; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_show___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_match__syntax___closed__7; -lean_object* l_Lean_Parser_Term_matchAlt___closed__8; lean_object* l_Lean_Parser_Term_prod___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_eq___elambda__1___closed__1; lean_object* l_Lean_Parser_sepByFn___at_Lean_Parser_Term_anonymousCtor___elambda__1___spec__1(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); @@ -308,11 +309,12 @@ lean_object* l_Lean_Parser_Term_nomatch___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_uminus___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_doPat___closed__2; lean_object* l_Lean_Parser_Term_heq___closed__2; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_do___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_andM___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_seq___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_letEqns___closed__5; +lean_object* l_Lean_Parser_Term_matchAlts___closed__6; lean_object* l_Lean_Parser_Term_namedArgument___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_namedArgument___closed__3; lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_tupleTail___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -326,7 +328,6 @@ lean_object* l_Lean_Parser_Term_or___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_have___elambda__1___closed__11; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__12; lean_object* l_Lean_Parser_Term_match__syntax___closed__3; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; extern lean_object* l_Lean_Parser_symbolNoWsFn___closed__1; lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_bor___elambda__1(lean_object*, lean_object*, lean_object*); @@ -346,20 +347,19 @@ lean_object* l_Lean_Parser_Term_doLet___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_doPat___closed__4; lean_object* l_Lean_Parser_Term_doId___closed__2; lean_object* l_Lean_Parser_Term_nomatch___elambda__1___closed__4; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; lean_object* l_Lean_Parser_Term_listLit___closed__2; lean_object* l_Lean_Parser_Term_band___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_if___elambda__1___closed__20; lean_object* l_Lean_Parser_Term_seqRight___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_match___elambda__1___closed__11; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_let___elambda__1___closed__7; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_not___closed__3; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_addBuiltinParser(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_letEqns___closed__3; lean_object* l_Lean_Parser_Term_optIdent___closed__4; lean_object* lean_array_get_size(lean_object*); lean_object* l_Lean_Parser_Term_doId___closed__1; @@ -376,12 +376,9 @@ lean_object* lean_string_append(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_explicit___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_sorry___closed__2; lean_object* l_Lean_Parser_Term_if___closed__11; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_num___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_checkIsSort___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_map(lean_object*); -lean_object* l_Lean_Parser_Term_letEqns___elambda__1___closed__2; lean_object* l_Lean_Parser_tokenFn(lean_object*, lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_let(lean_object*); lean_object* l_Lean_Parser_Term_doPat___closed__8; @@ -460,7 +457,6 @@ lean_object* l_Lean_Parser_Term_match___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_sort___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_not___closed__2; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__11; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_mkTermIdFromIdent___closed__1; lean_object* l_Lean_Parser_Term_explicitUniv___closed__10; lean_object* l_Lean_Parser_Term_do___elambda__1___closed__2; @@ -476,6 +472,7 @@ lean_object* l_Lean_Parser_Term_lt___elambda__1___closed__2; lean_object* l_Lean_Parser_darrow___elambda__1___rarg___closed__8; lean_object* l_Lean_Parser_Term_pow___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_uminus___closed__7; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4; lean_object* l_Lean_Parser_Term_suffices___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__8; lean_object* l_Lean_Parser_symbolFn___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -485,7 +482,6 @@ lean_object* l_Lean_Parser_Term_paren___closed__7; lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__17; lean_object* l_Lean_Parser_Term_anonymousCtor___closed__2; lean_object* l_Lean_Parser_Term_sort___elambda__1___closed__6; -lean_object* l___regBuiltinParser_Lean_Parser_Term_letEqns(lean_object*); extern lean_object* l_Lean_mkAppStx___closed__8; lean_object* l_Lean_Parser_Term_explicit___closed__4; lean_object* l_Lean_Parser_Term_cdot___closed__1; @@ -539,14 +535,13 @@ lean_object* l_Lean_Parser_Term_bindOp___closed__3; lean_object* l_Lean_Parser_Term_add___elambda__1(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_mkTermIdFromIdent___closed__2; lean_object* l_Lean_Parser_Term_parser_x21___elambda__1(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_beq___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_dollar; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_cdot___closed__3; lean_object* l_Lean_Parser_Term_simpleBinder___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_mul___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__9; +lean_object* l_Lean_Parser_Term_match___elambda__1___closed__15; extern lean_object* l_Lean_Parser_unicodeSymbolFn___rarg___closed__1; lean_object* l_Lean_Parser_Term_let__core___elambda__1___closed__14; lean_object* l_Lean_Parser_Term_let__core___closed__10; @@ -565,8 +560,6 @@ lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_ lean_object* l_Lean_Parser_Term_seqRight___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_id(lean_object*); lean_object* l_Lean_Parser_Term_doElem___closed__3; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_if___closed__3; lean_object* l_Lean_Parser_Term_suffices___closed__4; lean_object* l_Lean_Parser_Term_let__core___elambda__1___closed__3; @@ -587,6 +580,7 @@ lean_object* l_Lean_Parser_Term_binderDefault; lean_object* l_Lean_Parser_unicodeSymbolFn___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_namedPattern___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__9; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_uminus___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_sort___closed__1; extern lean_object* l_Lean_Parser_termParser___closed__1; @@ -601,7 +595,6 @@ lean_object* l_Lean_Parser_Term_prod___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_sort___closed__2; lean_object* l_Lean_Parser_Term_uminus___closed__3; lean_object* l_Lean_Parser_Term_let___closed__1; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_namedHole___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_subtype___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_typeAscription; @@ -625,7 +618,7 @@ lean_object* l_Lean_Parser_Term_seqLeft___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_match___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_anonymousCtor___closed__3; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrow; lean_object* l_Lean_Parser_Term_letIdLhs___closed__5; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__1; @@ -640,10 +633,8 @@ lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_mapRev___closed__1; lean_object* l_Lean_Parser_Term_do___closed__2; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_let___closed__9; lean_object* l_Lean_Parser_Term_gt___closed__2; lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__3; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_ge___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_optIdent; @@ -651,9 +642,11 @@ lean_object* l_Lean_Parser_Term_paren___closed__2; lean_object* l_Lean_Parser_Term_suffices___elambda__1___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_mapRev(lean_object*); lean_object* l_Lean_Parser_Term_structInst___closed__8; +lean_object* l_Lean_Parser_Term_matchAlts___elambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_append___closed__3; lean_object* l_Lean_Parser_Term_show___closed__1; lean_object* l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__1; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_subtype___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_modN___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_checkIsSort___elambda__1(lean_object*, lean_object*, lean_object*); @@ -704,16 +697,17 @@ lean_object* l_Lean_Parser_Term_or___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_namedPattern___elambda__1___closed__7; lean_object* lean_nat_sub(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_binderTactic; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_namedArgument___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_mapRev___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Term_forall(lean_object*); lean_object* l_Lean_Parser_Term_proj___closed__8; lean_object* l_Lean_Parser_Term_bor___closed__3; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__9(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_modN___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_implicitBinder___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_ge___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_typeSpec___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Term_andM(lean_object*); lean_object* l_Lean_Parser_Term_proj___closed__9; @@ -781,7 +775,6 @@ lean_object* l_Lean_Parser_Term_orM___closed__2; lean_object* l_Lean_Parser_Term_fcomp___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_paren___closed__8; lean_object* l_Lean_Parser_Term_append___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_leftArrow___closed__3; lean_object* l_Lean_Parser_Term_letPatDecl___closed__5; lean_object* l_Lean_Parser_Term_show___elambda__1___closed__7; @@ -881,7 +874,6 @@ lean_object* l_Lean_Parser_Term_depArrow___closed__4; lean_object* l_Lean_Parser_Term_subtype___closed__5; lean_object* l___regBuiltinParser_Lean_Parser_Term_bindOp(lean_object*); lean_object* l_Lean_Parser_Term_seqRight___closed__2; -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_sort___closed__4; lean_object* l_Lean_Parser_Term_namedHole; lean_object* l_Lean_Parser_Term_prod___elambda__1___closed__4; @@ -902,11 +894,11 @@ lean_object* l_Lean_Parser_Term_mod___closed__3; lean_object* l_Lean_Parser_Term_id___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_tparser_x21___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_where___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_bnot___elambda__1___closed__8; lean_object* l_Lean_Parser_strAux___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_fun___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_fromTerm___elambda__1___closed__8; -lean_object* l_Lean_Parser_Term_letEqns___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_char___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_cdot___closed__5; @@ -964,7 +956,6 @@ lean_object* l_Lean_Parser_Term_or___elambda__1(lean_object*, lean_object*, lean lean_object* l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(lean_object*); lean_object* l_Lean_Parser_Term_structInstSource___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Term_seq(lean_object*); -lean_object* l_Lean_Parser_Term_equation; lean_object* l_Lean_Parser_Term_sub___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_let__core___closed__3; lean_object* l_Lean_Parser_Term_bindOp___closed__2; @@ -990,6 +981,7 @@ lean_object* l_Lean_Parser_Term_lt___closed__1; lean_object* l_Lean_Parser_Term_bindOp___closed__1; lean_object* l_Lean_Parser_Term_seq; lean_object* l_Lean_Parser_Term_depArrow___closed__1; +lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_proj___closed__5; lean_object* l_Lean_Parser_Term_binderDefault___closed__2; lean_object* l_Lean_Parser_Term_orM___elambda__1___closed__1; @@ -1005,16 +997,15 @@ lean_object* l_Lean_Parser_Term_sort___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_optType___closed__3; lean_object* l_Lean_Parser_Term_structInstField___closed__4; lean_object* l_Lean_Parser_Term_proj___closed__3; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_uminus; lean_object* l_Lean_Parser_Term_namedArgument; lean_object* l_Lean_Parser_Term_namedHole___elambda__1___closed__1; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_implicitBinder(uint8_t); lean_object* l___regBuiltinParser_Lean_Parser_Term_seqLeft(lean_object*); lean_object* l_Lean_Parser_Term_orM___closed__3; lean_object* l_Lean_Parser_Term_tparser_x21___elambda__1___closed__7; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_matchAlts___closed__4; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_namedPattern___closed__6; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1061,6 +1052,7 @@ lean_object* l_Lean_Parser_Term_explicitUniv___closed__9; lean_object* l_Lean_Parser_Term_match___closed__1; lean_object* l_Lean_Parser_symbolNoWsInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_explicitUniv___closed__4; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_append___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_proj___closed__2; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); @@ -1090,7 +1082,6 @@ lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Term_arrayRef(lean_object*); lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__10; lean_object* l_Lean_Parser_Term_beq___elambda__1___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_bor___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_listLit___closed__7; lean_object* l_Lean_Parser_Term_bor___elambda__1___closed__2; @@ -1098,7 +1089,6 @@ lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__7; lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__2; lean_object* l_Lean_Parser_Term_or___elambda__1___closed__5; -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_emptyC; lean_object* l_Lean_Parser_Term_letPatDecl___closed__3; @@ -1143,6 +1133,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_mod(lean_object*); lean_object* l_Lean_Parser_Term_emptyC___closed__1; lean_object* l_Lean_Parser_Term_not___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_match__syntax___closed__4; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_show___closed__7; lean_object* l_Lean_Parser_ParserState_restore(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrayRef___elambda__1___closed__1; @@ -1167,8 +1158,11 @@ lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; lean_object* l___regBuiltinParser_Lean_Parser_Term_nomatch(lean_object*); lean_object* l_Lean_Parser_Term_structInstField; lean_object* l_Lean_Parser_Term_iff___elambda__1___closed__4; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__5(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_borrowed___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_typeAscription___closed__3; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; lean_object* l_Lean_Parser_Term_have___closed__10; lean_object* l_Lean_Parser_Term_arrayRef___closed__6; lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__15; @@ -1210,6 +1204,7 @@ lean_object* l_Lean_Parser_Term_dollarProj___closed__5; lean_object* l_Lean_Parser_Term_append___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_letDecl___closed__4; lean_object* l_Lean_Parser_Term_prod___elambda__1___closed__3; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_if___closed__2; lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__4; @@ -1261,6 +1256,7 @@ lean_object* l_Lean_Parser_Term_letDecl___closed__1; lean_object* l_Lean_Parser_Term_unicodeInfixL___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_namedHole___closed__3; lean_object* l_Lean_Parser_Term_emptyC___closed__4; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3; lean_object* l_Lean_Parser_Term_band___closed__3; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_structInstSource___elambda__1___closed__6; @@ -1291,7 +1287,6 @@ lean_object* l_Lean_Parser_Term_if___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_tupleTail; lean_object* l_Lean_Parser_Term_typeAscription___closed__5; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_le___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_eq___closed__2; lean_object* l_Lean_Parser_Term_binderIdent; @@ -1305,11 +1300,11 @@ lean_object* l_Lean_Parser_Term_str___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_explicit___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_fromTerm___closed__4; lean_object* l_Lean_Parser_Term_let__core___elambda__1___closed__12; -lean_object* l_Lean_Parser_Term_matchAlt___closed__9; lean_object* l_Lean_Parser_Term_arrayLit; lean_object* l_Lean_Parser_Term_mul___closed__2; lean_object* l_Lean_Parser_Term_mod___closed__2; lean_object* l_Lean_Parser_Term_leftArrow; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_have___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_namedPattern___closed__4; @@ -1327,6 +1322,7 @@ lean_object* l_Lean_Parser_Term_map___elambda__1(lean_object*, lean_object*, lea lean_object* l___regBuiltinParser_Lean_Parser_Term_le(lean_object*); lean_object* l_Lean_Parser_Term_seqRight; lean_object* l_Lean_Parser_Term_bindOp; +lean_object* l_Lean_Parser_Term_doPat___closed__10; lean_object* l_Lean_Parser_Term_simpleBinder; lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_bor___elambda__1___closed__3; @@ -1382,6 +1378,7 @@ lean_object* l_Lean_Parser_Term_tupleTail___closed__6; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__2; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_structInstSource___elambda__1___closed__1; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_prod___closed__1; lean_object* l_Lean_Parser_Term_subst___closed__3; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__2; @@ -1399,9 +1396,9 @@ lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_instBinder___closed__8; lean_object* l___regBuiltinParser_Lean_Parser_Term_bor(lean_object*); lean_object* l_Lean_Parser_darrow___closed__1; +lean_object* l_Lean_Parser_Term_matchAlts___elambda__1(uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; lean_object* l_Lean_Parser_Term_explicitBinder___elambda__1___closed__1; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_paren___elambda__1___closed__2; lean_object* l_Lean_Parser_categoryParser(uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_letIdLhs___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1424,7 +1421,6 @@ lean_object* l_Lean_Parser_Term_inaccessible___closed__3; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_str___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_let___closed__3; -lean_object* l_Lean_Parser_Term_letEqns; lean_object* l_Lean_Parser_Term_suffices___closed__7; lean_object* l_Lean_Parser_Term_hole___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; @@ -1480,7 +1476,6 @@ lean_object* l_Lean_Parser_Term_sortApp___closed__5; lean_object* l_Lean_Parser_symbolInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_match___closed__9; lean_object* l_Lean_Parser_Term_tupleTail___closed__5; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_mapRev___elambda__1___closed__2; lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__1; lean_object* l_Lean_Parser_Term_id___closed__7; @@ -1495,10 +1490,10 @@ extern lean_object* l_Lean_Parser_epsilonInfo; lean_object* l_Lean_Parser_Term_have___closed__4; lean_object* l_Lean_Parser_Term_mod___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_append___elambda__1___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_num___closed__3; lean_object* l_Lean_Parser_Term_match___closed__4; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__1; +lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_app___closed__5; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_explicitUniv___closed__1; @@ -1507,7 +1502,7 @@ lean_object* l_Lean_Parser_Term_typeAscription___closed__1; lean_object* l_Lean_Parser_Term_gt___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; lean_object* l_Lean_Parser_Term_letDecl___elambda__1(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +lean_object* l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_letIdLhs___closed__4; lean_object* l_Lean_Parser_Term_doLet___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_if___elambda__1___closed__17; @@ -1529,6 +1524,7 @@ lean_object* l_Lean_Parser_Term_binderType___closed__4; lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_let___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_bne___closed__2; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_where___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_subtype___closed__10; lean_object* l_Lean_Parser_Term_append___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1545,12 +1541,14 @@ lean_object* l_Lean_Parser_Term_pow___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_binderDefault___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_id___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_cons___elambda__1___closed__2; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_borrowed___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_if___closed__6; lean_object* l_Lean_Parser_Term_char; lean_object* l_Lean_Parser_Term_structInstField___closed__5; +lean_object* l_Lean_Parser_Term_matchAlts___closed__2; +lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_append; lean_object* l_Lean_Parser_Term_letIdLhs___closed__6; lean_object* l_Lean_Parser_Term_borrowed___elambda__1___closed__2; @@ -1566,6 +1564,7 @@ lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_gt; lean_object* l_Lean_Parser_Term_doExpr___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_tparser_x21___closed__2; +lean_object* l_Lean_Parser_Term_matchAlts___boxed(lean_object*); lean_object* l_Lean_Parser_Term_not___closed__4; lean_object* l_Lean_Parser_Term_subst___closed__1; lean_object* l_Lean_Parser_Term_beq___elambda__1___closed__3; @@ -1586,8 +1585,12 @@ lean_object* l_Lean_Parser_Term_hole; lean_object* l_Lean_Parser_Term_app___closed__1; lean_object* l_Lean_Parser_Term_emptyC___closed__5; lean_object* l_Lean_Parser_Term_let__core___elambda__1___closed__11; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_if___closed__4; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__3; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1; extern lean_object* l___private_Init_Lean_Parser_Parser_14__antiquotNestedExpr___closed__6; lean_object* l_Lean_Parser_Term_haveAssign___closed__5; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; @@ -1602,12 +1605,11 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_prop(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_antiquot(lean_object*); lean_object* l_Lean_Parser_Term_doExpr___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_bindOp___elambda__1___closed__4; -lean_object* l_Lean_Parser_Term_letEqns___closed__4; lean_object* l_Lean_Parser_darrow___elambda__1(lean_object*); extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_pow___closed__3; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_not___closed__8; -lean_object* l_Lean_Parser_Term_match___closed__11; lean_object* l_Lean_Parser_Term_implicitBinder___boxed(lean_object*); lean_object* l_Lean_Parser_Term_mapConst___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_letSimpleDecl; @@ -1624,6 +1626,7 @@ lean_object* l_Lean_Parser_Term_tparser_x21___closed__4; lean_object* l_Lean_Parser_Term_doExpr___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_typeAscription___closed__2; lean_object* l_Lean_Parser_Term_seq___closed__3; +lean_object* l_Lean_Parser_Term_matchAlts___closed__1; lean_object* l_Lean_Parser_Term_structInst___closed__7; lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_doLet___closed__4; @@ -1638,14 +1641,15 @@ lean_object* l_Lean_Parser_Term_mapConstRev___elambda__1(lean_object*, lean_obje lean_object* l_Lean_Parser_Term_instBinder___closed__4; lean_object* l_Lean_Parser_Term_leftArrow___closed__2; lean_object* l_Lean_Parser_Term_ne___elambda__1(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_letEqns___closed__1; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_heq___closed__1; lean_object* l_Lean_Parser_Term_borrowed___closed__6; lean_object* l_Lean_Parser_Term_mapRev___closed__3; lean_object* l_Lean_Parser_Term_matchAlt___closed__1; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__12; lean_object* l_Lean_Parser_Term_checkIsSort___closed__2; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_parser_x21___closed__4; lean_object* l_Lean_Parser_Term_orelse___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1660,9 +1664,8 @@ lean_object* l_Lean_Parser_Term_doLet___closed__2; extern lean_object* l_Lean_mkHole___closed__2; lean_object* l_Lean_Parser_Term_type___closed__5; lean_object* l_Lean_Parser_darrow___elambda__1___rarg___closed__1; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_let__core___closed__8; -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_match___elambda__1___closed__10; lean_object* l_Lean_Parser_Term_unicodeInfixR___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_darrow___elambda__1___rarg___closed__2; @@ -1671,13 +1674,13 @@ lean_object* l_Lean_Parser_Term_and___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_equiv___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_letPatDecl___elambda__1(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_Term_letEqns___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_have___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_binderType___closed__6; lean_object* l_Lean_Parser_Term_typeSpec___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_haveAssign___closed__3; lean_object* l_Lean_Parser_Term_typeSpec___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_forall___closed__5; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_pow; lean_object* l_Lean_Parser_Term_leftArrow___closed__1; lean_object* l_Lean_Parser_Term_match__syntax___closed__6; @@ -1687,6 +1690,7 @@ lean_object* l_Lean_Parser_Term_do___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_doLet___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_namedHole___closed__6; lean_object* l___regBuiltinParser_Lean_Parser_Term_listLit(lean_object*); +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_type___elambda__1___closed__6; lean_object* l_Lean_Parser_mkAntiquot(uint8_t, lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Parser_Term_dollarProj___elambda__1___closed__6; @@ -1700,6 +1704,7 @@ lean_object* l_Lean_Parser_Term_typeAscription___closed__6; lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__3; lean_object* l_Lean_Parser_Term_lt; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_matchAlts___closed__5; lean_object* l_Lean_Parser_Term_bor___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_doId___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_mapConst___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1717,7 +1722,6 @@ lean_object* l_Lean_Parser_Term_simpleBinder___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_structInstSource___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_bne___elambda__1___closed__2; -lean_object* l_Lean_Parser_Term_matchAlt___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_optIdent___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_gt___closed__1; lean_object* l_Lean_Parser_Term_ge; @@ -1732,7 +1736,6 @@ lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_map___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_namedPattern___closed__2; -lean_object* l_Lean_Parser_Term_letEqns___closed__2; lean_object* l_Lean_Parser_Term_sorry___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_dollarProj; lean_object* l_Lean_Parser_Term_dollarProj___elambda__1___closed__4; @@ -1775,6 +1778,7 @@ lean_object* l_Lean_Parser_Term_mapRev___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_uminus___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_bindOp___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_suffices; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_mapConstRev; lean_object* l_Lean_Parser_Term_iff; lean_object* l_Lean_Parser_Term_iff___elambda__1___closed__5; @@ -1797,6 +1801,8 @@ lean_object* l_Lean_Parser_Term_proj___elambda__1(lean_object*, lean_object*, le lean_object* l___regBuiltinParser_Lean_Parser_Term_char(lean_object*); lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_let___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1___rarg___closed__6; lean_object* l_Lean_Parser_ParserState_mkUnexpectedError(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_subtype___closed__4; @@ -1825,6 +1831,7 @@ lean_object* l_Lean_Parser_darrow___elambda__1___rarg___closed__9; lean_object* l_Lean_Parser_Term_bne___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_mapConstRev___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_have___elambda__1___closed__13; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_dollar___closed__1; lean_object* l_Lean_Parser_Term_doExpr___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_char___elambda__1___closed__4; @@ -1833,6 +1840,7 @@ lean_object* l_Lean_Parser_Term_map___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_matchAlt___closed__6; lean_object* l_Lean_Parser_Term_parenSpecial___closed__4; lean_object* l_Lean_Parser_Term_modN___elambda__1___closed__1; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8(lean_object*, uint8_t, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__9; lean_object* l___regBuiltinParser_Lean_Parser_Term_or(lean_object*); lean_object* l_Lean_Parser_Term_iff___elambda__1___closed__3; @@ -1869,10 +1877,12 @@ lean_object* l_Lean_Parser_Term_namedPattern___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_doExpr; lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_suffices___closed__6; +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; lean_object* l_Lean_Parser_Term_sortApp___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_depArrow___closed__7; lean_object* l_Lean_Parser_Term_seq___closed__1; lean_object* l_Lean_Parser_Term_letSimpleDecl___closed__4; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_paren(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_if(lean_object*); lean_object* l_Lean_Parser_Term_arrow___closed__3; @@ -1884,7 +1894,6 @@ lean_object* l_Lean_Parser_Term_doExpr___closed__3; lean_object* l_Lean_Parser_Term_binderTactic___closed__3; lean_object* l_Lean_Parser_Term_doId___closed__6; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1(lean_object*); -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_unicodeInfixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_dollar___elambda__1___closed__2; @@ -1904,6 +1913,7 @@ lean_object* l_Lean_Parser_Term_equiv___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_dollar___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_char___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_bnot___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_let; lean_object* l_Lean_Parser_Term_depArrow___closed__3; lean_object* l_Lean_Parser_Term_namedHole___closed__1; @@ -1918,7 +1928,6 @@ lean_object* l_Lean_Parser_Term_parser_x21___closed__6; lean_object* l_Lean_Parser_Term_seq___closed__2; lean_object* l_Lean_Parser_Term_binderType___elambda__1___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__6; -lean_object* l_Lean_Parser_Term_letEqns___closed__6; lean_object* l_Lean_Parser_Term_char___elambda__1___closed__3; extern lean_object* l_Lean_Parser_Level_paren___closed__1; lean_object* l_Lean_Parser_Term_where___closed__7; @@ -1927,7 +1936,6 @@ lean_object* l_Lean_Parser_Term_arrayRef___closed__3; lean_object* l_Lean_Parser_Term_typeSpec___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_hole___closed__1; lean_object* l_Lean_Parser_Term_match___elambda__1___closed__13; -lean_object* l_Lean_Parser_Term_letEqnsDecl___closed__4; lean_object* l_Lean_Parser_Term_prop___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_inaccessible___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_borrowed___closed__1; @@ -1941,6 +1949,7 @@ lean_object* l_Lean_Parser_Term_app___closed__3; lean_object* l_Lean_Parser_Term_tparser_x21; lean_object* l_Lean_Parser_Term_binderTactic___closed__5; lean_object* l_Lean_Parser_Term_doId___elambda__1___closed__3; +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_proj___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_app___closed__4; lean_object* _init_l_Lean_Parser_darrow___elambda__1___rarg___closed__1() { @@ -19735,60 +19744,11 @@ uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; x_1 = 0; x_2 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__1; x_3 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__3; -x_4 = 1; +x_4 = 0; x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); return x_5; } } -lean_object* _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string(" | "); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__5; -x_2 = l_String_trim(x_1); -return x_2; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Char_HasRepr___closed__1; -x_2 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__7; -x_2 = l_Char_HasRepr___closed__1; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__8; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} lean_object* l_Lean_Parser_Term_matchAlt___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -19836,7 +19796,7 @@ return x_9; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_41; lean_object* x_42; +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; lean_inc(x_8); x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); lean_dec(x_7); @@ -19844,132 +19804,54 @@ x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_array_get_size(x_15); lean_dec(x_15); +x_17 = 0; +x_18 = 0; lean_inc(x_2); -x_41 = l_Lean_Parser_tokenFn(x_2, x_14); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); -lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); -lean_dec(x_45); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; -lean_inc(x_8); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_8); -x_17 = x_49; -goto block_40; -} -else -{ -x_17 = x_41; -goto block_40; -} -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_44); -x_50 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; -lean_inc(x_8); -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_50, x_8); -x_17 = x_51; -goto block_40; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_42); -x_52 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; -lean_inc(x_8); -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_52, x_8); -x_17 = x_53; -goto block_40; -} -block_40: -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -uint8_t x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; -x_19 = 0; -x_20 = 0; -lean_inc(x_2); -x_21 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_19, x_20, x_20, x_1, x_2, x_17); +x_19 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_17, x_18, x_18, x_1, x_2, x_14); lean_dec(x_1); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_inc(x_2); +x_21 = l_Lean_Parser_darrow___elambda__1___rarg(x_2, x_19); x_22 = lean_ctor_get(x_21, 3); lean_inc(x_22); if (lean_obj_tag(x_22) == 0) { -lean_object* x_23; lean_object* x_24; -lean_inc(x_2); -x_23 = l_Lean_Parser_darrow___elambda__1___rarg(x_2, x_21); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_25 = l_Lean_Parser_termParser___closed__2; -x_26 = lean_unsigned_to_nat(0u); -x_27 = l_Lean_Parser_categoryParserFn(x_25, x_26, x_2, x_23); -x_28 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_16); -x_30 = l_Lean_Parser_mergeOrElseErrors(x_29, x_11, x_8); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_23 = l_Lean_Parser_termParser___closed__2; +x_24 = lean_unsigned_to_nat(0u); +x_25 = l_Lean_Parser_categoryParserFn(x_23, x_24, x_2, x_21); +x_26 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_16); +x_28 = l_Lean_Parser_mergeOrElseErrors(x_27, x_11, x_8); lean_dec(x_8); -return x_30; +return x_28; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_24); -lean_dec(x_2); -x_31 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_23, x_31, x_16); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); -lean_dec(x_8); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_dec(x_22); lean_dec(x_2); -x_34 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_21, x_34, x_16); -x_36 = l_Lean_Parser_mergeOrElseErrors(x_35, x_11, x_8); +x_29 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_16); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_11, x_8); lean_dec(x_8); -return x_36; +return x_31; } } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_18); +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); lean_dec(x_2); -lean_dec(x_1); -x_37 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_17, x_37, x_16); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_11, x_8); +x_32 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_19, x_32, x_16); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_11, x_8); lean_dec(x_8); -return x_39; -} +return x_34; } } } @@ -19978,16 +19860,6 @@ return x_39; lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; -x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__2() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_typeAscription___closed__2; x_2 = lean_ctor_get(x_1, 0); @@ -19997,7 +19869,7 @@ x_4 = l_Lean_Parser_sepBy1Info(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__3() { +lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; @@ -20011,49 +19883,39 @@ x_5 = l_Lean_Parser_andthenInfo(x_4, x_2); return x_5; } } +lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_matchAlt___closed__1; +x_2 = l_Lean_Parser_Term_matchAlt___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___closed__2; +x_1 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; x_2 = l_Lean_Parser_Term_matchAlt___closed__3; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); return x_3; } } lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___closed__1; -x_2 = l_Lean_Parser_Term_matchAlt___closed__4; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__2; -x_2 = l_Lean_Parser_Term_matchAlt___closed__5; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__7() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_matchAlt___closed__6; +x_3 = l_Lean_Parser_Term_matchAlt___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__8() { +lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__6() { _start: { lean_object* x_1; @@ -20061,12 +19923,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_matchAlt___elambda__1), 3, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__9() { +lean_object* _init_l_Lean_Parser_Term_matchAlt___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___closed__7; -x_2 = l_Lean_Parser_Term_matchAlt___closed__8; +x_1 = l_Lean_Parser_Term_matchAlt___closed__5; +x_2 = l_Lean_Parser_Term_matchAlt___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -20077,265 +19939,2985 @@ lean_object* _init_l_Lean_Parser_Term_matchAlt() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_matchAlt___closed__9; +x_1 = l_Lean_Parser_Term_matchAlt___closed__7; return x_1; } } -lean_object* _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1() { +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string("'match' alternatives must be indented"); +x_1 = lean_mk_string("|"); return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2() { _start: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3() { +_start: { -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("alternatives must be indented"); +return x_1; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; } else { -x_9 = x_5; -goto block_24; +x_32 = x_13; +goto block_48; } -block_24: +block_31: { -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) { -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) +lean_dec(x_17); +lean_dec(x_16); { -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} goto _start; } else { -lean_object* x_16; lean_object* x_17; +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; } } else { -lean_object* x_18; uint8_t x_19; +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; } } } } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: { -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; } else { -x_9 = x_5; -goto block_24; +x_32 = x_13; +goto block_48; } -block_24: +block_31: { -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) { -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) +lean_dec(x_17); +lean_dec(x_16); { -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} goto _start; } else { -lean_object* x_16; lean_object* x_17; +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; } } else { -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else { +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); lean_dec(x_8); lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__3(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); return x_11; } -else +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: { -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); lean_dec(x_8); lean_dec(x_7); -return x_9; +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; } else { -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__5(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__9(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_array_get_size(x_10); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l_Lean_Parser_Term_matchAlt___elambda__1(x_7, x_8, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_32; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; +lean_dec(x_12); +lean_dec(x_11); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_49 = lean_ctor_get(x_8, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 2); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_FileMap_toPosition(x_50, x_17); +lean_dec(x_50); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_nat_dec_le(x_1, x_52); +lean_dec(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6; +x_55 = l_Lean_Parser_ParserState_mkError(x_13, x_54); +x_32 = x_55; +goto block_48; +} +else +{ +x_32 = x_13; +goto block_48; +} +block_31: +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_dec(x_17); +lean_dec(x_16); +{ +uint8_t _tmp_5 = x_3; +lean_object* _tmp_8 = x_18; +x_6 = _tmp_5; +x_9 = _tmp_8; +} +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +x_21 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +lean_dec(x_16); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_nat_sub(x_23, x_4); +lean_dec(x_23); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_nullKind; +x_28 = l_Lean_Parser_ParserState_mkNode(x_21, x_27, x_4); +return x_28; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_4); +return x_30; +} +else +{ +lean_dec(x_4); +return x_21; +} +} +} +} +block_48: +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_inc(x_8); +x_35 = l_Lean_Parser_tokenFn(x_8, x_32); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_18 = x_43; +goto block_31; +} +else +{ +lean_dec(x_34); +x_18 = x_35; +goto block_31; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_18 = x_45; +goto block_31; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_18 = x_47; +goto block_31; +} +} +else +{ +lean_dec(x_33); +x_18 = x_32; +goto block_31; +} +} +} +else +{ +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +if (x_6 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_12); +lean_dec(x_11); +x_56 = lean_box(0); +x_57 = l_Lean_Parser_ParserState_pushSyntax(x_13, x_56); +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_4); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); +lean_dec(x_11); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_nat_sub(x_62, x_4); +lean_dec(x_62); +x_64 = lean_unsigned_to_nat(2u); +x_65 = lean_nat_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_4); +return x_67; +} +else +{ +if (x_5 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_4); +return x_69; +} +else +{ +lean_object* x_70; +lean_dec(x_4); +x_70 = l_Lean_Parser_ParserState_popSyntax(x_60); +return x_70; +} +} +} +} +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17(lean_object* x_1, uint8_t x_2, uint8_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = 0; +x_11 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18(x_1, x_2, x_3, x_9, x_4, x_10, x_5, x_6, x_7); +return x_11; +} +} +lean_object* l_Lean_Parser_Term_matchAlts___elambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_5 = lean_ctor_get(x_3, 0); +lean_inc(x_5); +x_6 = lean_ctor_get(x_5, 2); +lean_inc(x_6); +lean_dec(x_5); +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = l_Lean_FileMap_toPosition(x_6, x_7); +lean_dec(x_6); +if (x_1 == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_ctor_get(x_8, 1); +lean_inc(x_9); +lean_dec(x_8); +lean_inc(x_3); +x_10 = l_Lean_Parser_tokenFn(x_3, x_4); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_12); +lean_dec(x_12); +if (lean_obj_tag(x_13) == 2) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_16 = lean_string_dec_eq(x_14, x_15); +lean_dec(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_9); +lean_dec(x_3); +lean_dec(x_2); +x_17 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_18 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_17, x_7); +return x_18; +} +else +{ +uint8_t x_19; uint8_t x_20; lean_object* x_21; +lean_dec(x_7); +x_19 = 0; +x_20 = 0; +x_21 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7(x_9, x_19, x_20, x_20, x_2, x_3, x_10); +lean_dec(x_9); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_13); +lean_dec(x_9); +lean_dec(x_3); +lean_dec(x_2); +x_22 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_22, x_7); return x_23; } } +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_3); +lean_dec(x_2); +x_24 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_24, x_7); +return x_25; } } +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_53; lean_object* x_54; +x_26 = lean_ctor_get(x_8, 1); +lean_inc(x_26); +lean_dec(x_8); +x_27 = lean_ctor_get(x_4, 0); +lean_inc(x_27); +x_28 = lean_array_get_size(x_27); +lean_dec(x_27); +lean_inc(x_3); +x_53 = l_Lean_Parser_tokenFn(x_3, x_4); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_55); +lean_dec(x_55); +if (lean_obj_tag(x_56) == 2) +{ +lean_object* x_57; lean_object* x_58; uint8_t x_59; +x_57 = lean_ctor_get(x_56, 1); +lean_inc(x_57); +lean_dec(x_56); +x_58 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_59 = lean_string_dec_eq(x_57, x_58); +lean_dec(x_57); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; +x_60 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +lean_inc(x_7); +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_7); +x_29 = x_61; +goto block_52; +} +else +{ +x_29 = x_53; +goto block_52; +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_56); +x_62 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +lean_inc(x_7); +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_7); +x_29 = x_63; +goto block_52; +} +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_54); +x_64 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5; +lean_inc(x_7); +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_7); +x_29 = x_65; +goto block_52; +} +block_52: +{ +lean_object* x_30; +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_7); +x_31 = l_Lean_nullKind; +x_32 = l_Lean_Parser_ParserState_mkNode(x_29, x_31, x_28); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +uint8_t x_34; uint8_t x_35; lean_object* x_36; +x_34 = 0; +x_35 = 0; +x_36 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13(x_26, x_34, x_35, x_35, x_2, x_3, x_32); +lean_dec(x_26); +return x_36; +} +else +{ +lean_dec(x_33); +lean_dec(x_26); +lean_dec(x_3); +lean_dec(x_2); +return x_32; +} +} +else +{ +lean_object* x_37; uint8_t x_38; +lean_dec(x_30); +x_37 = lean_ctor_get(x_29, 1); +lean_inc(x_37); +x_38 = lean_nat_dec_eq(x_37, x_7); +lean_dec(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_7); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_29, x_39, x_28); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +uint8_t x_42; uint8_t x_43; lean_object* x_44; +x_42 = 0; +x_43 = 0; +x_44 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15(x_26, x_42, x_43, x_43, x_2, x_3, x_40); +lean_dec(x_26); +return x_44; +} +else +{ +lean_dec(x_41); +lean_dec(x_26); +lean_dec(x_3); +lean_dec(x_2); +return x_40; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_45 = l_Lean_Parser_ParserState_restore(x_29, x_28, x_7); +x_46 = l_Lean_nullKind; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_28); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +uint8_t x_49; uint8_t x_50; lean_object* x_51; +x_49 = 0; +x_50 = 0; +x_51 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17(x_26, x_49, x_50, x_50, x_2, x_3, x_47); +lean_dec(x_26); +return x_51; +} +else +{ +lean_dec(x_48); +lean_dec(x_26); +lean_dec(x_3); +lean_dec(x_2); +return x_47; +} +} +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Parser_inhabited___closed__1; +x_2 = l_Lean_Parser_Term_matchAlts___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_matchAlt; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_matchAlts___closed__2; +x_4 = l_Lean_Parser_sepBy1Info(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_matchAlts___closed__1; +x_2 = l_Lean_Parser_Term_matchAlts___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Term_matchAlts___closed__1; +x_2 = l_Lean_Parser_optionaInfo(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Term_matchAlts___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_matchAlts___closed__5; +x_2 = l_Lean_Parser_Term_matchAlts___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Term_matchAlts(uint8_t x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = lean_box(x_1); +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_Term_matchAlts___elambda__1___boxed), 4, 1); +lean_closure_set(x_3, 0, x_2); +if (x_1 == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = l_Lean_Parser_Term_matchAlts___closed__4; +x_5 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = l_Lean_Parser_Term_matchAlts___closed__6; +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__3(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__6(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__5(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__8(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__7(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__10(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__9(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__12(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__14(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__13(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__16(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18(x_1, x_10, x_11, x_4, x_12, x_13, x_7, x_8, x_9); +lean_dec(x_1); +return x_14; +} +} +lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_unbox(x_2); +lean_dec(x_2); +x_9 = lean_unbox(x_3); +lean_dec(x_3); +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17(x_1, x_8, x_9, x_10, x_5, x_6, x_7); +lean_dec(x_1); +return x_11; +} +} +lean_object* l_Lean_Parser_Term_matchAlts___elambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; lean_object* x_6; +x_5 = lean_unbox(x_1); +lean_dec(x_1); +x_6 = l_Lean_Parser_Term_matchAlts___elambda__1(x_5, x_2, x_3, x_4); +return x_6; +} +} +lean_object* l_Lean_Parser_Term_matchAlts___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = lean_unbox(x_1); +lean_dec(x_1); +x_3 = l_Lean_Parser_Term_matchAlts(x_2); +return x_3; +} } lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__1() { _start: @@ -20414,19 +22996,18 @@ return x_2; lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__9() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Char_HasRepr___closed__1; -x_2 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_3 = lean_string_append(x_1, x_2); -return x_3; +uint8_t x_1; lean_object* x_2; +x_1 = 1; +x_2 = l_Lean_Parser_Term_matchAlts(x_1); +return x_2; } } lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___elambda__1___closed__9; -x_2 = l_Char_HasRepr___closed__1; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Term_match___elambda__1___closed__8; x_3 = lean_string_append(x_1, x_2); return x_3; } @@ -20435,15 +23016,25 @@ lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_match___elambda__1___closed__10; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_match___elambda__1___closed__10; +x_2 = l_Lean_Parser_Term_match___elambda__1___closed__11; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__12() { +lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -20453,22 +23044,22 @@ x_3 = lean_string_append(x_1, x_2); return x_3; } } -lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__13() { +lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_1 = l_Lean_Parser_Term_match___elambda__1___closed__13; x_2 = l_Char_HasRepr___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } } -lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__14() { +lean_object* _init_l_Lean_Parser_Term_match___elambda__1___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_match___elambda__1___closed__13; +x_2 = l_Lean_Parser_Term_match___elambda__1___closed__14; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); @@ -20478,576 +23069,265 @@ return x_3; lean_object* l_Lean_Parser_Term_match___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Term_match___elambda__1___closed__4; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Term_match___elambda__1___closed__9; x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); +x_6 = l_Lean_Parser_Term_match___elambda__1___closed__4; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_2); +lean_inc(x_1); +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); +if (lean_obj_tag(x_12) == 0) +{ +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); lean_dec(x_12); -if (x_13 == 0) +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) { -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -return x_9; +return x_11; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_52; lean_object* x_84; lean_object* x_85; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_64; lean_object* x_65; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); lean_inc(x_2); -x_84 = l_Lean_Parser_tokenFn(x_2, x_14); -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +x_64 = l_Lean_Parser_tokenFn(x_2, x_16); +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) { -lean_object* x_86; lean_object* x_87; -x_86 = lean_ctor_get(x_84, 0); -lean_inc(x_86); -x_87 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_86); -lean_dec(x_86); -if (lean_obj_tag(x_87) == 2) +lean_object* x_66; lean_object* x_67; +x_66 = lean_ctor_get(x_64, 0); +lean_inc(x_66); +x_67 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_66); +lean_dec(x_66); +if (lean_obj_tag(x_67) == 2) { -lean_object* x_88; lean_object* x_89; uint8_t x_90; -x_88 = lean_ctor_get(x_87, 1); -lean_inc(x_88); -lean_dec(x_87); -x_89 = l_Lean_Parser_Term_match___elambda__1___closed__6; -x_90 = lean_string_dec_eq(x_88, x_89); -lean_dec(x_88); -if (x_90 == 0) +lean_object* x_68; lean_object* x_69; uint8_t x_70; +x_68 = lean_ctor_get(x_67, 1); +lean_inc(x_68); +lean_dec(x_67); +x_69 = l_Lean_Parser_Term_match___elambda__1___closed__6; +x_70 = lean_string_dec_eq(x_68, x_69); +lean_dec(x_68); +if (x_70 == 0) { -lean_object* x_91; lean_object* x_92; -x_91 = l_Lean_Parser_Term_match___elambda__1___closed__14; -lean_inc(x_8); -x_92 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_91, x_8); -x_52 = x_92; -goto block_83; +lean_object* x_71; lean_object* x_72; +x_71 = l_Lean_Parser_Term_match___elambda__1___closed__15; +lean_inc(x_10); +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_10); +x_19 = x_72; +goto block_63; } else { -x_52 = x_84; -goto block_83; +x_19 = x_64; +goto block_63; } } else { -lean_object* x_93; lean_object* x_94; -lean_dec(x_87); -x_93 = l_Lean_Parser_Term_match___elambda__1___closed__14; -lean_inc(x_8); -x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_93, x_8); -x_52 = x_94; -goto block_83; +lean_object* x_73; lean_object* x_74; +lean_dec(x_67); +x_73 = l_Lean_Parser_Term_match___elambda__1___closed__15; +lean_inc(x_10); +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_10); +x_19 = x_74; +goto block_63; } } else { -lean_object* x_95; lean_object* x_96; -lean_dec(x_85); -x_95 = l_Lean_Parser_Term_match___elambda__1___closed__14; -lean_inc(x_8); -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_95, x_8); -x_52 = x_96; -goto block_83; +lean_object* x_75; lean_object* x_76; +lean_dec(x_65); +x_75 = l_Lean_Parser_Term_match___elambda__1___closed__15; +lean_inc(x_10); +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_10); +x_19 = x_76; +goto block_63; } -block_51: +block_63: { -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_19, 2); +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 3); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); -x_22 = l_Lean_FileMap_toPosition(x_20, x_21); -lean_dec(x_21); -lean_dec(x_20); -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = lean_ctor_get(x_17, 0); +if (lean_obj_tag(x_20) == 0) +{ +uint8_t x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; +x_21 = 0; +x_22 = 0; +lean_inc(x_2); +x_23 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_21, x_22, x_22, x_1, x_2, x_19); +x_24 = lean_ctor_get(x_23, 3); lean_inc(x_24); -x_25 = lean_array_get_size(x_24); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_inc(x_2); +lean_inc(x_1); +x_25 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_2, x_23); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_inc(x_2); +x_28 = l_Lean_Parser_tokenFn(x_2, x_25); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_30); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 2) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_34 = lean_string_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_35 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); +x_37 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_18); +x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_13, x_10); +lean_dec(x_10); +return x_39; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_dec(x_27); +x_40 = lean_apply_3(x_5, x_1, x_2, x_28); +x_41 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_18); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_13, x_10); +lean_dec(x_10); +return x_43; +} +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_31); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_44 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_44, x_27); +x_46 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_18); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_13, x_10); +lean_dec(x_10); +return x_48; +} +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_29); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_49 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_49, x_27); +x_51 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_51, x_18); +x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_13, x_10); +lean_dec(x_10); +return x_53; +} +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +lean_dec(x_26); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_54 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_25, x_54, x_18); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_13, x_10); +lean_dec(x_10); +return x_56; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_dec(x_24); -x_26 = lean_nat_dec_le(x_23, x_23); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_23); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_27 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkError(x_17, x_27); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_25); -x_31 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); -lean_dec(x_8); -return x_33; -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_inc(x_2); -lean_inc(x_1); -x_34 = l_Lean_Parser_Term_matchAlt___elambda__1(x_1, x_2, x_17); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) -{ -uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_36 = 0; -x_37 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2(x_23, x_36, x_1, x_2, x_34); -lean_dec(x_23); -x_38 = l_Lean_nullKind; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_25); -x_40 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_16); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_11, x_8); -lean_dec(x_8); -return x_42; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_35); -lean_dec(x_23); -lean_dec(x_2); -lean_dec(x_1); -x_43 = l_Lean_nullKind; -x_44 = l_Lean_Parser_ParserState_mkNode(x_34, x_43, x_25); -x_45 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_16); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_11, x_8); -lean_dec(x_8); -return x_47; -} +x_57 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_23, x_57, x_18); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_13, x_10); +lean_dec(x_10); +return x_59; } } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_18); -lean_dec(x_2); -lean_dec(x_1); -x_48 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_17, x_48, x_16); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_11, x_8); -lean_dec(x_8); -return x_50; -} -} -block_83: -{ -lean_object* x_53; -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -uint8_t x_54; uint8_t x_55; lean_object* x_56; lean_object* x_57; -x_54 = 0; -x_55 = 0; -lean_inc(x_2); -x_56 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_54, x_55, x_55, x_1, x_2, x_52); -x_57 = lean_ctor_get(x_56, 3); -lean_inc(x_57); -if (lean_obj_tag(x_57) == 0) -{ -lean_object* x_58; lean_object* x_59; -lean_inc(x_2); -lean_inc(x_1); -x_58 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_2, x_56); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) -{ lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = lean_ctor_get(x_58, 1); -lean_inc(x_60); -lean_inc(x_2); -x_61 = l_Lean_Parser_tokenFn(x_2, x_58); -x_62 = lean_ctor_get(x_61, 3); -lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_object* x_63; lean_object* x_64; -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_63); -lean_dec(x_63); -if (lean_obj_tag(x_64) == 2) -{ -lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_65 = lean_ctor_get(x_64, 1); -lean_inc(x_65); -lean_dec(x_64); -x_66 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_67 = lean_string_dec_eq(x_65, x_66); -lean_dec(x_65); -if (x_67 == 0) -{ -lean_object* x_68; lean_object* x_69; -x_68 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_68, x_60); -x_17 = x_69; -goto block_51; -} -else -{ -lean_dec(x_60); -x_17 = x_61; -goto block_51; -} -} -else -{ -lean_object* x_70; lean_object* x_71; -lean_dec(x_64); -x_70 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_70, x_60); -x_17 = x_71; -goto block_51; -} -} -else -{ -lean_object* x_72; lean_object* x_73; -lean_dec(x_62); -x_72 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_72, x_60); -x_17 = x_73; -goto block_51; -} -} -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_59); +lean_dec(x_20); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_74 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_75 = l_Lean_Parser_ParserState_mkNode(x_58, x_74, x_16); -x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_11, x_8); -lean_dec(x_8); -return x_76; -} -} -else -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_dec(x_57); -lean_dec(x_2); -lean_dec(x_1); -x_77 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_78 = l_Lean_Parser_ParserState_mkNode(x_56, x_77, x_16); -x_79 = l_Lean_Parser_mergeOrElseErrors(x_78, x_11, x_8); -lean_dec(x_8); -return x_79; -} -} -else -{ -lean_object* x_80; lean_object* x_81; lean_object* x_82; -lean_dec(x_53); -lean_dec(x_2); -lean_dec(x_1); -x_80 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_52, x_80, x_16); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_11, x_8); -lean_dec(x_8); -return x_82; -} -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; +x_60 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_19, x_60, x_18); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_13, x_10); lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; +return x_62; } -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; } } } @@ -21077,10 +23357,10 @@ lean_object* _init_l_Lean_Parser_Term_match___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_matchAlt; +x_1 = l_Lean_Parser_Term_match___elambda__1___closed__9; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Parser_inhabited___closed__1; +x_3 = l_Lean_Parser_Term_match___closed__2; x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); return x_4; } @@ -21088,30 +23368,30 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_match___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___closed__2; -x_2 = l_Lean_Parser_Term_match___closed__3; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_optType; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_match___closed__3; +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +return x_4; } } lean_object* _init_l_Lean_Parser_Term_match___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_optType; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_match___closed__4; -x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_matchAlt___closed__1; +x_2 = l_Lean_Parser_Term_match___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_match___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_matchAlt___closed__2; +x_1 = l_Lean_Parser_Term_match___closed__1; x_2 = l_Lean_Parser_Term_match___closed__5; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; @@ -21121,35 +23401,25 @@ lean_object* _init_l_Lean_Parser_Term_match___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___closed__1; +x_1 = l_Lean_Parser_Term_match___elambda__1___closed__2; x_2 = l_Lean_Parser_Term_match___closed__6; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); return x_3; } } lean_object* _init_l_Lean_Parser_Term_match___closed__8() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_2 = l_Lean_Parser_Term_match___closed__7; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_match___closed__9() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_match___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_match___closed__8; +x_3 = l_Lean_Parser_Term_match___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_match___closed__10() { +lean_object* _init_l_Lean_Parser_Term_match___closed__9() { _start: { lean_object* x_1; @@ -21157,12 +23427,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_match___elambda__1), 3, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_match___closed__11() { +lean_object* _init_l_Lean_Parser_Term_match___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_match___closed__9; -x_2 = l_Lean_Parser_Term_match___closed__10; +x_1 = l_Lean_Parser_Term_match___closed__8; +x_2 = l_Lean_Parser_Term_match___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -21173,54 +23443,10 @@ lean_object* _init_l_Lean_Parser_Term_match() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_match___closed__11; +x_1 = l_Lean_Parser_Term_match___closed__10; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} lean_object* l___regBuiltinParser_Lean_Parser_Term_match(lean_object* x_1) { _start: { @@ -22735,262 +24961,6 @@ x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); return x_6; } } -lean_object* _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("'match_syntax' alternatives must be indented"); -return x_1; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} lean_object* _init_l_Lean_Parser_Term_match__syntax___elambda__1___closed__1() { _start: { @@ -23075,229 +25045,65 @@ return x_3; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__4; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Term_match___elambda__1___closed__9; x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); +x_6 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__4; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); -lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); -lean_dec(x_12); -if (x_13 == 0) -{ -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_52; lean_object* x_79; lean_object* x_80; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -lean_inc(x_2); -x_79 = l_Lean_Parser_tokenFn(x_2, x_14); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) -{ -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); -lean_inc(x_81); -x_82 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) -{ -lean_object* x_86; lean_object* x_87; -x_86 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -lean_inc(x_8); -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_8); -x_52 = x_87; -goto block_78; -} -else -{ -x_52 = x_79; -goto block_78; -} -} -else -{ -lean_object* x_88; lean_object* x_89; -lean_dec(x_82); -x_88 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -lean_inc(x_8); -x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_88, x_8); -x_52 = x_89; -goto block_78; -} -} -else -{ -lean_object* x_90; lean_object* x_91; -lean_dec(x_80); -x_90 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -lean_inc(x_8); -x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_90, x_8); -x_52 = x_91; -goto block_78; -} -block_51: -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_19, 2); -lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); -x_22 = l_Lean_FileMap_toPosition(x_20, x_21); -lean_dec(x_21); -lean_dec(x_20); -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = lean_ctor_get(x_17, 0); -lean_inc(x_24); -x_25 = lean_array_get_size(x_24); -lean_dec(x_24); -x_26 = lean_nat_dec_le(x_23, x_23); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_23); -lean_dec(x_2); -lean_dec(x_1); -x_27 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkError(x_17, x_27); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_25); -x_31 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); -lean_dec(x_8); -return x_33; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_inc(x_2); lean_inc(x_1); -x_34 = l_Lean_Parser_Term_matchAlt___elambda__1(x_1, x_2, x_17); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_36 = 0; -x_37 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2(x_23, x_36, x_1, x_2, x_34); -lean_dec(x_23); -x_38 = l_Lean_nullKind; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_25); -x_40 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_16); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_11, x_8); -lean_dec(x_8); -return x_42; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_35); -lean_dec(x_23); +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_43 = l_Lean_nullKind; -x_44 = l_Lean_Parser_ParserState_mkNode(x_34, x_43, x_25); -x_45 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_16); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_11, x_8); -lean_dec(x_8); -return x_47; -} -} +return x_11; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_18); -lean_dec(x_2); -lean_dec(x_1); -x_48 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_17, x_48, x_16); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_11, x_8); -lean_dec(x_8); -return x_50; -} -} -block_78: -{ -lean_object* x_53; -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_54 = l_Lean_Parser_termParser___closed__2; -x_55 = lean_unsigned_to_nat(0u); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_59; lean_object* x_60; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); lean_inc(x_2); -x_56 = l_Lean_Parser_categoryParserFn(x_54, x_55, x_2, x_52); -x_57 = lean_ctor_get(x_56, 3); -lean_inc(x_57); -if (lean_obj_tag(x_57) == 0) -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_56, 1); -lean_inc(x_58); -lean_inc(x_2); -x_59 = l_Lean_Parser_tokenFn(x_2, x_56); +x_59 = l_Lean_Parser_tokenFn(x_2, x_16); x_60 = lean_ctor_get(x_59, 3); lean_inc(x_60); if (lean_obj_tag(x_60) == 0) @@ -23313,317 +25119,169 @@ lean_object* x_63; lean_object* x_64; uint8_t x_65; x_63 = lean_ctor_get(x_62, 1); lean_inc(x_63); lean_dec(x_62); -x_64 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_64 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; x_65 = lean_string_dec_eq(x_63, x_64); lean_dec(x_63); if (x_65 == 0) { lean_object* x_66; lean_object* x_67; -x_66 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_66, x_58); -x_17 = x_67; -goto block_51; +x_66 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +lean_inc(x_10); +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_66, x_10); +x_19 = x_67; +goto block_58; } else { -lean_dec(x_58); -x_17 = x_59; -goto block_51; +x_19 = x_59; +goto block_58; } } else { lean_object* x_68; lean_object* x_69; lean_dec(x_62); -x_68 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_68, x_58); -x_17 = x_69; -goto block_51; +x_68 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +lean_inc(x_10); +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_68, x_10); +x_19 = x_69; +goto block_58; } } else { lean_object* x_70; lean_object* x_71; lean_dec(x_60); -x_70 = l_Lean_Parser_Term_match___elambda__1___closed__11; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_70, x_58); -x_17 = x_71; -goto block_51; -} -} -else -{ -lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_dec(x_57); -lean_dec(x_2); -lean_dec(x_1); -x_72 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_56, x_72, x_16); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_11, x_8); -lean_dec(x_8); -return x_74; -} -} -else -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_53); -lean_dec(x_2); -lean_dec(x_1); -x_75 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_76 = l_Lean_Parser_ParserState_mkNode(x_52, x_75, x_16); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_11, x_8); -lean_dec(x_8); -return x_77; -} -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); -lean_dec(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else -{ -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); +x_70 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_70, x_10); +x_19 = x_71; +goto block_58; } -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else +block_58: { lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_21; uint8_t x_22; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_termParser___closed__2; +x_22 = lean_unsigned_to_nat(0u); +lean_inc(x_2); +x_23 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_19); +x_24 = lean_ctor_get(x_23, 3); +lean_inc(x_24); +if (lean_obj_tag(x_24) == 0) { -lean_dec(x_8); -lean_dec(x_7); -return x_9; -} -else -{ -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_25 = lean_ctor_get(x_4, 0); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_FileMap_toPosition(x_26, x_8); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 1); +lean_inc(x_2); +x_26 = l_Lean_Parser_tokenFn(x_2, x_23); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_26, 0); lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_nat_dec_le(x_1, x_28); +x_29 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_28); lean_dec(x_28); -if (x_29 == 0) +if (lean_obj_tag(x_29) == 2) { -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkError(x_5, x_30); -x_9 = x_31; -goto block_24; -} -else +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_32 = lean_string_dec_eq(x_30, x_31); +lean_dec(x_30); +if (x_32 == 0) { -x_9 = x_5; -goto block_24; -} -block_24: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Parser_Term_matchAlt___elambda__1(x_3, x_4, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_dec(x_7); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = lean_nat_dec_eq(x_8, x_13); -lean_dec(x_13); -lean_dec(x_8); -if (x_14 == 0) -{ -x_5 = x_11; -goto _start; -} -else -{ -lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -x_16 = l_Lean_Parser_manyAux___main___closed__1; -x_17 = l_Lean_Parser_ParserState_mkUnexpectedError(x_11, x_16); -return x_17; -} -} -else -{ -lean_object* x_18; uint8_t x_19; -lean_dec(x_12); -lean_dec(x_4); -lean_dec(x_3); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_8, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_11; -} -else -{ -lean_object* x_20; -x_20 = l_Lean_Parser_ParserState_restore(x_11, x_7, x_8); -lean_dec(x_7); -return x_20; -} -} -} -else -{ -lean_object* x_21; uint8_t x_22; +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_33 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_33, x_25); +x_35 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_18); +x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_13, x_10); lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_8, x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -return x_9; +return x_37; } else { -lean_object* x_23; -x_23 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -return x_23; +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_25); +x_38 = lean_apply_3(x_5, x_1, x_2, x_26); +x_39 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_18); +x_41 = l_Lean_Parser_mergeOrElseErrors(x_40, x_13, x_10); +lean_dec(x_10); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_dec(x_29); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_42, x_25); +x_44 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_18); +x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_13, x_10); +lean_dec(x_10); +return x_46; +} +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_dec(x_27); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_47 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_47, x_25); +x_49 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_18); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_13, x_10); +lean_dec(x_10); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_24); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_52 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_23, x_52, x_18); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_13, x_10); +lean_dec(x_10); +return x_54; +} +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_20); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_55 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_19, x_55, x_18); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_13, x_10); +lean_dec(x_10); +return x_57; +} } } } @@ -23646,7 +25304,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_typeAscription___closed__2; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_match___closed__4; +x_3 = l_Lean_Parser_Term_match___closed__3; x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); return x_4; } @@ -23711,50 +25369,6 @@ x_1 = l_Lean_Parser_Term_match__syntax___closed__7; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} lean_object* l___regBuiltinParser_Lean_Parser_Term_match__syntax(lean_object* x_1) { _start: { @@ -24143,94 +25757,197 @@ return x_1; lean_object* l_Lean_Parser_Term_letPatDecl___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_4 = l_Lean_Parser_termParser___closed__2; -x_5 = lean_unsigned_to_nat(0u); +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +x_5 = lean_ctor_get(x_3, 1); +lean_inc(x_5); +x_6 = lean_array_get_size(x_4); +lean_dec(x_4); +x_18 = l_Lean_Parser_termParser___closed__2; +x_19 = lean_unsigned_to_nat(0u); lean_inc(x_2); -x_6 = l_Lean_Parser_categoryParserFn(x_4, x_5, x_2, x_3); -x_7 = lean_ctor_get(x_6, 3); -lean_inc(x_7); -if (lean_obj_tag(x_7) == 0) +x_20 = l_Lean_Parser_categoryParserFn(x_18, x_19, x_2, x_3); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_object* x_8; lean_object* x_9; +lean_object* x_22; lean_object* x_23; lean_inc(x_2); -x_8 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_2, x_6); -x_9 = lean_ctor_get(x_8, 3); -lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_22 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_2, x_20); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); lean_inc(x_2); -x_11 = l_Lean_Parser_tokenFn(x_2, x_8); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) +x_25 = l_Lean_Parser_tokenFn(x_2, x_22); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); -lean_inc(x_13); -x_14 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_27); +lean_dec(x_27); +if (lean_obj_tag(x_28) == 2) { -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); -lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_17 = lean_string_dec_eq(x_15, x_16); -lean_dec(x_15); -if (x_17 == 0) +lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +x_30 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_31 = lean_string_dec_eq(x_29, x_30); +lean_dec(x_29); +if (x_31 == 0) { -lean_object* x_18; lean_object* x_19; -lean_dec(x_2); -x_18 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -return x_19; +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 2); +lean_inc(x_35); +x_36 = lean_ctor_get(x_33, 3); +lean_inc(x_36); +x_7 = x_33; +x_8 = x_34; +x_9 = x_35; +x_10 = x_36; +goto block_17; } else { -lean_object* x_20; -lean_dec(x_10); -x_20 = l_Lean_Parser_categoryParserFn(x_4, x_5, x_2, x_11); -return x_20; +lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_24); +x_37 = lean_ctor_get(x_25, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_25, 2); +lean_inc(x_38); +x_39 = lean_ctor_get(x_25, 3); +lean_inc(x_39); +x_7 = x_25; +x_8 = x_37; +x_9 = x_38; +x_10 = x_39; +goto block_17; } } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_14); -lean_dec(x_2); -x_21 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_21, x_10); -return x_22; +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_28); +x_40 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_40, x_24); +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 2); +lean_inc(x_43); +x_44 = lean_ctor_get(x_41, 3); +lean_inc(x_44); +x_7 = x_41; +x_8 = x_42; +x_9 = x_43; +x_10 = x_44; +goto block_17; } } else { -lean_object* x_23; lean_object* x_24; -lean_dec(x_12); -lean_dec(x_2); -x_23 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_23, x_10); -return x_24; +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_26); +x_45 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_45, x_24); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 2); +lean_inc(x_48); +x_49 = lean_ctor_get(x_46, 3); +lean_inc(x_49); +x_7 = x_46; +x_8 = x_47; +x_9 = x_48; +x_10 = x_49; +goto block_17; } } else { +lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_23); +x_50 = lean_ctor_get(x_22, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_22, 2); +lean_inc(x_51); +x_52 = lean_ctor_get(x_22, 3); +lean_inc(x_52); +x_7 = x_22; +x_8 = x_50; +x_9 = x_51; +x_10 = x_52; +goto block_17; +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_21); +lean_dec(x_1); +x_53 = lean_ctor_get(x_20, 0); +lean_inc(x_53); +x_54 = lean_ctor_get(x_20, 2); +lean_inc(x_54); +x_55 = lean_ctor_get(x_20, 3); +lean_inc(x_55); +x_7 = x_20; +x_8 = x_53; +x_9 = x_54; +x_10 = x_55; +goto block_17; +} +block_17: +{ +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +x_11 = lean_ctor_get(x_7, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = l_Lean_Parser_termParser___closed__2; +x_13 = lean_unsigned_to_nat(0u); +x_14 = l_Lean_Parser_categoryParserFn(x_12, x_13, x_2, x_7); +return x_14; +} +else +{ +lean_dec(x_11); lean_dec(x_2); -return x_8; +return x_7; } } else { +lean_object* x_15; lean_object* x_16; lean_dec(x_7); lean_dec(x_2); -lean_dec(x_1); -return x_6; +x_15 = l_Array_shrink___main___rarg(x_8, x_6); +lean_dec(x_6); +x_16 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_5); +lean_ctor_set(x_16, 2, x_9); +lean_ctor_set(x_16, 3, x_10); +return x_16; +} } } } @@ -24238,11 +25955,11 @@ lean_object* _init_l_Lean_Parser_Term_letPatDecl___closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_typeAscription___closed__2; +x_1 = l_Lean_Parser_Term_optType; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Term_haveAssign___closed__1; -x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); return x_4; } } @@ -24250,7 +25967,7 @@ lean_object* _init_l_Lean_Parser_Term_letPatDecl___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_optType; +x_1 = l_Lean_Parser_Term_typeAscription___closed__2; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Term_letPatDecl___closed__1; @@ -24266,7 +25983,7 @@ x_1 = l_Lean_Parser_Term_typeAscription___closed__2; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Term_letPatDecl___closed__2; -x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); return x_4; } } @@ -24298,1211 +26015,58 @@ x_1 = l_Lean_Parser_Term_letPatDecl___closed__5; return x_1; } } -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__1() { +lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("let"); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_mkAppStx___closed__6; -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__4() { -_start: -{ -uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +uint8_t x_1; lean_object* x_2; x_1 = 0; -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__1; -x_3 = l_Lean_Parser_Term_let___elambda__1___closed__3; -x_4 = 1; -x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); -return x_5; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("let "); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Term_let___elambda__1___closed__5; -x_2 = l_String_trim(x_1); +x_2 = l_Lean_Parser_Term_matchAlts(x_1); return x_2; } } -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Char_HasRepr___closed__1; -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___elambda__1___closed__7; -x_2 = l_Char_HasRepr___closed__1; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__8; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -lean_object* l_Lean_Parser_Term_let___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Term_let___elambda__1___closed__4; -x_5 = lean_ctor_get(x_4, 1); -lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); -lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); -lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); -lean_dec(x_12); -if (x_13 == 0) -{ -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_52; lean_object* x_98; lean_object* x_99; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -lean_inc(x_2); -x_98 = l_Lean_Parser_tokenFn(x_2, x_14); -x_99 = lean_ctor_get(x_98, 3); -lean_inc(x_99); -if (lean_obj_tag(x_99) == 0) -{ -lean_object* x_100; lean_object* x_101; -x_100 = lean_ctor_get(x_98, 0); -lean_inc(x_100); -x_101 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_100); -lean_dec(x_100); -if (lean_obj_tag(x_101) == 2) -{ -lean_object* x_102; lean_object* x_103; uint8_t x_104; -x_102 = lean_ctor_get(x_101, 1); -lean_inc(x_102); -lean_dec(x_101); -x_103 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_104 = lean_string_dec_eq(x_102, x_103); -lean_dec(x_102); -if (x_104 == 0) -{ -lean_object* x_105; lean_object* x_106; -x_105 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_105, x_8); -x_52 = x_106; -goto block_97; -} -else -{ -x_52 = x_98; -goto block_97; -} -} -else -{ -lean_object* x_107; lean_object* x_108; -lean_dec(x_101); -x_107 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_107, x_8); -x_52 = x_108; -goto block_97; -} -} -else -{ -lean_object* x_109; lean_object* x_110; -lean_dec(x_99); -x_109 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_109, x_8); -x_52 = x_110; -goto block_97; -} -block_51: -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_17, 1); -lean_inc(x_19); -lean_inc(x_2); -x_20 = l_Lean_Parser_tokenFn(x_2, x_17); -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -x_23 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_22); -lean_dec(x_22); -if (lean_obj_tag(x_23) == 2) -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 1); -lean_inc(x_24); -lean_dec(x_23); -x_25 = l_Lean_Parser_Term_have___elambda__1___closed__7; -x_26 = lean_string_dec_eq(x_24, x_25); -lean_dec(x_24); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_2); -x_27 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); -x_29 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_16); -x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_11, x_8); -lean_dec(x_8); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_19); -x_32 = l_Lean_Parser_termParser___closed__2; -x_33 = lean_unsigned_to_nat(0u); -x_34 = l_Lean_Parser_categoryParserFn(x_32, x_33, x_2, x_20); -x_35 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_16); -x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_11, x_8); -lean_dec(x_8); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_23); -lean_dec(x_2); -x_38 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_38, x_19); -x_40 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_16); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_11, x_8); -lean_dec(x_8); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_21); -lean_dec(x_2); -x_43 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_43, x_19); -x_45 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_16); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_11, x_8); -lean_dec(x_8); -return x_47; -} -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_18); -lean_dec(x_2); -x_48 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_17, x_48, x_16); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_11, x_8); -lean_dec(x_8); -return x_50; -} -} -block_97: -{ -lean_object* x_53; -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = lean_array_get_size(x_54); -lean_dec(x_54); -x_56 = lean_ctor_get(x_52, 1); -lean_inc(x_56); -lean_inc(x_2); -lean_inc(x_1); -x_57 = l_Lean_Parser_Term_letSimpleDecl___elambda__1(x_1, x_2, x_52); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_56); -lean_dec(x_55); -lean_dec(x_1); -x_59 = lean_ctor_get(x_57, 1); -lean_inc(x_59); -lean_inc(x_2); -x_60 = l_Lean_Parser_tokenFn(x_2, x_57); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); -lean_inc(x_62); -x_63 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_62); -lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Term_have___elambda__1___closed__7; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -lean_dec(x_2); -x_67 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); -x_69 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_70 = l_Lean_Parser_ParserState_mkNode(x_68, x_69, x_16); -x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_11, x_8); -lean_dec(x_8); -return x_71; -} -else -{ -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_59); -x_72 = l_Lean_Parser_termParser___closed__2; -x_73 = lean_unsigned_to_nat(0u); -x_74 = l_Lean_Parser_categoryParserFn(x_72, x_73, x_2, x_60); -x_75 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_16); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_11, x_8); -lean_dec(x_8); -return x_77; -} -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -lean_dec(x_63); -lean_dec(x_2); -x_78 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_78, x_59); -x_80 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_16); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_11, x_8); -lean_dec(x_8); -return x_82; -} -} -else -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_61); -lean_dec(x_2); -x_83 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_83, x_59); -x_85 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_84, x_85, x_16); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_11, x_8); -lean_dec(x_8); -return x_87; -} -} -else -{ -lean_object* x_88; lean_object* x_89; uint8_t x_90; -x_88 = lean_ctor_get(x_58, 0); -lean_inc(x_88); -lean_dec(x_58); -x_89 = lean_ctor_get(x_57, 1); -lean_inc(x_89); -x_90 = lean_nat_dec_eq(x_89, x_56); -lean_dec(x_89); -if (x_90 == 0) -{ -lean_dec(x_88); -lean_dec(x_56); -lean_dec(x_55); -lean_dec(x_1); -x_17 = x_57; -goto block_51; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_inc(x_56); -x_91 = l_Lean_Parser_ParserState_restore(x_57, x_55, x_56); -lean_dec(x_55); -lean_inc(x_2); -x_92 = l_Lean_Parser_Term_letPatDecl___elambda__1(x_1, x_2, x_91); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_88, x_56); -lean_dec(x_56); -x_17 = x_93; -goto block_51; -} -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_53); -lean_dec(x_2); -lean_dec(x_1); -x_94 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_52, x_94, x_16); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_11, x_8); -lean_dec(x_8); -return x_96; -} -} -} -} -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Parser_Term_letSimpleDecl; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_letPatDecl; -x_4 = lean_ctor_get(x_3, 0); -lean_inc(x_4); -x_5 = l_Lean_Parser_orelseInfo(x_2, x_4); -return x_5; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_typeAscription___closed__2; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_have___closed__3; -x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); -return x_4; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___closed__2; -x_2 = l_Lean_Parser_Term_let___closed__3; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___closed__1; -x_2 = l_Lean_Parser_Term_let___closed__4; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_2 = l_Lean_Parser_Term_let___closed__5; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_let___elambda__1___closed__4; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_let___closed__6; -x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); -return x_4; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__8() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_let___elambda__1), 3, 0); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_let___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___closed__7; -x_2 = l_Lean_Parser_Term_let___closed__8; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_let() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Parser_Term_let___closed__9; -return x_1; -} -} -lean_object* l___regBuiltinParser_Lean_Parser_Term_let(lean_object* x_1) { -_start: -{ -uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_2 = 0; -x_3 = l_Lean_Parser_termParser___closed__2; -x_4 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_5 = l_Lean_Parser_Term_let; -x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); -return x_6; -} -} -lean_object* _init_l_Lean_Parser_Term_equation() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Parser_Term_matchAlt; -return x_1; -} -} -lean_object* _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("equations must be indented"); -return x_1; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} lean_object* l_Lean_Parser_Term_letEqnsDecl___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; -lean_inc(x_2); -lean_inc(x_1); -x_4 = l_Lean_Parser_Term_letIdLhs___elambda__1(x_1, x_2, x_3); -x_5 = lean_ctor_get(x_4, 3); +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; +x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_6, 2); -lean_inc(x_7); -lean_dec(x_6); -x_8 = lean_ctor_get(x_4, 1); -lean_inc(x_8); -x_9 = l_Lean_FileMap_toPosition(x_7, x_8); -lean_dec(x_8); -lean_dec(x_7); -x_10 = lean_ctor_get(x_9, 1); -lean_inc(x_10); -lean_dec(x_9); -x_11 = l_Lean_Parser_Term_equation; -x_12 = lean_ctor_get(x_11, 1); -lean_inc(x_12); -x_13 = lean_ctor_get(x_4, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_nat_dec_le(x_10, x_10); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_2); -lean_dec(x_1); -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_17 = l_Lean_Parser_ParserState_mkError(x_4, x_16); -x_18 = l_Lean_nullKind; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_14); -return x_19; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_inc(x_2); lean_inc(x_1); -x_20 = lean_apply_3(x_12, x_1, x_2, x_4); -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) +x_6 = l_Lean_Parser_Term_letIdLhs___elambda__1(x_1, x_2, x_3); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) { -uint8_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = 0; -x_23 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2(x_10, x_22, x_1, x_2, x_20); -lean_dec(x_10); -x_24 = l_Lean_nullKind; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_14); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_21); -lean_dec(x_10); -lean_dec(x_2); -lean_dec(x_1); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_20, x_26, x_14); -return x_27; -} -} +lean_object* x_8; +x_8 = lean_apply_3(x_5, x_1, x_2, x_6); +return x_8; } else { +lean_dec(x_7); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -return x_4; -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} -} -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_6 = l_Lean_Parser_Term_equation; -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_27, 2); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_Lean_FileMap_toPosition(x_28, x_10); -lean_dec(x_28); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_31 = lean_nat_dec_le(x_1, x_30); -lean_dec(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkError(x_5, x_32); -x_11 = x_33; -goto block_26; -} -else -{ -x_11 = x_5; -goto block_26; -} -block_26: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_4); -lean_inc(x_3); -x_13 = lean_apply_3(x_7, x_3, x_4, x_11); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; uint8_t x_16; -lean_dec(x_9); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = lean_nat_dec_eq(x_10, x_15); -lean_dec(x_15); -lean_dec(x_10); -if (x_16 == 0) -{ -x_5 = x_13; -goto _start; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_4); -lean_dec(x_3); -x_18 = l_Lean_Parser_manyAux___main___closed__1; -x_19 = l_Lean_Parser_ParserState_mkUnexpectedError(x_13, x_18); -return x_19; -} -} -else -{ -lean_object* x_20; uint8_t x_21; -lean_dec(x_14); -lean_dec(x_4); -lean_dec(x_3); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_10, x_20); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_13; -} -else -{ -lean_object* x_22; -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_9, x_10); -lean_dec(x_9); -return x_22; -} -} -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_4); -lean_dec(x_3); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_10, x_23); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_dec(x_10); -lean_dec(x_9); -return x_11; -} -else -{ -lean_object* x_25; -x_25 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); -lean_dec(x_9); -return x_25; -} -} +return x_6; } } } lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_equation; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Parser_inhabited___closed__1; -x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); -return x_4; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Parser_Term_letIdLhs; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_letEqnsDecl___closed__1; -x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); -return x_4; +x_3 = l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +x_5 = l_Lean_Parser_andthenInfo(x_2, x_4); +return x_5; } } -lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__3() { +lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__2() { _start: { lean_object* x_1; @@ -25510,12 +26074,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_letEqnsDecl___elambda__1), 3 return x_1; } } -lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__4() { +lean_object* _init_l_Lean_Parser_Term_letEqnsDecl___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_letEqnsDecl___closed__2; -x_2 = l_Lean_Parser_Term_letEqnsDecl___closed__3; +x_1 = l_Lean_Parser_Term_letEqnsDecl___closed__1; +x_2 = l_Lean_Parser_Term_letEqnsDecl___closed__2; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -25526,409 +26090,10 @@ lean_object* _init_l_Lean_Parser_Term_letEqnsDecl() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_letEqnsDecl___closed__4; +x_1 = l_Lean_Parser_Term_letEqnsDecl___closed__3; return x_1; } } -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__1(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; lean_object* x_7; -x_6 = lean_unbox(x_2); -lean_dec(x_2); -x_7 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___spec__2(x_1, x_6, x_3, x_4, x_5); -lean_dec(x_1); -return x_7; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("letEqns"); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_mkAppStx___closed__6; -x_2 = l_Lean_Parser_Term_letEqns___elambda__1___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__4() { -_start: -{ -uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; -x_1 = 0; -x_2 = l_Lean_Parser_Term_letEqns___elambda__1___closed__1; -x_3 = l_Lean_Parser_Term_letEqns___elambda__1___closed__3; -x_4 = 1; -x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); -return x_5; -} -} -lean_object* l_Lean_Parser_Term_letEqns___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_4 = l_Lean_Parser_Term_letEqns___elambda__1___closed__4; -x_5 = lean_ctor_get(x_4, 1); -lean_inc(x_5); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_3, 1); -lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_9 = lean_apply_3(x_5, x_1, x_2, x_3); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 1); -lean_inc(x_12); -x_13 = lean_nat_dec_eq(x_12, x_8); -lean_dec(x_12); -if (x_13 == 0) -{ -lean_dec(x_11); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_57; lean_object* x_58; -lean_inc(x_8); -x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -lean_dec(x_7); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -lean_inc(x_2); -x_57 = l_Lean_Parser_tokenFn(x_2, x_14); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -x_60 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_59); -lean_dec(x_59); -if (lean_obj_tag(x_60) == 2) -{ -lean_object* x_61; lean_object* x_62; uint8_t x_63; -x_61 = lean_ctor_get(x_60, 1); -lean_inc(x_61); -lean_dec(x_60); -x_62 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_63 = lean_string_dec_eq(x_61, x_62); -lean_dec(x_61); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; -x_64 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_8); -x_17 = x_65; -goto block_56; -} -else -{ -x_17 = x_57; -goto block_56; -} -} -else -{ -lean_object* x_66; lean_object* x_67; -lean_dec(x_60); -x_66 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_66, x_8); -x_17 = x_67; -goto block_56; -} -} -else -{ -lean_object* x_68; lean_object* x_69; -lean_dec(x_58); -x_68 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_8); -x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_68, x_8); -x_17 = x_69; -goto block_56; -} -block_56: -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_inc(x_2); -x_19 = l_Lean_Parser_Term_letEqnsDecl___elambda__1(x_1, x_2, x_17); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_inc(x_2); -x_22 = l_Lean_Parser_tokenFn(x_2, x_19); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_22, 0); -lean_inc(x_24); -x_25 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_24); -lean_dec(x_24); -if (lean_obj_tag(x_25) == 2) -{ -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Parser_Term_have___elambda__1___closed__7; -x_28 = lean_string_dec_eq(x_26, x_27); -lean_dec(x_26); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_2); -x_29 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); -x_31 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); -lean_dec(x_8); -return x_33; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_21); -x_34 = l_Lean_Parser_termParser___closed__2; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParserFn(x_34, x_35, x_2, x_22); -x_37 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_16); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_11, x_8); -lean_dec(x_8); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_25); -lean_dec(x_2); -x_40 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_40, x_21); -x_42 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_16); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_11, x_8); -lean_dec(x_8); -return x_44; -} -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_23); -lean_dec(x_2); -x_45 = l_Lean_Parser_Term_have___elambda__1___closed__10; -x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_45, x_21); -x_47 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_16); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_11, x_8); -lean_dec(x_8); -return x_49; -} -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; -lean_dec(x_20); -lean_dec(x_2); -x_50 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_19, x_50, x_16); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_11, x_8); -lean_dec(x_8); -return x_52; -} -} -else -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_18); -lean_dec(x_2); -lean_dec(x_1); -x_53 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_17, x_53, x_16); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_11, x_8); -lean_dec(x_8); -return x_55; -} -} -} -} -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_letEqnsDecl; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_let___closed__3; -x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); -return x_4; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_let___closed__1; -x_2 = l_Lean_Parser_Term_letEqns___closed__1; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_2 = l_Lean_Parser_Term_letEqns___closed__2; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_letEqns___elambda__1___closed__4; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_letEqns___closed__3; -x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); -return x_4; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_letEqns___elambda__1), 3, 0); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_letEqns___closed__4; -x_2 = l_Lean_Parser_Term_letEqns___closed__5; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_letEqns() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Parser_Term_letEqns___closed__6; -return x_1; -} -} -lean_object* l___regBuiltinParser_Lean_Parser_Term_letEqns(lean_object* x_1) { -_start: -{ -uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_2 = 0; -x_3 = l_Lean_Parser_termParser___closed__2; -x_4 = l_Lean_Parser_Term_letEqns___elambda__1___closed__2; -x_5 = l_Lean_Parser_Term_letEqns; -x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); -return x_6; -} -} lean_object* l_Lean_Parser_Term_letDecl___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -26088,6 +26253,432 @@ x_1 = l_Lean_Parser_Term_letDecl___closed__4; return x_1; } } +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("let"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_mkAppStx___closed__6; +x_2 = l_Lean_Parser_Term_let___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Term_let___elambda__1___closed__1; +x_3 = l_Lean_Parser_Term_let___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("let "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Term_let___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_let___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___elambda__1___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Term_let___elambda__1___closed__8; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +lean_object* l_Lean_Parser_Term_let___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Term_let___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_57; lean_object* x_58; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +lean_inc(x_2); +x_57 = l_Lean_Parser_tokenFn(x_2, x_14); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_59); +lean_dec(x_59); +if (lean_obj_tag(x_60) == 2) +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 1); +lean_inc(x_61); +lean_dec(x_60); +x_62 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_63 = lean_string_dec_eq(x_61, x_62); +lean_dec(x_61); +if (x_63 == 0) +{ +lean_object* x_64; lean_object* x_65; +x_64 = l_Lean_Parser_Term_let___elambda__1___closed__9; +lean_inc(x_8); +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_8); +x_17 = x_65; +goto block_56; +} +else +{ +x_17 = x_57; +goto block_56; +} +} +else +{ +lean_object* x_66; lean_object* x_67; +lean_dec(x_60); +x_66 = l_Lean_Parser_Term_let___elambda__1___closed__9; +lean_inc(x_8); +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_66, x_8); +x_17 = x_67; +goto block_56; +} +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_58); +x_68 = l_Lean_Parser_Term_let___elambda__1___closed__9; +lean_inc(x_8); +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_68, x_8); +x_17 = x_69; +goto block_56; +} +block_56: +{ +lean_object* x_18; +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_inc(x_2); +x_19 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_2, x_17); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_inc(x_2); +x_22 = l_Lean_Parser_tokenFn(x_2, x_19); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__nameLitAux___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_have___elambda__1___closed__7; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_2); +x_29 = l_Lean_Parser_Term_have___elambda__1___closed__10; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_31 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); +x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_11, x_8); +lean_dec(x_8); +return x_33; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_21); +x_34 = l_Lean_Parser_termParser___closed__2; +x_35 = lean_unsigned_to_nat(0u); +x_36 = l_Lean_Parser_categoryParserFn(x_34, x_35, x_2, x_22); +x_37 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_16); +x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_11, x_8); +lean_dec(x_8); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_25); +lean_dec(x_2); +x_40 = l_Lean_Parser_Term_have___elambda__1___closed__10; +x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_40, x_21); +x_42 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_16); +x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_11, x_8); +lean_dec(x_8); +return x_44; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_23); +lean_dec(x_2); +x_45 = l_Lean_Parser_Term_have___elambda__1___closed__10; +x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_45, x_21); +x_47 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_16); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_11, x_8); +lean_dec(x_8); +return x_49; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_20); +lean_dec(x_2); +x_50 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_19, x_50, x_16); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_11, x_8); +lean_dec(x_8); +return x_52; +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_18); +lean_dec(x_2); +lean_dec(x_1); +x_53 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_17, x_53, x_16); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_11, x_8); +lean_dec(x_8); +return x_55; +} +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_typeAscription___closed__2; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_have___closed__3; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_letDecl; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_let___closed__2; +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_let___closed__1; +x_2 = l_Lean_Parser_Term_let___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_2 = l_Lean_Parser_Term_let___closed__4; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_let___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_let___closed__5; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_let___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_let___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_let___closed__6; +x_2 = l_Lean_Parser_Term_let___closed__7; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_let() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Term_let___closed__8; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Term_let(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_termParser___closed__2; +x_4 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_5 = l_Lean_Parser_Term_let; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} lean_object* _init_l_Lean_Parser_Term_let__core___elambda__1___closed__1() { _start: { @@ -27456,6 +28047,55 @@ x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); return x_5; } } +lean_object* _init_l_Lean_Parser_Term_doPat___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(" | "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___elambda__1___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Term_doPat___elambda__1___closed__8; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} lean_object* l_Lean_Parser_Term_doPat___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -27655,13 +28295,13 @@ lean_object* x_66; lean_object* x_67; uint8_t x_68; x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); lean_dec(x_65); -x_67 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__6; +x_67 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); if (x_68 == 0) { lean_object* x_69; lean_object* x_70; -x_69 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_69 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_25); x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_25); x_26 = x_70; @@ -27677,7 +28317,7 @@ else { lean_object* x_71; lean_object* x_72; lean_dec(x_65); -x_71 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_71 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_25); x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_25); x_26 = x_72; @@ -27688,7 +28328,7 @@ else { lean_object* x_73; lean_object* x_74; lean_dec(x_63); -x_73 = l_Lean_Parser_Term_matchAlt___elambda__1___closed__9; +x_73 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; lean_inc(x_25); x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_25); x_26 = x_74; @@ -27832,69 +28472,79 @@ return x_5; lean_object* _init_l_Lean_Parser_Term_doPat___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_typeAscription___closed__2; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_matchAlt___closed__1; -x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_doPat___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_typeAscription___closed__2; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_doPat___closed__2; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Term_doPat___closed__2; +x_1 = l_Lean_Parser_Term_doPat___closed__3; x_2 = l_Lean_Parser_optionaInfo(x_1); return x_2; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__4() { +lean_object* _init_l_Lean_Parser_Term_doPat___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_typeAscription___closed__2; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doPat___closed__3; +x_3 = l_Lean_Parser_Term_doPat___closed__4; x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doPat___closed__1; -x_2 = l_Lean_Parser_Term_doPat___closed__4; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; -} -} lean_object* _init_l_Lean_Parser_Term_doPat___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_1 = l_Lean_Parser_Term_doPat___closed__1; x_2 = l_Lean_Parser_Term_doPat___closed__5; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } } lean_object* _init_l_Lean_Parser_Term_doPat___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_2 = l_Lean_Parser_Term_doPat___closed__6; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doPat___closed__6; +x_3 = l_Lean_Parser_Term_doPat___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__8() { +lean_object* _init_l_Lean_Parser_Term_doPat___closed__9() { _start: { lean_object* x_1; @@ -27902,12 +28552,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_doPat___elambda__1), 3, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__9() { +lean_object* _init_l_Lean_Parser_Term_doPat___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doPat___closed__7; -x_2 = l_Lean_Parser_Term_doPat___closed__8; +x_1 = l_Lean_Parser_Term_doPat___closed__8; +x_2 = l_Lean_Parser_Term_doPat___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -27918,7 +28568,7 @@ lean_object* _init_l_Lean_Parser_Term_doPat() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_doPat___closed__9; +x_1 = l_Lean_Parser_Term_doPat___closed__10; return x_1; } } @@ -38960,16 +39610,6 @@ l_Lean_Parser_Term_matchAlt___elambda__1___closed__3 = _init_l_Lean_Parser_Term_ lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__3); l_Lean_Parser_Term_matchAlt___elambda__1___closed__4 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__4); -l_Lean_Parser_Term_matchAlt___elambda__1___closed__5 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__5(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__5); -l_Lean_Parser_Term_matchAlt___elambda__1___closed__6 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__6(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__6); -l_Lean_Parser_Term_matchAlt___elambda__1___closed__7 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__7(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__7); -l_Lean_Parser_Term_matchAlt___elambda__1___closed__8 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__8(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__8); -l_Lean_Parser_Term_matchAlt___elambda__1___closed__9 = _init_l_Lean_Parser_Term_matchAlt___elambda__1___closed__9(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___elambda__1___closed__9); l_Lean_Parser_Term_matchAlt___closed__1 = _init_l_Lean_Parser_Term_matchAlt___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_matchAlt___closed__1); l_Lean_Parser_Term_matchAlt___closed__2 = _init_l_Lean_Parser_Term_matchAlt___closed__2(); @@ -38984,14 +39624,32 @@ l_Lean_Parser_Term_matchAlt___closed__6 = _init_l_Lean_Parser_Term_matchAlt___cl lean_mark_persistent(l_Lean_Parser_Term_matchAlt___closed__6); l_Lean_Parser_Term_matchAlt___closed__7 = _init_l_Lean_Parser_Term_matchAlt___closed__7(); lean_mark_persistent(l_Lean_Parser_Term_matchAlt___closed__7); -l_Lean_Parser_Term_matchAlt___closed__8 = _init_l_Lean_Parser_Term_matchAlt___closed__8(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___closed__8); -l_Lean_Parser_Term_matchAlt___closed__9 = _init_l_Lean_Parser_Term_matchAlt___closed__9(); -lean_mark_persistent(l_Lean_Parser_Term_matchAlt___closed__9); l_Lean_Parser_Term_matchAlt = _init_l_Lean_Parser_Term_matchAlt(); lean_mark_persistent(l_Lean_Parser_Term_matchAlt); -l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1 = _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1(); -lean_mark_persistent(l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___closed__1); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__1); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__2); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__5); +l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6 = _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6(); +lean_mark_persistent(l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__6); +l_Lean_Parser_Term_matchAlts___closed__1 = _init_l_Lean_Parser_Term_matchAlts___closed__1(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__1); +l_Lean_Parser_Term_matchAlts___closed__2 = _init_l_Lean_Parser_Term_matchAlts___closed__2(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__2); +l_Lean_Parser_Term_matchAlts___closed__3 = _init_l_Lean_Parser_Term_matchAlts___closed__3(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__3); +l_Lean_Parser_Term_matchAlts___closed__4 = _init_l_Lean_Parser_Term_matchAlts___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__4); +l_Lean_Parser_Term_matchAlts___closed__5 = _init_l_Lean_Parser_Term_matchAlts___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__5); +l_Lean_Parser_Term_matchAlts___closed__6 = _init_l_Lean_Parser_Term_matchAlts___closed__6(); +lean_mark_persistent(l_Lean_Parser_Term_matchAlts___closed__6); l_Lean_Parser_Term_match___elambda__1___closed__1 = _init_l_Lean_Parser_Term_match___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_match___elambda__1___closed__1); l_Lean_Parser_Term_match___elambda__1___closed__2 = _init_l_Lean_Parser_Term_match___elambda__1___closed__2(); @@ -39020,6 +39678,8 @@ l_Lean_Parser_Term_match___elambda__1___closed__13 = _init_l_Lean_Parser_Term_ma lean_mark_persistent(l_Lean_Parser_Term_match___elambda__1___closed__13); l_Lean_Parser_Term_match___elambda__1___closed__14 = _init_l_Lean_Parser_Term_match___elambda__1___closed__14(); lean_mark_persistent(l_Lean_Parser_Term_match___elambda__1___closed__14); +l_Lean_Parser_Term_match___elambda__1___closed__15 = _init_l_Lean_Parser_Term_match___elambda__1___closed__15(); +lean_mark_persistent(l_Lean_Parser_Term_match___elambda__1___closed__15); l_Lean_Parser_Term_match___closed__1 = _init_l_Lean_Parser_Term_match___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_match___closed__1); l_Lean_Parser_Term_match___closed__2 = _init_l_Lean_Parser_Term_match___closed__2(); @@ -39040,8 +39700,6 @@ l_Lean_Parser_Term_match___closed__9 = _init_l_Lean_Parser_Term_match___closed__ lean_mark_persistent(l_Lean_Parser_Term_match___closed__9); l_Lean_Parser_Term_match___closed__10 = _init_l_Lean_Parser_Term_match___closed__10(); lean_mark_persistent(l_Lean_Parser_Term_match___closed__10); -l_Lean_Parser_Term_match___closed__11 = _init_l_Lean_Parser_Term_match___closed__11(); -lean_mark_persistent(l_Lean_Parser_Term_match___closed__11); l_Lean_Parser_Term_match = _init_l_Lean_Parser_Term_match(); lean_mark_persistent(l_Lean_Parser_Term_match); res = l___regBuiltinParser_Lean_Parser_Term_match(lean_io_mk_world()); @@ -39223,8 +39881,6 @@ lean_mark_persistent(l___regBuiltinParser_Lean_Parser_Term_antiquot___closed__1) res = l___regBuiltinParser_Lean_Parser_Term_antiquot(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1 = _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1(); -lean_mark_persistent(l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1); l_Lean_Parser_Term_match__syntax___elambda__1___closed__1 = _init_l_Lean_Parser_Term_match__syntax___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_match__syntax___elambda__1___closed__1); l_Lean_Parser_Term_match__syntax___elambda__1___closed__2 = _init_l_Lean_Parser_Term_match__syntax___elambda__1___closed__2(); @@ -39298,6 +39954,26 @@ l_Lean_Parser_Term_letPatDecl___closed__5 = _init_l_Lean_Parser_Term_letPatDecl_ lean_mark_persistent(l_Lean_Parser_Term_letPatDecl___closed__5); l_Lean_Parser_Term_letPatDecl = _init_l_Lean_Parser_Term_letPatDecl(); lean_mark_persistent(l_Lean_Parser_Term_letPatDecl); +l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1 = _init_l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___elambda__1___closed__1); +l_Lean_Parser_Term_letEqnsDecl___closed__1 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__1(); +lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__1); +l_Lean_Parser_Term_letEqnsDecl___closed__2 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__2(); +lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__2); +l_Lean_Parser_Term_letEqnsDecl___closed__3 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__3(); +lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__3); +l_Lean_Parser_Term_letEqnsDecl = _init_l_Lean_Parser_Term_letEqnsDecl(); +lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl); +l_Lean_Parser_Term_letDecl___closed__1 = _init_l_Lean_Parser_Term_letDecl___closed__1(); +lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__1); +l_Lean_Parser_Term_letDecl___closed__2 = _init_l_Lean_Parser_Term_letDecl___closed__2(); +lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__2); +l_Lean_Parser_Term_letDecl___closed__3 = _init_l_Lean_Parser_Term_letDecl___closed__3(); +lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__3); +l_Lean_Parser_Term_letDecl___closed__4 = _init_l_Lean_Parser_Term_letDecl___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__4); +l_Lean_Parser_Term_letDecl = _init_l_Lean_Parser_Term_letDecl(); +lean_mark_persistent(l_Lean_Parser_Term_letDecl); l_Lean_Parser_Term_let___elambda__1___closed__1 = _init_l_Lean_Parser_Term_let___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_let___elambda__1___closed__1); l_Lean_Parser_Term_let___elambda__1___closed__2 = _init_l_Lean_Parser_Term_let___elambda__1___closed__2(); @@ -39332,62 +40008,11 @@ l_Lean_Parser_Term_let___closed__7 = _init_l_Lean_Parser_Term_let___closed__7(); lean_mark_persistent(l_Lean_Parser_Term_let___closed__7); l_Lean_Parser_Term_let___closed__8 = _init_l_Lean_Parser_Term_let___closed__8(); lean_mark_persistent(l_Lean_Parser_Term_let___closed__8); -l_Lean_Parser_Term_let___closed__9 = _init_l_Lean_Parser_Term_let___closed__9(); -lean_mark_persistent(l_Lean_Parser_Term_let___closed__9); l_Lean_Parser_Term_let = _init_l_Lean_Parser_Term_let(); lean_mark_persistent(l_Lean_Parser_Term_let); res = l___regBuiltinParser_Lean_Parser_Term_let(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Parser_Term_equation = _init_l_Lean_Parser_Term_equation(); -lean_mark_persistent(l_Lean_Parser_Term_equation); -l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1 = _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1(); -lean_mark_persistent(l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqnsDecl___elambda__1___spec__1___closed__1); -l_Lean_Parser_Term_letEqnsDecl___closed__1 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__1(); -lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__1); -l_Lean_Parser_Term_letEqnsDecl___closed__2 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__2(); -lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__2); -l_Lean_Parser_Term_letEqnsDecl___closed__3 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__3(); -lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__3); -l_Lean_Parser_Term_letEqnsDecl___closed__4 = _init_l_Lean_Parser_Term_letEqnsDecl___closed__4(); -lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl___closed__4); -l_Lean_Parser_Term_letEqnsDecl = _init_l_Lean_Parser_Term_letEqnsDecl(); -lean_mark_persistent(l_Lean_Parser_Term_letEqnsDecl); -l_Lean_Parser_Term_letEqns___elambda__1___closed__1 = _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__1(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___elambda__1___closed__1); -l_Lean_Parser_Term_letEqns___elambda__1___closed__2 = _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__2(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___elambda__1___closed__2); -l_Lean_Parser_Term_letEqns___elambda__1___closed__3 = _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__3(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___elambda__1___closed__3); -l_Lean_Parser_Term_letEqns___elambda__1___closed__4 = _init_l_Lean_Parser_Term_letEqns___elambda__1___closed__4(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___elambda__1___closed__4); -l_Lean_Parser_Term_letEqns___closed__1 = _init_l_Lean_Parser_Term_letEqns___closed__1(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__1); -l_Lean_Parser_Term_letEqns___closed__2 = _init_l_Lean_Parser_Term_letEqns___closed__2(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__2); -l_Lean_Parser_Term_letEqns___closed__3 = _init_l_Lean_Parser_Term_letEqns___closed__3(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__3); -l_Lean_Parser_Term_letEqns___closed__4 = _init_l_Lean_Parser_Term_letEqns___closed__4(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__4); -l_Lean_Parser_Term_letEqns___closed__5 = _init_l_Lean_Parser_Term_letEqns___closed__5(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__5); -l_Lean_Parser_Term_letEqns___closed__6 = _init_l_Lean_Parser_Term_letEqns___closed__6(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns___closed__6); -l_Lean_Parser_Term_letEqns = _init_l_Lean_Parser_Term_letEqns(); -lean_mark_persistent(l_Lean_Parser_Term_letEqns); -res = l___regBuiltinParser_Lean_Parser_Term_letEqns(lean_io_mk_world()); -if (lean_io_result_is_error(res)) return res; -lean_dec_ref(res); -l_Lean_Parser_Term_letDecl___closed__1 = _init_l_Lean_Parser_Term_letDecl___closed__1(); -lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__1); -l_Lean_Parser_Term_letDecl___closed__2 = _init_l_Lean_Parser_Term_letDecl___closed__2(); -lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__2); -l_Lean_Parser_Term_letDecl___closed__3 = _init_l_Lean_Parser_Term_letDecl___closed__3(); -lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__3); -l_Lean_Parser_Term_letDecl___closed__4 = _init_l_Lean_Parser_Term_letDecl___closed__4(); -lean_mark_persistent(l_Lean_Parser_Term_letDecl___closed__4); -l_Lean_Parser_Term_letDecl = _init_l_Lean_Parser_Term_letDecl(); -lean_mark_persistent(l_Lean_Parser_Term_letDecl); l_Lean_Parser_Term_let__core___elambda__1___closed__1 = _init_l_Lean_Parser_Term_let__core___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_let__core___elambda__1___closed__1); l_Lean_Parser_Term_let__core___elambda__1___closed__2 = _init_l_Lean_Parser_Term_let__core___elambda__1___closed__2(); @@ -39521,6 +40146,16 @@ l_Lean_Parser_Term_doPat___elambda__1___closed__3 = _init_l_Lean_Parser_Term_doP lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__3); l_Lean_Parser_Term_doPat___elambda__1___closed__4 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__4); +l_Lean_Parser_Term_doPat___elambda__1___closed__5 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__5); +l_Lean_Parser_Term_doPat___elambda__1___closed__6 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__6); +l_Lean_Parser_Term_doPat___elambda__1___closed__7 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__7); +l_Lean_Parser_Term_doPat___elambda__1___closed__8 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__8); +l_Lean_Parser_Term_doPat___elambda__1___closed__9 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__9(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___elambda__1___closed__9); l_Lean_Parser_Term_doPat___closed__1 = _init_l_Lean_Parser_Term_doPat___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__1); l_Lean_Parser_Term_doPat___closed__2 = _init_l_Lean_Parser_Term_doPat___closed__2(); @@ -39539,6 +40174,8 @@ l_Lean_Parser_Term_doPat___closed__8 = _init_l_Lean_Parser_Term_doPat___closed__ lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__8); l_Lean_Parser_Term_doPat___closed__9 = _init_l_Lean_Parser_Term_doPat___closed__9(); lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__9); +l_Lean_Parser_Term_doPat___closed__10 = _init_l_Lean_Parser_Term_doPat___closed__10(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__10); l_Lean_Parser_Term_doPat = _init_l_Lean_Parser_Term_doPat(); lean_mark_persistent(l_Lean_Parser_Term_doPat); l_Lean_Parser_Term_doExpr___elambda__1___closed__1 = _init_l_Lean_Parser_Term_doExpr___elambda__1___closed__1();