chore: update stage0
This commit is contained in:
parent
8ed3b8c55f
commit
8e15159973
25 changed files with 8599 additions and 7273 deletions
49
stage0/src/Lean/Elab/App.lean
generated
49
stage0/src/Lean/Elab/App.lean
generated
|
|
@ -264,19 +264,42 @@ private def propagateExpectedType : M Unit := do
|
|||
match s.expectedType? with
|
||||
| none => pure ()
|
||||
| some expectedType =>
|
||||
let numRemainingArgs := s.args.length
|
||||
trace[Elab.app.propagateExpectedType]! "etaArgs.size: {s.etaArgs.size}, numRemainingArgs: {numRemainingArgs}, fType: {s.fType}"
|
||||
match getForallBody numRemainingArgs s.namedArgs s.fType with
|
||||
| none => pure ()
|
||||
| some fTypeBody =>
|
||||
unless fTypeBody.hasLooseBVars do
|
||||
let hasTypeMVar := (fTypeBody.findMVar? fun mvarId => s.typeMVars.contains mvarId).isSome
|
||||
let hasOnlyTypeMVar := (fTypeBody.findMVar? fun mvarId => !s.typeMVars.contains mvarId).isNone
|
||||
if hasTypeMVar && hasOnlyTypeMVar then
|
||||
unless (← hasOptAutoParams fTypeBody) do
|
||||
trace[Elab.app.propagateExpectedType]! "{expectedType} =?= {fTypeBody}"
|
||||
isDefEq expectedType fTypeBody
|
||||
pure ()
|
||||
/- We don't propagate `Prop` because we often use `Prop` as a more general "Bool" (e.g., `if-then-else`).
|
||||
If we propagate `expectedType == Prop` in the following examples, the elaborator would fail
|
||||
```
|
||||
def f1 (s : Nat × Bool) : Bool := if s.2 then false else true
|
||||
|
||||
def f2 (s : List Bool) : Bool := if s.head! then false else true
|
||||
|
||||
def f3 (s : List Bool) : Bool := if List.head! (s.map not) then false else true
|
||||
```
|
||||
They would all fail for the same reason. So, let's focus on the first one.
|
||||
We would elaborate `s.2` with `expectedType == Prop`.
|
||||
Before we elaborate `s`, this method would be invoked, and `s.fType` is `?α × ?β → ?β` and after
|
||||
propagation we would have `?α × Prop → Prop`. Then, when we would try to elaborate `s`, and
|
||||
get a type error because `?α × Prop` cannot be unified with `Nat × Bool`
|
||||
Most users would have a hard time trying to understand why these examples failed.
|
||||
|
||||
Here is a possible alternative workarounds. We give up the idea of using `Prop` at `if-then-else`.
|
||||
Drawback: users use `if-then-else` with conditions that are not Decidable.
|
||||
So, users would have to embrace `propDecidable` and `choice`.
|
||||
This may not be that bad since the developers and users don't seem to care about constructivism.
|
||||
|
||||
We currently use a different workaround, we just don't propagate the expected type when it is `Prop`. -/
|
||||
unless expectedType.isProp do
|
||||
let numRemainingArgs := s.args.length
|
||||
trace[Elab.app.propagateExpectedType]! "etaArgs.size: {s.etaArgs.size}, numRemainingArgs: {numRemainingArgs}, fType: {s.fType}"
|
||||
match getForallBody numRemainingArgs s.namedArgs s.fType with
|
||||
| none => pure ()
|
||||
| some fTypeBody =>
|
||||
unless fTypeBody.hasLooseBVars do
|
||||
let hasTypeMVar := (fTypeBody.findMVar? fun mvarId => s.typeMVars.contains mvarId).isSome
|
||||
let hasOnlyTypeMVar := (fTypeBody.findMVar? fun mvarId => !s.typeMVars.contains mvarId).isNone
|
||||
if hasTypeMVar && hasOnlyTypeMVar then
|
||||
unless (← hasOptAutoParams fTypeBody) do
|
||||
trace[Elab.app.propagateExpectedType]! "{expectedType} =?= {fTypeBody}"
|
||||
isDefEq expectedType fTypeBody
|
||||
pure ()
|
||||
|
||||
/-
|
||||
Create a fresh local variable with the current binder name and argument type, add it to `etaArgs` and `f`,
|
||||
|
|
|
|||
29
stage0/src/Lean/Elab/Binders.lean
generated
29
stage0/src/Lean/Elab/Binders.lean
generated
|
|
@ -142,24 +142,31 @@ private def matchBinder (stx : Syntax) : TermElabM (Array BinderView) :=
|
|||
private def registerFailedToInferBinderTypeInfo (type : Expr) (ref : Syntax) : TermElabM Unit :=
|
||||
registerCustomErrorIfMVar type ref "failed to infer binder type"
|
||||
|
||||
private partial def elabBinderViews {α} (binderViews : Array BinderView) (fvars : Array Expr) (k : Array Expr → TermElabM α) : TermElabM α :=
|
||||
let rec loop (i : Nat) (fvars : Array Expr) : TermElabM α :=
|
||||
private partial def elabBinderViews {α} (binderViews : Array BinderView) (catchUnboundImplicit : Bool) (fvars : Array Expr) (k : Array Expr → TermElabM α)
|
||||
: TermElabM α :=
|
||||
let rec loop (i : Nat) (fvars : Array Expr) : TermElabM α := do
|
||||
if h : i < binderViews.size then
|
||||
let binderView := binderViews.get ⟨i, h⟩
|
||||
elabTypeWithUnboundImplicit binderView.type fun unboundImplicitFVars type => do
|
||||
if catchUnboundImplicit then
|
||||
elabTypeWithUnboundImplicit binderView.type fun unboundImplicitFVars type => do
|
||||
registerFailedToInferBinderTypeInfo type binderView.type
|
||||
let fvars := fvars ++ unboundImplicitFVars
|
||||
withLocalDecl binderView.id.getId binderView.bi type fun fvar =>
|
||||
loop (i+1) (fvars.push fvar)
|
||||
else
|
||||
let type ← elabType binderView.type
|
||||
registerFailedToInferBinderTypeInfo type binderView.type
|
||||
let fvars := fvars ++ unboundImplicitFVars
|
||||
withLocalDecl binderView.id.getId binderView.bi type fun fvar =>
|
||||
loop (i+1) (fvars.push fvar)
|
||||
else
|
||||
else
|
||||
k fvars
|
||||
loop 0 fvars
|
||||
|
||||
private partial def elabBindersAux {α} (binders : Array Syntax) (k : Array Expr → TermElabM α) : TermElabM α :=
|
||||
private partial def elabBindersAux {α} (binders : Array Syntax) (catchUnboundImplicit : Bool) (k : Array Expr → TermElabM α) : TermElabM α :=
|
||||
let rec loop (i : Nat) (fvars : Array Expr) : TermElabM α := do
|
||||
if h : i < binders.size then
|
||||
let binderViews ← matchBinder (binders.get ⟨i, h⟩)
|
||||
elabBinderViews binderViews fvars <| loop (i+1)
|
||||
elabBinderViews binderViews catchUnboundImplicit fvars <| loop (i+1)
|
||||
else
|
||||
k fvars
|
||||
loop 0 #[]
|
||||
|
|
@ -168,15 +175,15 @@ private partial def elabBindersAux {α} (binders : Array Syntax) (k : Array Expr
|
|||
Elaborate the given binders (i.e., `Syntax` objects for `simpleBinder <|> bracketedBinder`),
|
||||
update the local context, set of local instances, reset instance chache (if needed), and then
|
||||
execute `x` with the updated context. -/
|
||||
def elabBinders {α} (binders : Array Syntax) (k : Array Expr → TermElabM α) : TermElabM α :=
|
||||
def elabBinders {α} (binders : Array Syntax) (k : Array Expr → TermElabM α) (catchUnboundImplicit := false) : TermElabM α :=
|
||||
withoutPostponingUniverseConstraints do
|
||||
if binders.isEmpty then
|
||||
k #[]
|
||||
else
|
||||
elabBindersAux binders k
|
||||
elabBindersAux binders catchUnboundImplicit k
|
||||
|
||||
@[inline] def elabBinder {α} (binder : Syntax) (x : Expr → TermElabM α) : TermElabM α :=
|
||||
elabBinders #[binder] (fun fvars => x (fvars.get! 0))
|
||||
@[inline] def elabBinder {α} (binder : Syntax) (x : Expr → TermElabM α) (catchUnboundImplicit := false) : TermElabM α :=
|
||||
elabBinders #[binder] (catchUnboundImplicit := catchUnboundImplicit) (fun fvars => x (fvars.get! 0))
|
||||
|
||||
@[builtinTermElab «forall»] def elabForall : TermElab := fun stx _ =>
|
||||
match_syntax stx with
|
||||
|
|
|
|||
8
stage0/src/Lean/Elab/Command.lean
generated
8
stage0/src/Lean/Elab/Command.lean
generated
|
|
@ -300,7 +300,7 @@ def liftTermElabM {α} (declName? : Option Name) (x : TermElabM α) : CommandEla
|
|||
-- We don't want to store messages produced when elaborating `(getVarDecls s)` because they have already been saved when we elaborated the `variable`(s) command.
|
||||
-- So, we use `Term.resetMessageLog`.
|
||||
Term.withUnboundImplicitLocal <|
|
||||
Term.elabBinders (getVarDecls s) fun xs => do
|
||||
Term.elabBinders (getVarDecls s) (catchUnboundImplicit := true) fun xs => do
|
||||
Term.resetMessageLog
|
||||
Term.withUnboundImplicitLocal (flag := false) <| elabFn xs
|
||||
|
||||
|
|
@ -507,14 +507,16 @@ def elabOpenRenaming (n : SyntaxNode) : CommandElabM Unit := do
|
|||
-- `variable` bracketedBinder
|
||||
let binder := n[1]
|
||||
-- Try to elaborate `binder` for sanity checking
|
||||
runTermElabM none fun _ => Term.withUnboundImplicitLocal <| Term.elabBinder binder fun _ => pure ()
|
||||
runTermElabM none fun _ => Term.withUnboundImplicitLocal <|
|
||||
Term.elabBinder binder (catchUnboundImplicit := true) fun _ => pure ()
|
||||
modifyScope fun scope => { scope with varDecls := scope.varDecls.push binder }
|
||||
|
||||
@[builtinCommandElab «variables»] def elabVariables : CommandElab := fun n => do
|
||||
-- `variables` bracketedBinder+
|
||||
let binders := n[1].getArgs
|
||||
-- Try to elaborate `binders` for sanity checking
|
||||
runTermElabM none fun _ => Term.withUnboundImplicitLocal <| Term.elabBinders binders $ fun _ => pure ()
|
||||
runTermElabM none fun _ => Term.withUnboundImplicitLocal <|
|
||||
Term.elabBinders binders (catchUnboundImplicit := true) fun _ => pure ()
|
||||
modifyScope fun scope => { scope with varDecls := scope.varDecls ++ binders }
|
||||
|
||||
open Meta
|
||||
|
|
|
|||
20
stage0/src/Lean/Elab/Inductive.lean
generated
20
stage0/src/Lean/Elab/Inductive.lean
generated
|
|
@ -71,22 +71,22 @@ structure ElabHeaderResult :=
|
|||
instance : Inhabited ElabHeaderResult :=
|
||||
⟨{ view := arbitrary _, lctx := arbitrary _, localInsts := arbitrary _, params := #[], type := arbitrary _ }⟩
|
||||
|
||||
private partial def elabHeaderAux (views : Array InductiveView) (i : Nat) (acc : Array ElabHeaderResult) : TermElabM (Array ElabHeaderResult) :=
|
||||
private partial def elabHeaderAux (views : Array InductiveView) (i : Nat) (acc : Array ElabHeaderResult) : TermElabM (Array ElabHeaderResult) := do
|
||||
if h : i < views.size then
|
||||
let view := views.get ⟨i, h⟩;
|
||||
Term.elabBinders view.binders.getArgs fun params => do
|
||||
let lctx ← getLCtx
|
||||
let localInsts ← getLocalInstances
|
||||
let view := views.get ⟨i, h⟩
|
||||
let acc ← Term.withUnboundImplicitLocal <| Term.elabBinders view.binders.getArgs (catchUnboundImplicit := true) fun params => do
|
||||
match view.type? with
|
||||
| none =>
|
||||
let u ← mkFreshLevelMVar
|
||||
let type := mkSort u
|
||||
elabHeaderAux views (i+1) (acc.push { lctx := lctx, localInsts := localInsts, params := params, type := type, view := view })
|
||||
pure <| acc.push { lctx := (← getLCtx), localInsts := (← getLocalInstances), params := params, type := type, view := view }
|
||||
| some typeStx =>
|
||||
let type ← Term.elabTerm typeStx none
|
||||
unless (← isTypeFormerType type) do
|
||||
throwErrorAt typeStx "invalid inductive type, resultant type is not a sort"
|
||||
elabHeaderAux views (i+1) (acc.push { lctx := lctx, localInsts := localInsts, params := params, type := type, view := view })
|
||||
Term.elabTypeWithUnboundImplicit typeStx fun unboundImplicitFVars type => do
|
||||
unless (← isTypeFormerType type) do
|
||||
throwErrorAt typeStx "invalid inductive type, resultant type is not a sort"
|
||||
trace[Meta.debug]! "type: {type}, params: {params}, unboundImplicitFVars: {unboundImplicitFVars}"
|
||||
pure <| acc.push { lctx := (← getLCtx), localInsts := (← getLocalInstances), params := params ++ unboundImplicitFVars, type := type, view := view }
|
||||
elabHeaderAux views (i+1) acc
|
||||
else
|
||||
pure acc
|
||||
|
||||
|
|
|
|||
31
stage0/src/Lean/Elab/MutualDef.lean
generated
31
stage0/src/Lean/Elab/MutualDef.lean
generated
|
|
@ -94,21 +94,22 @@ private def elabHeaders (views : Array DefView) : TermElabM (Array DefViewElabHe
|
|||
let newHeader ← withRef view.ref do
|
||||
let ⟨shortDeclName, declName, levelNames⟩ ← expandDeclId (← getCurrNamespace) (← getLevelNames) view.declId view.modifiers
|
||||
applyAttributesAt declName view.modifiers.attrs AttributeApplicationTime.beforeElaboration
|
||||
withUnboundImplicitLocal <| withLevelNames levelNames <| elabBinders view.binders.getArgs fun xs => do
|
||||
let refForElabFunType := view.value
|
||||
elabFunType refForElabFunType xs view fun xs type => do
|
||||
let newHeader := {
|
||||
ref := view.ref,
|
||||
modifiers := view.modifiers,
|
||||
kind := view.kind,
|
||||
shortDeclName := shortDeclName,
|
||||
declName := declName,
|
||||
levelNames := levelNames,
|
||||
numParams := xs.size,
|
||||
type := type,
|
||||
valueStx := view.value : DefViewElabHeader }
|
||||
check headers newHeader
|
||||
pure newHeader
|
||||
withUnboundImplicitLocal <| withLevelNames levelNames <|
|
||||
elabBinders (catchUnboundImplicit := true) view.binders.getArgs fun xs => do
|
||||
let refForElabFunType := view.value
|
||||
elabFunType refForElabFunType xs view fun xs type => do
|
||||
let newHeader := {
|
||||
ref := view.ref,
|
||||
modifiers := view.modifiers,
|
||||
kind := view.kind,
|
||||
shortDeclName := shortDeclName,
|
||||
declName := declName,
|
||||
levelNames := levelNames,
|
||||
numParams := xs.size,
|
||||
type := type,
|
||||
valueStx := view.value : DefViewElabHeader }
|
||||
check headers newHeader
|
||||
pure newHeader
|
||||
headers := headers.push newHeader
|
||||
pure headers
|
||||
|
||||
|
|
|
|||
21
stage0/src/Lean/Elab/Term.lean
generated
21
stage0/src/Lean/Elab/Term.lean
generated
|
|
@ -620,11 +620,14 @@ def synthesizeInst (type : Expr) : TermElabM Expr := do
|
|||
| LOption.undef => throwError! "failed to synthesize instance{indentExpr type}"
|
||||
| LOption.none => throwError! "failed to synthesize instance{indentExpr type}"
|
||||
|
||||
def isMonadApp (type : Expr) : TermElabM Bool := do
|
||||
let some (m, _) ← isTypeApp? type | pure false
|
||||
return (← isMonad? m) |>.isSome
|
||||
|
||||
/--
|
||||
Try to coerce `a : α` into `m β` by first coercing `a : α` into ‵β`, and then using `pure`.
|
||||
The method is only applied if one of the following cases hold:
|
||||
- Head of `α` and head of ‵β` are not metavariables.
|
||||
- Head of `α` is not a metavariable, and it is not a Monad.
|
||||
The method is only applied if `α` is not monadic (e.g., `Nat → IO Unit`), and the head symbol
|
||||
of the resulting type is not a metavariable (e.g., `?m Unit` or `Bool → ?m Nat`).
|
||||
|
||||
The main limitation of the approach above is polymorphic code. As usual, coercions and polymorphism
|
||||
do not interact well. In the example above, the lift is successfully applied to `true`, `false` and `!y`
|
||||
|
|
@ -649,13 +652,11 @@ private def tryPureCoe? (errorMsgHeader? : Option String) (m β α a : Expr) : T
|
|||
pure (some aNew)
|
||||
catch _ =>
|
||||
pure none
|
||||
let αHead := α.getAppFn
|
||||
if !β.getAppFn.isMVar && !αHead.isMVar then
|
||||
doIt -- case 1
|
||||
else
|
||||
let αIsMonad? ← isMonad? α
|
||||
if !αHead.isMVar && αIsMonad?.isNone then
|
||||
doIt -- case 2
|
||||
forallTelescope α fun _ α => do
|
||||
if (← isMonadApp α) then
|
||||
pure none
|
||||
else if !α.getAppFn.isMVar then
|
||||
doIt
|
||||
else
|
||||
pure none
|
||||
|
||||
|
|
|
|||
4
stage0/src/Lean/Expr.lean
generated
4
stage0/src/Lean/Expr.lean
generated
|
|
@ -390,6 +390,10 @@ def isSort : Expr → Bool
|
|||
| sort _ _ => true
|
||||
| _ => false
|
||||
|
||||
def isProp : Expr → Bool
|
||||
| sort (Level.zero ..) _ => true
|
||||
| _ => false
|
||||
|
||||
def isBVar : Expr → Bool
|
||||
| bvar _ _ => true
|
||||
| _ => false
|
||||
|
|
|
|||
5
stage0/src/Lean/Meta/ExprDefEq.lean
generated
5
stage0/src/Lean/Meta/ExprDefEq.lean
generated
|
|
@ -905,9 +905,8 @@ private def unfoldReducibeDefEq (tInfo sInfo : ConstantInfo) (t s : Expr) : Meta
|
|||
|
||||
Auxiliary method for isDefEqDelta -/
|
||||
private def unfoldNonProjFnDefEq (tInfo sInfo : ConstantInfo) (t s : Expr) : MetaM LBool := do
|
||||
let env ← getEnv
|
||||
let tProj? := env.isProjectionFn tInfo.name
|
||||
let sProj? := env.isProjectionFn sInfo.name
|
||||
let tProj? ← isProjectionFn tInfo.name
|
||||
let sProj? ← isProjectionFn sInfo.name
|
||||
if tProj? && !sProj? then
|
||||
unfold s (unfoldDefEq tInfo sInfo t s) $ fun s => isDefEqRight sInfo.name t s
|
||||
else if !tProj? && sProj? then
|
||||
|
|
|
|||
7
stage0/src/Lean/ProjFns.lean
generated
7
stage0/src/Lean/ProjFns.lean
generated
|
|
@ -62,4 +62,11 @@ def getProjectionStructureName? (env : Environment) (projName : Name) : Option N
|
|||
| _ => none
|
||||
|
||||
end Environment
|
||||
|
||||
def isProjectionFn [MonadEnv m] [Monad m] (declName : Name) : m Bool :=
|
||||
return (← getEnv).isProjectionFn declName
|
||||
|
||||
def getProjectionFnInfo? [MonadEnv m] [Monad m] (declName : Name) : m (Option ProjectionFunctionInfo) :=
|
||||
return (← getEnv).getProjectionFnInfo? declName
|
||||
|
||||
end Lean
|
||||
|
|
|
|||
3006
stage0/stdlib/Lean/Elab/App.c
generated
3006
stage0/stdlib/Lean/Elab/App.c
generated
File diff suppressed because it is too large
Load diff
1204
stage0/stdlib/Lean/Elab/Binders.c
generated
1204
stage0/stdlib/Lean/Elab/Binders.c
generated
File diff suppressed because it is too large
Load diff
500
stage0/stdlib/Lean/Elab/Command.c
generated
500
stage0/stdlib/Lean/Elab/Command.c
generated
|
|
@ -99,7 +99,6 @@ lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM___lambda__1___boxe
|
|||
lean_object* l_Lean_Elab_Command_elabCommand___lambda__1___closed__3;
|
||||
lean_object* l_Lean_Syntax_getIdAt(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_commandElabAttribute;
|
||||
lean_object* l_Lean_Elab_Term_elabBinder___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_getScope___boxed(lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_elabUniverse(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_identKind___closed__2;
|
||||
|
|
@ -530,6 +529,7 @@ lean_object* l_Lean_Elab_Command_elabOpenHiding(lean_object*, lean_object*, lean
|
|||
lean_object* l_Lean_Elab_Command_hasNoErrorMessages___rarg(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_elabChoiceAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_PersistentEnvExtension_addEntry___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
size_t l_USize_land(size_t, size_t);
|
||||
lean_object* l___regBuiltin_Lean_Elab_Command_elabEval___closed__2;
|
||||
lean_object* l___regBuiltin_Lean_Elab_Command_elabEnd(lean_object*);
|
||||
|
|
@ -700,7 +700,6 @@ lean_object* l___regBuiltin_Lean_Elab_Command_elabSynth(lean_object*);
|
|||
lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_elabVariable___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_Lean_DataValue_sameCtor(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Command_elabCommand_match__1(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_checkEndHeader___boxed(lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_Core_instInhabitedState___closed__1;
|
||||
|
|
@ -772,6 +771,7 @@ lean_object* l_Lean_Elab_Command_liftTermElabM_match__2(lean_object*, lean_objec
|
|||
lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__6;
|
||||
lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___closed__3;
|
||||
lean_object* l_Lean_Elab_Command_elabVariable___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinder___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_throwError___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___regBuiltin_Lean_Elab_Command_elabUniverse(lean_object*);
|
||||
|
|
@ -10284,7 +10284,7 @@ return x_14;
|
|||
lean_object* l_Lean_Elab_Command_runTermElabM___rarg(lean_object* x_1, lean_object* 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; uint8_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15;
|
||||
lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16;
|
||||
x_6 = lean_st_ref_get(x_4, x_5);
|
||||
x_7 = lean_ctor_get(x_6, 0);
|
||||
lean_inc(x_7);
|
||||
|
|
@ -10295,16 +10295,18 @@ x_9 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_7);
|
|||
lean_dec(x_7);
|
||||
x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Command_runTermElabM___rarg___lambda__1), 9, 1);
|
||||
lean_closure_set(x_10, 0, x_2);
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_11, 0, x_9);
|
||||
lean_closure_set(x_11, 1, x_10);
|
||||
x_12 = 1;
|
||||
x_13 = lean_box(x_12);
|
||||
x_14 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_14, 0, x_11);
|
||||
lean_closure_set(x_14, 1, x_13);
|
||||
x_15 = l_Lean_Elab_Command_liftTermElabM___rarg(x_1, x_14, x_3, x_4, x_8);
|
||||
return x_15;
|
||||
x_11 = 1;
|
||||
x_12 = lean_box(x_11);
|
||||
x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_13, 0, x_9);
|
||||
lean_closure_set(x_13, 1, x_10);
|
||||
lean_closure_set(x_13, 2, x_12);
|
||||
x_14 = lean_box(x_11);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_15, 0, x_13);
|
||||
lean_closure_set(x_15, 1, x_14);
|
||||
x_16 = l_Lean_Elab_Command_liftTermElabM___rarg(x_1, x_15, x_3, x_4, x_8);
|
||||
return x_16;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Elab_Command_runTermElabM(lean_object* x_1) {
|
||||
|
|
@ -16481,29 +16483,31 @@ return x_1;
|
|||
lean_object* l_Lean_Elab_Command_elabVariable___lambda__2(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:
|
||||
{
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18;
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19;
|
||||
x_10 = l_Lean_Elab_Term_resetMessageLog(x_3, x_4, x_5, x_6, x_7, x_8, x_9);
|
||||
x_11 = lean_ctor_get(x_10, 1);
|
||||
lean_inc(x_11);
|
||||
lean_dec(x_10);
|
||||
x_12 = l_Lean_Elab_Command_elabVariable___lambda__2___closed__1;
|
||||
x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinder___rarg), 9, 2);
|
||||
lean_closure_set(x_13, 0, x_1);
|
||||
lean_closure_set(x_13, 1, x_12);
|
||||
x_14 = 1;
|
||||
x_15 = lean_box(x_14);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_16, 0, x_13);
|
||||
lean_closure_set(x_16, 1, x_15);
|
||||
x_17 = 0;
|
||||
x_18 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_16, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_11);
|
||||
return x_18;
|
||||
x_13 = 1;
|
||||
x_14 = lean_box(x_13);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinder___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_15, 0, x_1);
|
||||
lean_closure_set(x_15, 1, x_12);
|
||||
lean_closure_set(x_15, 2, x_14);
|
||||
x_16 = lean_box(x_13);
|
||||
x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_17, 0, x_15);
|
||||
lean_closure_set(x_17, 1, x_16);
|
||||
x_18 = 0;
|
||||
x_19 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_11);
|
||||
return x_19;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Elab_Command_elabVariable(lean_object* 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; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17;
|
||||
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; uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18;
|
||||
x_5 = lean_unsigned_to_nat(1u);
|
||||
x_6 = l_Lean_Syntax_getArg(x_1, x_5);
|
||||
x_7 = lean_box(0);
|
||||
|
|
@ -16518,48 +16522,50 @@ lean_dec(x_9);
|
|||
lean_inc(x_6);
|
||||
x_12 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabVariable___lambda__2___boxed), 9, 1);
|
||||
lean_closure_set(x_12, 0, x_6);
|
||||
x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_13, 0, x_11);
|
||||
lean_closure_set(x_13, 1, x_12);
|
||||
x_14 = 1;
|
||||
x_15 = lean_box(x_14);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_16, 0, x_13);
|
||||
lean_closure_set(x_16, 1, x_15);
|
||||
x_13 = 1;
|
||||
x_14 = lean_box(x_13);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_15, 0, x_11);
|
||||
lean_closure_set(x_15, 1, x_12);
|
||||
lean_closure_set(x_15, 2, x_14);
|
||||
x_16 = lean_box(x_13);
|
||||
x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_17, 0, x_15);
|
||||
lean_closure_set(x_17, 1, x_16);
|
||||
lean_inc(x_2);
|
||||
x_17 = l_Lean_Elab_Command_liftTermElabM___rarg(x_7, x_16, x_2, x_3, x_10);
|
||||
if (lean_obj_tag(x_17) == 0)
|
||||
x_18 = l_Lean_Elab_Command_liftTermElabM___rarg(x_7, x_17, x_2, x_3, x_10);
|
||||
if (lean_obj_tag(x_18) == 0)
|
||||
{
|
||||
lean_object* x_18; lean_object* x_19;
|
||||
x_18 = lean_ctor_get(x_17, 1);
|
||||
lean_inc(x_18);
|
||||
lean_dec(x_17);
|
||||
x_19 = l_Lean_Elab_Command_modifyScope___at_Lean_Elab_Command_elabVariable___spec__1(x_6, x_2, x_3, x_18);
|
||||
lean_object* x_19; lean_object* x_20;
|
||||
x_19 = lean_ctor_get(x_18, 1);
|
||||
lean_inc(x_19);
|
||||
lean_dec(x_18);
|
||||
x_20 = l_Lean_Elab_Command_modifyScope___at_Lean_Elab_Command_elabVariable___spec__1(x_6, x_2, x_3, x_19);
|
||||
lean_dec(x_2);
|
||||
return x_19;
|
||||
return x_20;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_20;
|
||||
uint8_t x_21;
|
||||
lean_dec(x_6);
|
||||
lean_dec(x_2);
|
||||
x_20 = !lean_is_exclusive(x_17);
|
||||
if (x_20 == 0)
|
||||
x_21 = !lean_is_exclusive(x_18);
|
||||
if (x_21 == 0)
|
||||
{
|
||||
return x_17;
|
||||
return x_18;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_21; lean_object* x_22; lean_object* x_23;
|
||||
x_21 = lean_ctor_get(x_17, 0);
|
||||
x_22 = lean_ctor_get(x_17, 1);
|
||||
lean_object* x_22; lean_object* x_23; lean_object* x_24;
|
||||
x_22 = lean_ctor_get(x_18, 0);
|
||||
x_23 = lean_ctor_get(x_18, 1);
|
||||
lean_inc(x_23);
|
||||
lean_inc(x_22);
|
||||
lean_inc(x_21);
|
||||
lean_dec(x_17);
|
||||
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;
|
||||
lean_dec(x_18);
|
||||
x_24 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_24, 0, x_22);
|
||||
lean_ctor_set(x_24, 1, x_23);
|
||||
return x_24;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -17024,29 +17030,31 @@ return x_107;
|
|||
lean_object* l_Lean_Elab_Command_elabVariables___lambda__1(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:
|
||||
{
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18;
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19;
|
||||
x_10 = l_Lean_Elab_Term_resetMessageLog(x_3, x_4, x_5, x_6, x_7, x_8, x_9);
|
||||
x_11 = lean_ctor_get(x_10, 1);
|
||||
lean_inc(x_11);
|
||||
lean_dec(x_10);
|
||||
x_12 = l_Lean_Elab_Command_elabVariable___lambda__2___closed__1;
|
||||
x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_13, 0, x_1);
|
||||
lean_closure_set(x_13, 1, x_12);
|
||||
x_14 = 1;
|
||||
x_15 = lean_box(x_14);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_16, 0, x_13);
|
||||
lean_closure_set(x_16, 1, x_15);
|
||||
x_17 = 0;
|
||||
x_18 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_16, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_11);
|
||||
return x_18;
|
||||
x_13 = 1;
|
||||
x_14 = lean_box(x_13);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_15, 0, x_1);
|
||||
lean_closure_set(x_15, 1, x_12);
|
||||
lean_closure_set(x_15, 2, x_14);
|
||||
x_16 = lean_box(x_13);
|
||||
x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_17, 0, x_15);
|
||||
lean_closure_set(x_17, 1, x_16);
|
||||
x_18 = 0;
|
||||
x_19 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_11);
|
||||
return x_19;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Elab_Command_elabVariables(lean_object* 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; 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; lean_object* x_16; lean_object* x_17; lean_object* x_18;
|
||||
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; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19;
|
||||
x_5 = lean_unsigned_to_nat(1u);
|
||||
x_6 = l_Lean_Syntax_getArg(x_1, x_5);
|
||||
x_7 = l_Lean_Syntax_getArgs(x_6);
|
||||
|
|
@ -17063,49 +17071,51 @@ lean_dec(x_10);
|
|||
lean_inc(x_7);
|
||||
x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabVariables___lambda__1___boxed), 9, 1);
|
||||
lean_closure_set(x_13, 0, x_7);
|
||||
x_14 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_14, 0, x_12);
|
||||
lean_closure_set(x_14, 1, x_13);
|
||||
x_15 = 1;
|
||||
x_16 = lean_box(x_15);
|
||||
x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_17, 0, x_14);
|
||||
lean_closure_set(x_17, 1, x_16);
|
||||
x_14 = 1;
|
||||
x_15 = lean_box(x_14);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_16, 0, x_12);
|
||||
lean_closure_set(x_16, 1, x_13);
|
||||
lean_closure_set(x_16, 2, x_15);
|
||||
x_17 = lean_box(x_14);
|
||||
x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_18, 0, x_16);
|
||||
lean_closure_set(x_18, 1, x_17);
|
||||
lean_inc(x_2);
|
||||
x_18 = l_Lean_Elab_Command_liftTermElabM___rarg(x_8, x_17, x_2, x_3, x_11);
|
||||
if (lean_obj_tag(x_18) == 0)
|
||||
x_19 = l_Lean_Elab_Command_liftTermElabM___rarg(x_8, x_18, x_2, x_3, x_11);
|
||||
if (lean_obj_tag(x_19) == 0)
|
||||
{
|
||||
lean_object* x_19; lean_object* x_20;
|
||||
x_19 = lean_ctor_get(x_18, 1);
|
||||
lean_inc(x_19);
|
||||
lean_dec(x_18);
|
||||
x_20 = l_Lean_Elab_Command_modifyScope___at_Lean_Elab_Command_elabVariables___spec__1(x_7, x_2, x_3, x_19);
|
||||
lean_object* x_20; lean_object* x_21;
|
||||
x_20 = lean_ctor_get(x_19, 1);
|
||||
lean_inc(x_20);
|
||||
lean_dec(x_19);
|
||||
x_21 = l_Lean_Elab_Command_modifyScope___at_Lean_Elab_Command_elabVariables___spec__1(x_7, x_2, x_3, x_20);
|
||||
lean_dec(x_2);
|
||||
lean_dec(x_7);
|
||||
return x_20;
|
||||
return x_21;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_21;
|
||||
uint8_t x_22;
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_2);
|
||||
x_21 = !lean_is_exclusive(x_18);
|
||||
if (x_21 == 0)
|
||||
x_22 = !lean_is_exclusive(x_19);
|
||||
if (x_22 == 0)
|
||||
{
|
||||
return x_18;
|
||||
return x_19;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_22; lean_object* x_23; lean_object* x_24;
|
||||
x_22 = lean_ctor_get(x_18, 0);
|
||||
x_23 = lean_ctor_get(x_18, 1);
|
||||
lean_object* x_23; lean_object* x_24; lean_object* x_25;
|
||||
x_23 = lean_ctor_get(x_19, 0);
|
||||
x_24 = lean_ctor_get(x_19, 1);
|
||||
lean_inc(x_24);
|
||||
lean_inc(x_23);
|
||||
lean_inc(x_22);
|
||||
lean_dec(x_18);
|
||||
x_24 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_24, 0, x_22);
|
||||
lean_ctor_set(x_24, 1, x_23);
|
||||
return x_24;
|
||||
lean_dec(x_19);
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -17362,7 +17372,7 @@ return x_2;
|
|||
lean_object* l_Lean_Elab_Command_elabCheck(lean_object* 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; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21;
|
||||
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; lean_object* x_14; lean_object* x_15; uint8_t 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;
|
||||
x_5 = lean_unsigned_to_nat(1u);
|
||||
x_6 = l_Lean_Syntax_getArg(x_1, x_5);
|
||||
x_7 = lean_st_ref_get(x_3, x_4);
|
||||
|
|
@ -17384,78 +17394,80 @@ x_14 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_12);
|
|||
lean_dec(x_12);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheck___lambda__2___boxed), 9, 1);
|
||||
lean_closure_set(x_15, 0, x_6);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_16, 0, x_14);
|
||||
lean_closure_set(x_16, 1, x_15);
|
||||
x_17 = 1;
|
||||
x_18 = lean_box(x_17);
|
||||
x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_19, 0, x_16);
|
||||
lean_closure_set(x_19, 1, x_18);
|
||||
x_20 = l_Lean_Elab_Command_elabCheck___closed__3;
|
||||
x_16 = 1;
|
||||
x_17 = lean_box(x_16);
|
||||
x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_18, 0, x_14);
|
||||
lean_closure_set(x_18, 1, x_15);
|
||||
lean_closure_set(x_18, 2, x_17);
|
||||
x_19 = lean_box(x_16);
|
||||
x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_20, 0, x_18);
|
||||
lean_closure_set(x_20, 1, x_19);
|
||||
x_21 = l_Lean_Elab_Command_elabCheck___closed__3;
|
||||
lean_inc(x_2);
|
||||
x_21 = l_Lean_Elab_Command_liftTermElabM___rarg(x_20, x_19, x_2, x_3, x_13);
|
||||
if (lean_obj_tag(x_21) == 0)
|
||||
x_22 = l_Lean_Elab_Command_liftTermElabM___rarg(x_21, x_20, x_2, x_3, x_13);
|
||||
if (lean_obj_tag(x_22) == 0)
|
||||
{
|
||||
lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25;
|
||||
x_22 = lean_ctor_get(x_21, 0);
|
||||
lean_inc(x_22);
|
||||
x_23 = lean_ctor_get(x_21, 1);
|
||||
lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26;
|
||||
x_23 = lean_ctor_get(x_22, 0);
|
||||
lean_inc(x_23);
|
||||
lean_dec(x_21);
|
||||
x_24 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_23);
|
||||
x_24 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_24);
|
||||
lean_dec(x_22);
|
||||
x_25 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_24);
|
||||
lean_dec(x_2);
|
||||
x_25 = !lean_is_exclusive(x_24);
|
||||
if (x_25 == 0)
|
||||
x_26 = !lean_is_exclusive(x_25);
|
||||
if (x_26 == 0)
|
||||
{
|
||||
lean_object* x_26;
|
||||
x_26 = lean_ctor_get(x_24, 0);
|
||||
lean_dec(x_26);
|
||||
lean_ctor_set(x_24, 0, x_22);
|
||||
return x_24;
|
||||
lean_object* x_27;
|
||||
x_27 = lean_ctor_get(x_25, 0);
|
||||
lean_dec(x_27);
|
||||
lean_ctor_set(x_25, 0, x_23);
|
||||
return x_25;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_27; lean_object* x_28;
|
||||
x_27 = lean_ctor_get(x_24, 1);
|
||||
lean_inc(x_27);
|
||||
lean_dec(x_24);
|
||||
x_28 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_28, 0, x_22);
|
||||
lean_ctor_set(x_28, 1, x_27);
|
||||
return x_28;
|
||||
lean_object* x_28; lean_object* x_29;
|
||||
x_28 = lean_ctor_get(x_25, 1);
|
||||
lean_inc(x_28);
|
||||
lean_dec(x_25);
|
||||
x_29 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_29, 0, x_23);
|
||||
lean_ctor_set(x_29, 1, x_28);
|
||||
return x_29;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32;
|
||||
x_29 = lean_ctor_get(x_21, 0);
|
||||
lean_inc(x_29);
|
||||
x_30 = lean_ctor_get(x_21, 1);
|
||||
lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33;
|
||||
x_30 = lean_ctor_get(x_22, 0);
|
||||
lean_inc(x_30);
|
||||
lean_dec(x_21);
|
||||
x_31 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_30);
|
||||
x_31 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_31);
|
||||
lean_dec(x_22);
|
||||
x_32 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_31);
|
||||
lean_dec(x_2);
|
||||
x_32 = !lean_is_exclusive(x_31);
|
||||
if (x_32 == 0)
|
||||
x_33 = !lean_is_exclusive(x_32);
|
||||
if (x_33 == 0)
|
||||
{
|
||||
lean_object* x_33;
|
||||
x_33 = lean_ctor_get(x_31, 0);
|
||||
lean_dec(x_33);
|
||||
lean_ctor_set_tag(x_31, 1);
|
||||
lean_ctor_set(x_31, 0, x_29);
|
||||
return x_31;
|
||||
lean_object* x_34;
|
||||
x_34 = lean_ctor_get(x_32, 0);
|
||||
lean_dec(x_34);
|
||||
lean_ctor_set_tag(x_32, 1);
|
||||
lean_ctor_set(x_32, 0, x_30);
|
||||
return x_32;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_34; lean_object* x_35;
|
||||
x_34 = lean_ctor_get(x_31, 1);
|
||||
lean_inc(x_34);
|
||||
lean_dec(x_31);
|
||||
x_35 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_35, 0, x_29);
|
||||
lean_ctor_set(x_35, 1, x_34);
|
||||
return x_35;
|
||||
lean_object* x_35; lean_object* x_36;
|
||||
x_35 = lean_ctor_get(x_32, 1);
|
||||
lean_inc(x_35);
|
||||
lean_dec(x_32);
|
||||
x_36 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_36, 0, x_30);
|
||||
lean_ctor_set(x_36, 1, x_35);
|
||||
return x_36;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -19795,7 +19807,7 @@ x_11 = l_Lean_Elab_Command_elabEvalUnsafe___closed__5;
|
|||
x_12 = l_Lean_Environment_contains(x_10, x_11);
|
||||
if (x_12 == 0)
|
||||
{
|
||||
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; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25;
|
||||
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; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26;
|
||||
x_13 = lean_st_ref_get(x_3, x_9);
|
||||
x_14 = lean_ctor_get(x_13, 0);
|
||||
lean_inc(x_14);
|
||||
|
|
@ -19810,46 +19822,50 @@ x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabEvalUnsafe___lambda__3
|
|||
lean_closure_set(x_19, 0, x_6);
|
||||
lean_closure_set(x_19, 1, x_17);
|
||||
lean_closure_set(x_19, 2, x_18);
|
||||
x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_20, 0, x_16);
|
||||
lean_closure_set(x_20, 1, x_19);
|
||||
x_21 = 1;
|
||||
x_22 = lean_box(x_21);
|
||||
x_23 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_23, 0, x_20);
|
||||
lean_closure_set(x_23, 1, x_22);
|
||||
x_24 = l_Lean_Elab_Command_elabEvalUnsafe___closed__3;
|
||||
x_25 = l_Lean_Elab_Command_liftTermElabM___rarg(x_24, x_23, x_2, x_3, x_15);
|
||||
return x_25;
|
||||
x_20 = 1;
|
||||
x_21 = lean_box(x_20);
|
||||
x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_22, 0, x_16);
|
||||
lean_closure_set(x_22, 1, x_19);
|
||||
lean_closure_set(x_22, 2, x_21);
|
||||
x_23 = lean_box(x_20);
|
||||
x_24 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_24, 0, x_22);
|
||||
lean_closure_set(x_24, 1, x_23);
|
||||
x_25 = l_Lean_Elab_Command_elabEvalUnsafe___closed__3;
|
||||
x_26 = l_Lean_Elab_Command_liftTermElabM___rarg(x_25, x_24, x_2, x_3, x_15);
|
||||
return x_26;
|
||||
}
|
||||
else
|
||||
{
|
||||
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; uint8_t x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38;
|
||||
x_26 = lean_st_ref_get(x_3, x_9);
|
||||
x_27 = lean_ctor_get(x_26, 0);
|
||||
lean_inc(x_27);
|
||||
x_28 = lean_ctor_get(x_26, 1);
|
||||
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; uint8_t 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;
|
||||
x_27 = lean_st_ref_get(x_3, x_9);
|
||||
x_28 = lean_ctor_get(x_27, 0);
|
||||
lean_inc(x_28);
|
||||
lean_dec(x_26);
|
||||
x_29 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_27);
|
||||
x_29 = lean_ctor_get(x_27, 1);
|
||||
lean_inc(x_29);
|
||||
lean_dec(x_27);
|
||||
x_30 = l_myMacro____x40_Init_Notation___hyg_38____closed__2;
|
||||
x_31 = l_Lean_Elab_Command_elabEvalUnsafe___closed__2;
|
||||
x_32 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabEvalUnsafe___lambda__8___boxed), 11, 3);
|
||||
lean_closure_set(x_32, 0, x_6);
|
||||
lean_closure_set(x_32, 1, x_30);
|
||||
lean_closure_set(x_32, 2, x_31);
|
||||
x_33 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_33, 0, x_29);
|
||||
lean_closure_set(x_33, 1, x_32);
|
||||
x_30 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_28);
|
||||
lean_dec(x_28);
|
||||
x_31 = l_myMacro____x40_Init_Notation___hyg_38____closed__2;
|
||||
x_32 = l_Lean_Elab_Command_elabEvalUnsafe___closed__2;
|
||||
x_33 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabEvalUnsafe___lambda__8___boxed), 11, 3);
|
||||
lean_closure_set(x_33, 0, x_6);
|
||||
lean_closure_set(x_33, 1, x_31);
|
||||
lean_closure_set(x_33, 2, x_32);
|
||||
x_34 = 1;
|
||||
x_35 = lean_box(x_34);
|
||||
x_36 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_36, 0, x_33);
|
||||
lean_closure_set(x_36, 1, x_35);
|
||||
x_37 = l_Lean_Elab_Command_elabEvalUnsafe___closed__3;
|
||||
x_38 = l_Lean_Elab_Command_liftTermElabM___rarg(x_37, x_36, x_2, x_3, x_28);
|
||||
return x_38;
|
||||
x_36 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_36, 0, x_30);
|
||||
lean_closure_set(x_36, 1, x_33);
|
||||
lean_closure_set(x_36, 2, x_35);
|
||||
x_37 = lean_box(x_34);
|
||||
x_38 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_38, 0, x_36);
|
||||
lean_closure_set(x_38, 1, x_37);
|
||||
x_39 = l_Lean_Elab_Command_elabEvalUnsafe___closed__3;
|
||||
x_40 = l_Lean_Elab_Command_liftTermElabM___rarg(x_39, x_38, x_2, x_3, x_29);
|
||||
return x_40;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -20275,7 +20291,7 @@ return x_2;
|
|||
lean_object* l_Lean_Elab_Command_elabSynth(lean_object* 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; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21;
|
||||
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; lean_object* x_14; lean_object* x_15; uint8_t 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;
|
||||
x_5 = lean_unsigned_to_nat(1u);
|
||||
x_6 = l_Lean_Syntax_getArg(x_1, x_5);
|
||||
x_7 = lean_st_ref_get(x_3, x_4);
|
||||
|
|
@ -20297,78 +20313,80 @@ x_14 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_12);
|
|||
lean_dec(x_12);
|
||||
x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabSynth___lambda__2___boxed), 9, 1);
|
||||
lean_closure_set(x_15, 0, x_6);
|
||||
x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_16, 0, x_14);
|
||||
lean_closure_set(x_16, 1, x_15);
|
||||
x_17 = 1;
|
||||
x_18 = lean_box(x_17);
|
||||
x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_19, 0, x_16);
|
||||
lean_closure_set(x_19, 1, x_18);
|
||||
x_20 = l_Lean_Elab_Command_elabSynth___closed__3;
|
||||
x_16 = 1;
|
||||
x_17 = lean_box(x_16);
|
||||
x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_18, 0, x_14);
|
||||
lean_closure_set(x_18, 1, x_15);
|
||||
lean_closure_set(x_18, 2, x_17);
|
||||
x_19 = lean_box(x_16);
|
||||
x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_20, 0, x_18);
|
||||
lean_closure_set(x_20, 1, x_19);
|
||||
x_21 = l_Lean_Elab_Command_elabSynth___closed__3;
|
||||
lean_inc(x_2);
|
||||
x_21 = l_Lean_Elab_Command_liftTermElabM___rarg(x_20, x_19, x_2, x_3, x_13);
|
||||
if (lean_obj_tag(x_21) == 0)
|
||||
x_22 = l_Lean_Elab_Command_liftTermElabM___rarg(x_21, x_20, x_2, x_3, x_13);
|
||||
if (lean_obj_tag(x_22) == 0)
|
||||
{
|
||||
lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25;
|
||||
x_22 = lean_ctor_get(x_21, 0);
|
||||
lean_inc(x_22);
|
||||
x_23 = lean_ctor_get(x_21, 1);
|
||||
lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26;
|
||||
x_23 = lean_ctor_get(x_22, 0);
|
||||
lean_inc(x_23);
|
||||
lean_dec(x_21);
|
||||
x_24 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_23);
|
||||
x_24 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_24);
|
||||
lean_dec(x_22);
|
||||
x_25 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_24);
|
||||
lean_dec(x_2);
|
||||
x_25 = !lean_is_exclusive(x_24);
|
||||
if (x_25 == 0)
|
||||
x_26 = !lean_is_exclusive(x_25);
|
||||
if (x_26 == 0)
|
||||
{
|
||||
lean_object* x_26;
|
||||
x_26 = lean_ctor_get(x_24, 0);
|
||||
lean_dec(x_26);
|
||||
lean_ctor_set(x_24, 0, x_22);
|
||||
return x_24;
|
||||
lean_object* x_27;
|
||||
x_27 = lean_ctor_get(x_25, 0);
|
||||
lean_dec(x_27);
|
||||
lean_ctor_set(x_25, 0, x_23);
|
||||
return x_25;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_27; lean_object* x_28;
|
||||
x_27 = lean_ctor_get(x_24, 1);
|
||||
lean_inc(x_27);
|
||||
lean_dec(x_24);
|
||||
x_28 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_28, 0, x_22);
|
||||
lean_ctor_set(x_28, 1, x_27);
|
||||
return x_28;
|
||||
lean_object* x_28; lean_object* x_29;
|
||||
x_28 = lean_ctor_get(x_25, 1);
|
||||
lean_inc(x_28);
|
||||
lean_dec(x_25);
|
||||
x_29 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_29, 0, x_23);
|
||||
lean_ctor_set(x_29, 1, x_28);
|
||||
return x_29;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32;
|
||||
x_29 = lean_ctor_get(x_21, 0);
|
||||
lean_inc(x_29);
|
||||
x_30 = lean_ctor_get(x_21, 1);
|
||||
lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33;
|
||||
x_30 = lean_ctor_get(x_22, 0);
|
||||
lean_inc(x_30);
|
||||
lean_dec(x_21);
|
||||
x_31 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_30);
|
||||
x_31 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_31);
|
||||
lean_dec(x_22);
|
||||
x_32 = l_Lean_setEnv___at_Lean_Elab_Command_elabInitQuot___spec__1(x_10, x_2, x_3, x_31);
|
||||
lean_dec(x_2);
|
||||
x_32 = !lean_is_exclusive(x_31);
|
||||
if (x_32 == 0)
|
||||
x_33 = !lean_is_exclusive(x_32);
|
||||
if (x_33 == 0)
|
||||
{
|
||||
lean_object* x_33;
|
||||
x_33 = lean_ctor_get(x_31, 0);
|
||||
lean_dec(x_33);
|
||||
lean_ctor_set_tag(x_31, 1);
|
||||
lean_ctor_set(x_31, 0, x_29);
|
||||
return x_31;
|
||||
lean_object* x_34;
|
||||
x_34 = lean_ctor_get(x_32, 0);
|
||||
lean_dec(x_34);
|
||||
lean_ctor_set_tag(x_32, 1);
|
||||
lean_ctor_set(x_32, 0, x_30);
|
||||
return x_32;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_34; lean_object* x_35;
|
||||
x_34 = lean_ctor_get(x_31, 1);
|
||||
lean_inc(x_34);
|
||||
lean_dec(x_31);
|
||||
x_35 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_35, 0, x_29);
|
||||
lean_ctor_set(x_35, 1, x_34);
|
||||
return x_35;
|
||||
lean_object* x_35; lean_object* x_36;
|
||||
x_35 = lean_ctor_get(x_32, 1);
|
||||
lean_inc(x_35);
|
||||
lean_dec(x_32);
|
||||
x_36 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_36, 0, x_30);
|
||||
lean_ctor_set(x_36, 1, x_35);
|
||||
return x_36;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
63
stage0/stdlib/Lean/Elab/Declaration.c
generated
63
stage0/stdlib/Lean/Elab/Declaration.c
generated
|
|
@ -229,6 +229,7 @@ uint8_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleC
|
|||
lean_object* l___regBuiltin_Lean_Elab_Command_expandBuiltinInitialize(lean_object*);
|
||||
extern lean_object* l_myMacro____x40_Init_Notation___hyg_38____closed__6;
|
||||
lean_object* l_Lean_Elab_Command_expandMutualPreamble(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_nullKind___closed__2;
|
||||
lean_object* l_Lean_Elab_Command_expandMutualElement(lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_initFn____x40_Lean_Compiler_InitAttr___hyg_524____closed__2;
|
||||
|
|
@ -306,7 +307,6 @@ lean_object* l_Lean_Elab_Command_elabAxiom_match__4(lean_object*);
|
|||
uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*);
|
||||
extern lean_object* l_Std_HashMap_instInhabitedHashMap___closed__1;
|
||||
lean_object* l_Lean_Elab_Command_expandMutualPreamble___closed__6;
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_Elab_Command_isDefLike___closed__3;
|
||||
lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_elabMutualInductive___boxed__const__1;
|
||||
lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace___closed__1;
|
||||
|
|
@ -2511,7 +2511,7 @@ return x_100;
|
|||
lean_object* l_Lean_Elab_Command_elabAxiom___lambda__2(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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19;
|
||||
lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21;
|
||||
x_16 = l_Lean_Syntax_getArgs(x_1);
|
||||
lean_inc(x_7);
|
||||
x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabAxiom___lambda__1___boxed), 15, 7);
|
||||
|
|
@ -2522,11 +2522,14 @@ lean_closure_set(x_17, 3, x_5);
|
|||
lean_closure_set(x_17, 4, x_6);
|
||||
lean_closure_set(x_17, 5, x_7);
|
||||
lean_closure_set(x_17, 6, x_8);
|
||||
x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_18, 0, x_16);
|
||||
lean_closure_set(x_18, 1, x_17);
|
||||
x_19 = l_Lean_Elab_Term_withLevelNames___rarg(x_7, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15);
|
||||
return x_19;
|
||||
x_18 = 0;
|
||||
x_19 = lean_box(x_18);
|
||||
x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_20, 0, x_16);
|
||||
lean_closure_set(x_20, 1, x_17);
|
||||
lean_closure_set(x_20, 2, x_19);
|
||||
x_21 = l_Lean_Elab_Term_withLevelNames___rarg(x_7, x_20, x_9, x_10, x_11, x_12, x_13, x_14, x_15);
|
||||
return x_21;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Elab_Command_elabAxiom___lambda__3(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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) {
|
||||
|
|
@ -2577,7 +2580,7 @@ x_16 = l_Lean_Elab_Command_expandDeclId(x_7, x_1, x_3, x_4, x_15);
|
|||
lean_dec(x_7);
|
||||
if (lean_obj_tag(x_16) == 0)
|
||||
{
|
||||
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_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31;
|
||||
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_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32;
|
||||
x_17 = lean_ctor_get(x_16, 0);
|
||||
lean_inc(x_17);
|
||||
x_18 = lean_ctor_get(x_16, 1);
|
||||
|
|
@ -2607,43 +2610,45 @@ lean_closure_set(x_26, 3, x_12);
|
|||
lean_closure_set(x_26, 4, x_14);
|
||||
lean_closure_set(x_26, 5, x_20);
|
||||
lean_closure_set(x_26, 6, x_2);
|
||||
x_27 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_27, 0, x_25);
|
||||
lean_closure_set(x_27, 1, x_26);
|
||||
x_28 = 1;
|
||||
x_29 = lean_box(x_28);
|
||||
x_30 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_30, 0, x_27);
|
||||
lean_closure_set(x_30, 1, x_29);
|
||||
x_31 = l_Lean_Elab_Command_liftTermElabM___rarg(x_21, x_30, x_3, x_4, x_24);
|
||||
return x_31;
|
||||
x_27 = 1;
|
||||
x_28 = lean_box(x_27);
|
||||
x_29 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_29, 0, x_25);
|
||||
lean_closure_set(x_29, 1, x_26);
|
||||
lean_closure_set(x_29, 2, x_28);
|
||||
x_30 = lean_box(x_27);
|
||||
x_31 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_31, 0, x_29);
|
||||
lean_closure_set(x_31, 1, x_30);
|
||||
x_32 = l_Lean_Elab_Command_liftTermElabM___rarg(x_21, x_31, x_3, x_4, x_24);
|
||||
return x_32;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_32;
|
||||
uint8_t x_33;
|
||||
lean_dec(x_14);
|
||||
lean_dec(x_12);
|
||||
lean_dec(x_11);
|
||||
lean_dec(x_3);
|
||||
lean_dec(x_2);
|
||||
lean_dec(x_1);
|
||||
x_32 = !lean_is_exclusive(x_16);
|
||||
if (x_32 == 0)
|
||||
x_33 = !lean_is_exclusive(x_16);
|
||||
if (x_33 == 0)
|
||||
{
|
||||
return x_16;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_33; lean_object* x_34; lean_object* x_35;
|
||||
x_33 = lean_ctor_get(x_16, 0);
|
||||
x_34 = lean_ctor_get(x_16, 1);
|
||||
lean_object* x_34; lean_object* x_35; lean_object* x_36;
|
||||
x_34 = lean_ctor_get(x_16, 0);
|
||||
x_35 = lean_ctor_get(x_16, 1);
|
||||
lean_inc(x_35);
|
||||
lean_inc(x_34);
|
||||
lean_inc(x_33);
|
||||
lean_dec(x_16);
|
||||
x_35 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_35, 0, x_33);
|
||||
lean_ctor_set(x_35, 1, x_34);
|
||||
return x_35;
|
||||
x_36 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_36, 0, x_34);
|
||||
lean_ctor_set(x_36, 1, x_35);
|
||||
return x_36;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
1592
stage0/stdlib/Lean/Elab/Inductive.c
generated
1592
stage0/stdlib/Lean/Elab/Inductive.c
generated
File diff suppressed because it is too large
Load diff
144
stage0/stdlib/Lean/Elab/LetRec.c
generated
144
stage0/stdlib/Lean/Elab/LetRec.c
generated
|
|
@ -18,7 +18,6 @@ lean_object* l_Array_mapIdxM_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Te
|
|||
lean_object* l_Lean_Elab_Term_elabLetRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
size_t l_USize_add(size_t, size_t);
|
||||
lean_object* l_Lean_Expr_mvarId_x21(lean_object*);
|
||||
lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
|
||||
extern lean_object* l_Lean_Elab_checkNotAlreadyDeclared___rarg___lambda__3___closed__2;
|
||||
lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -33,6 +32,7 @@ lean_object* l_Array_mapIdxM_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Te
|
|||
lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__1(lean_object*);
|
||||
lean_object* lean_array_uset(lean_object*, size_t, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_abortIfContainsSyntheticSorry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_mkLambdaFVars___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambdaAux___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Array_empty___closed__1;
|
||||
lean_object* lean_st_ref_get(lean_object*, lean_object*);
|
||||
|
|
@ -158,7 +158,7 @@ lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Term_Quotation_match__syntax_exp
|
|||
uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*);
|
||||
lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec___closed__1;
|
||||
lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_elabDeclAttrs___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -1099,7 +1099,7 @@ lean_inc(x_25);
|
|||
x_30 = l_Lean_Elab_Term_applyAttributesAt(x_25, x_2, x_28, x_29, x_3, x_4, x_5, x_6, x_7, x_8, x_27);
|
||||
if (lean_obj_tag(x_30) == 0)
|
||||
{
|
||||
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_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; uint8_t x_38; lean_object* x_39;
|
||||
x_31 = lean_ctor_get(x_30, 1);
|
||||
lean_inc(x_31);
|
||||
lean_dec(x_30);
|
||||
|
|
@ -1112,93 +1112,93 @@ x_36 = l_Lean_Elab_Term_expandOptType(x_13, x_35);
|
|||
lean_dec(x_35);
|
||||
x_37 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__1), 9, 1);
|
||||
lean_closure_set(x_37, 0, x_36);
|
||||
x_38 = 0;
|
||||
lean_inc(x_8);
|
||||
lean_inc(x_7);
|
||||
lean_inc(x_6);
|
||||
lean_inc(x_5);
|
||||
lean_inc(x_4);
|
||||
lean_inc(x_3);
|
||||
x_38 = l_Lean_Elab_Term_elabBinders___rarg(x_33, x_37, x_3, x_4, x_5, x_6, x_7, x_8, x_31);
|
||||
if (lean_obj_tag(x_38) == 0)
|
||||
x_39 = l_Lean_Elab_Term_elabBinders___rarg(x_33, x_37, x_38, x_3, x_4, x_5, x_6, x_7, x_8, x_31);
|
||||
if (lean_obj_tag(x_39) == 0)
|
||||
{
|
||||
lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46;
|
||||
x_39 = lean_ctor_get(x_38, 0);
|
||||
lean_inc(x_39);
|
||||
x_40 = lean_ctor_get(x_38, 1);
|
||||
lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47;
|
||||
x_40 = lean_ctor_get(x_39, 0);
|
||||
lean_inc(x_40);
|
||||
lean_dec(x_38);
|
||||
x_41 = lean_ctor_get(x_39, 0);
|
||||
x_41 = lean_ctor_get(x_39, 1);
|
||||
lean_inc(x_41);
|
||||
x_42 = lean_ctor_get(x_39, 1);
|
||||
lean_inc(x_42);
|
||||
lean_dec(x_39);
|
||||
lean_inc(x_41);
|
||||
x_43 = lean_alloc_ctor(1, 1, 0);
|
||||
lean_ctor_set(x_43, 0, x_41);
|
||||
x_44 = 2;
|
||||
x_45 = lean_box(0);
|
||||
x_42 = lean_ctor_get(x_40, 0);
|
||||
lean_inc(x_42);
|
||||
x_43 = lean_ctor_get(x_40, 1);
|
||||
lean_inc(x_43);
|
||||
lean_dec(x_40);
|
||||
lean_inc(x_42);
|
||||
x_44 = lean_alloc_ctor(1, 1, 0);
|
||||
lean_ctor_set(x_44, 0, x_42);
|
||||
x_45 = 2;
|
||||
x_46 = lean_box(0);
|
||||
lean_inc(x_5);
|
||||
x_46 = l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(x_43, x_44, x_45, x_5, x_6, x_7, x_8, x_40);
|
||||
x_47 = l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(x_44, x_45, x_46, x_5, x_6, x_7, x_8, x_41);
|
||||
if (x_17 == 0)
|
||||
{
|
||||
lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76;
|
||||
x_47 = lean_ctor_get(x_46, 0);
|
||||
lean_inc(x_47);
|
||||
x_48 = lean_ctor_get(x_46, 1);
|
||||
lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76;
|
||||
x_48 = lean_ctor_get(x_47, 0);
|
||||
lean_inc(x_48);
|
||||
lean_dec(x_46);
|
||||
x_49 = lean_unsigned_to_nat(3u);
|
||||
x_50 = l_Lean_Syntax_getArg(x_13, x_49);
|
||||
x_51 = lean_st_ref_get(x_8, x_48);
|
||||
x_52 = lean_ctor_get(x_51, 0);
|
||||
lean_inc(x_52);
|
||||
x_53 = lean_ctor_get(x_51, 1);
|
||||
x_49 = lean_ctor_get(x_47, 1);
|
||||
lean_inc(x_49);
|
||||
lean_dec(x_47);
|
||||
x_50 = lean_unsigned_to_nat(3u);
|
||||
x_51 = l_Lean_Syntax_getArg(x_13, x_50);
|
||||
x_52 = lean_st_ref_get(x_8, x_49);
|
||||
x_53 = lean_ctor_get(x_52, 0);
|
||||
lean_inc(x_53);
|
||||
lean_dec(x_51);
|
||||
x_54 = lean_ctor_get(x_52, 0);
|
||||
x_54 = lean_ctor_get(x_52, 1);
|
||||
lean_inc(x_54);
|
||||
lean_dec(x_52);
|
||||
x_55 = lean_ctor_get(x_7, 3);
|
||||
x_55 = lean_ctor_get(x_53, 0);
|
||||
lean_inc(x_55);
|
||||
x_56 = l_Lean_Elab_Term_getCurrMacroScope(x_3, x_4, x_5, x_6, x_7, x_8, x_53);
|
||||
x_57 = lean_ctor_get(x_56, 0);
|
||||
lean_inc(x_57);
|
||||
x_58 = lean_ctor_get(x_56, 1);
|
||||
lean_dec(x_53);
|
||||
x_56 = lean_ctor_get(x_7, 3);
|
||||
lean_inc(x_56);
|
||||
x_57 = l_Lean_Elab_Term_getCurrMacroScope(x_3, x_4, x_5, x_6, x_7, x_8, x_54);
|
||||
x_58 = lean_ctor_get(x_57, 0);
|
||||
lean_inc(x_58);
|
||||
lean_dec(x_56);
|
||||
x_59 = lean_ctor_get(x_7, 1);
|
||||
x_59 = lean_ctor_get(x_57, 1);
|
||||
lean_inc(x_59);
|
||||
x_60 = lean_ctor_get(x_7, 2);
|
||||
lean_dec(x_57);
|
||||
x_60 = lean_ctor_get(x_7, 1);
|
||||
lean_inc(x_60);
|
||||
x_61 = lean_st_ref_get(x_8, x_58);
|
||||
x_62 = lean_ctor_get(x_61, 0);
|
||||
lean_inc(x_62);
|
||||
x_63 = lean_ctor_get(x_61, 1);
|
||||
x_61 = lean_ctor_get(x_7, 2);
|
||||
lean_inc(x_61);
|
||||
x_62 = lean_st_ref_get(x_8, x_59);
|
||||
x_63 = lean_ctor_get(x_62, 0);
|
||||
lean_inc(x_63);
|
||||
lean_dec(x_61);
|
||||
x_64 = lean_ctor_get(x_62, 1);
|
||||
lean_inc(x_64);
|
||||
lean_dec(x_62);
|
||||
lean_inc(x_54);
|
||||
x_65 = lean_alloc_closure((void*)(l___private_Lean_Elab_Util_0__Lean_Elab_expandMacro_x3f___boxed), 4, 1);
|
||||
lean_closure_set(x_65, 0, x_54);
|
||||
x_66 = x_65;
|
||||
x_67 = lean_environment_main_module(x_54);
|
||||
x_68 = lean_alloc_ctor(0, 6, 0);
|
||||
lean_ctor_set(x_68, 0, x_66);
|
||||
lean_ctor_set(x_68, 1, x_67);
|
||||
lean_ctor_set(x_68, 2, x_57);
|
||||
lean_ctor_set(x_68, 3, x_59);
|
||||
lean_ctor_set(x_68, 4, x_60);
|
||||
lean_ctor_set(x_68, 5, x_55);
|
||||
x_69 = 0;
|
||||
x_70 = l_Lean_Elab_Term_expandMatchAltsIntoMatch(x_13, x_50, x_69, x_68, x_64);
|
||||
x_65 = lean_ctor_get(x_63, 1);
|
||||
lean_inc(x_65);
|
||||
lean_dec(x_63);
|
||||
lean_inc(x_55);
|
||||
x_66 = lean_alloc_closure((void*)(l___private_Lean_Elab_Util_0__Lean_Elab_expandMacro_x3f___boxed), 4, 1);
|
||||
lean_closure_set(x_66, 0, x_55);
|
||||
x_67 = x_66;
|
||||
x_68 = lean_environment_main_module(x_55);
|
||||
x_69 = lean_alloc_ctor(0, 6, 0);
|
||||
lean_ctor_set(x_69, 0, x_67);
|
||||
lean_ctor_set(x_69, 1, x_68);
|
||||
lean_ctor_set(x_69, 2, x_58);
|
||||
lean_ctor_set(x_69, 3, x_60);
|
||||
lean_ctor_set(x_69, 4, x_61);
|
||||
lean_ctor_set(x_69, 5, x_56);
|
||||
x_70 = l_Lean_Elab_Term_expandMatchAltsIntoMatch(x_13, x_51, x_38, x_69, x_65);
|
||||
x_71 = lean_ctor_get(x_70, 0);
|
||||
lean_inc(x_71);
|
||||
x_72 = lean_ctor_get(x_70, 1);
|
||||
lean_inc(x_72);
|
||||
lean_dec(x_70);
|
||||
x_73 = lean_st_ref_take(x_8, x_63);
|
||||
x_73 = lean_st_ref_take(x_8, x_64);
|
||||
x_74 = lean_ctor_get(x_73, 0);
|
||||
lean_inc(x_74);
|
||||
x_75 = lean_ctor_get(x_73, 1);
|
||||
|
|
@ -1215,7 +1215,7 @@ x_78 = lean_st_ref_set(x_8, x_74, x_75);
|
|||
x_79 = lean_ctor_get(x_78, 1);
|
||||
lean_inc(x_79);
|
||||
lean_dec(x_78);
|
||||
x_80 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_42, x_41, x_47, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_79);
|
||||
x_80 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_43, x_42, x_48, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_79);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
|
|
@ -1243,7 +1243,7 @@ x_85 = lean_st_ref_set(x_8, x_84, x_75);
|
|||
x_86 = lean_ctor_get(x_85, 1);
|
||||
lean_inc(x_86);
|
||||
lean_dec(x_85);
|
||||
x_87 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_42, x_41, x_47, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_86);
|
||||
x_87 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_43, x_42, x_48, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_86);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
|
|
@ -1256,14 +1256,14 @@ return x_87;
|
|||
else
|
||||
{
|
||||
lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92;
|
||||
x_88 = lean_ctor_get(x_46, 0);
|
||||
x_88 = lean_ctor_get(x_47, 0);
|
||||
lean_inc(x_88);
|
||||
x_89 = lean_ctor_get(x_46, 1);
|
||||
x_89 = lean_ctor_get(x_47, 1);
|
||||
lean_inc(x_89);
|
||||
lean_dec(x_46);
|
||||
lean_dec(x_47);
|
||||
x_90 = lean_unsigned_to_nat(4u);
|
||||
x_91 = l_Lean_Syntax_getArg(x_13, x_90);
|
||||
x_92 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_42, x_41, x_88, x_91, x_3, x_4, x_5, x_6, x_7, x_8, x_89);
|
||||
x_92 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__9___lambda__2(x_13, x_2, x_20, x_25, x_43, x_42, x_88, x_91, x_3, x_4, x_5, x_6, x_7, x_8, x_89);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
|
|
@ -1286,19 +1286,19 @@ lean_dec(x_5);
|
|||
lean_dec(x_4);
|
||||
lean_dec(x_3);
|
||||
lean_dec(x_2);
|
||||
x_93 = !lean_is_exclusive(x_38);
|
||||
x_93 = !lean_is_exclusive(x_39);
|
||||
if (x_93 == 0)
|
||||
{
|
||||
return x_38;
|
||||
return x_39;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_94; lean_object* x_95; lean_object* x_96;
|
||||
x_94 = lean_ctor_get(x_38, 0);
|
||||
x_95 = lean_ctor_get(x_38, 1);
|
||||
x_94 = lean_ctor_get(x_39, 0);
|
||||
x_95 = lean_ctor_get(x_39, 1);
|
||||
lean_inc(x_95);
|
||||
lean_inc(x_94);
|
||||
lean_dec(x_38);
|
||||
lean_dec(x_39);
|
||||
x_96 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_96, 0, x_94);
|
||||
lean_ctor_set(x_96, 1, x_95);
|
||||
|
|
@ -1949,7 +1949,7 @@ lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Elab_LetRec_
|
|||
_start:
|
||||
{
|
||||
lean_object* x_11; lean_object* x_12;
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1), 10, 3);
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1), 10, 3);
|
||||
lean_closure_set(x_11, 0, x_3);
|
||||
lean_closure_set(x_11, 1, x_4);
|
||||
lean_closure_set(x_11, 2, x_5);
|
||||
|
|
|
|||
4
stage0/stdlib/Lean/Elab/Match.c
generated
4
stage0/stdlib/Lean/Elab/Match.c
generated
|
|
@ -37,7 +37,6 @@ lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_withDepElimPatterns__
|
|||
lean_object* l_Lean_Expr_mvarId_x21(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_Match_0__Lean_Elab_Term_elabMatchAux___boxed__const__1;
|
||||
lean_object* l_Lean_throwError___at___private_Lean_Elab_Match_0__Lean_Elab_Term_CollectPatternVars_throwCtorExpected___spec__1(lean_object*);
|
||||
lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_Lean_Expr_isCharLit(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_Match_0__Lean_Elab_Term_CollectPatternVars_nameToPattern___closed__3;
|
||||
extern lean_object* l_Lean_Syntax_strLitToAtom___closed__3;
|
||||
|
|
@ -126,6 +125,7 @@ lean_object* l_Array_extract___rarg(lean_object*, lean_object*, lean_object*);
|
|||
lean_object* l_Lean_Elab_Term_elabMatch_match__14(lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Match_0__Lean_Elab_Term_CollectPatternVars_CtorApp_processExplicitArg___spec__1___boxed(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_Match_0__Lean_Elab_Term_withPatternVars_loop___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Match___hyg_1243____closed__2;
|
||||
lean_object* lean_metavar_ctx_get_expr_assignment(lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_ToDepElimPattern_main___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -4768,7 +4768,7 @@ lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Elab_Match_0
|
|||
_start:
|
||||
{
|
||||
lean_object* x_11; lean_object* x_12;
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1), 10, 3);
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1), 10, 3);
|
||||
lean_closure_set(x_11, 0, x_3);
|
||||
lean_closure_set(x_11, 1, x_4);
|
||||
lean_closure_set(x_11, 2, x_5);
|
||||
|
|
|
|||
166
stage0/stdlib/Lean/Elab/MutualDef.c
generated
166
stage0/stdlib/Lean/Elab/MutualDef.c
generated
|
|
@ -26,7 +26,6 @@ lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at___private_Lean_Elab_Mutual
|
|||
size_t l_USize_add(size_t, size_t);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getAllUserLevelNames(lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_MutualClosure_FixPoint_run_match__1(lean_object*);
|
||||
lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_stringToMessageData(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -81,6 +80,7 @@ lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_E
|
|||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_merge(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pushLocalDecl___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_typeHasRecFun_match__2(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMutualDef___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___closed__3;
|
||||
|
|
@ -378,6 +378,7 @@ lean_object* l_Lean_Elab_Term_MutualClosure_pushMain___boxed(lean_object*, lean_
|
|||
lean_object* lean_expr_update_proj(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_ReplaceImpl_replaceUnsafeM_visit___at_Lean_Elab_Term_MutualClosure_Replacement_apply___spec__2(lean_object*, size_t, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_PersistentEnvExtension_addEntry___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at_Lean_Elab_Term_MutualClosure_main___spec__9(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_feraseIdx___rarg(lean_object*, lean_object*);
|
||||
|
|
@ -520,7 +521,6 @@ lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunType(lean_
|
|||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_collectUsed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_fixpoint___boxed(lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__1(size_t, size_t, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_fixpoint___rarg(lean_object*, lean_object*);
|
||||
|
|
@ -3740,7 +3740,7 @@ x_37 = l_Lean_Elab_Term_applyAttributesAt(x_32, x_34, x_35, x_36, x_5, x_6, x_7,
|
|||
lean_dec(x_34);
|
||||
if (lean_obj_tag(x_37) == 0)
|
||||
{
|
||||
lean_object* x_38; 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_38; 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;
|
||||
x_38 = lean_ctor_get(x_37, 1);
|
||||
lean_inc(x_38);
|
||||
lean_dec(x_37);
|
||||
|
|
@ -3758,66 +3758,68 @@ lean_closure_set(x_41, 3, x_31);
|
|||
lean_closure_set(x_41, 4, x_32);
|
||||
lean_closure_set(x_41, 5, x_33);
|
||||
lean_closure_set(x_41, 6, x_4);
|
||||
x_42 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_42, 0, x_40);
|
||||
lean_closure_set(x_42, 1, x_41);
|
||||
x_43 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2);
|
||||
lean_closure_set(x_43, 0, x_33);
|
||||
lean_closure_set(x_43, 1, x_42);
|
||||
x_42 = lean_box(x_36);
|
||||
x_43 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_43, 0, x_40);
|
||||
lean_closure_set(x_43, 1, x_41);
|
||||
lean_closure_set(x_43, 2, x_42);
|
||||
x_44 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2);
|
||||
lean_closure_set(x_44, 0, x_33);
|
||||
lean_closure_set(x_44, 1, x_43);
|
||||
lean_inc(x_10);
|
||||
lean_inc(x_8);
|
||||
lean_inc(x_7);
|
||||
lean_inc(x_6);
|
||||
lean_inc(x_5);
|
||||
x_44 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_43, x_36, x_5, x_6, x_7, x_8, x_21, x_10, x_38);
|
||||
if (lean_obj_tag(x_44) == 0)
|
||||
x_45 = l_Lean_Elab_Term_withUnboundImplicitLocal___rarg(x_44, x_36, x_5, x_6, x_7, x_8, x_21, x_10, x_38);
|
||||
if (lean_obj_tag(x_45) == 0)
|
||||
{
|
||||
lean_object* x_45; lean_object* x_46; lean_object* x_47; size_t x_48; size_t x_49;
|
||||
x_45 = lean_ctor_get(x_44, 0);
|
||||
lean_inc(x_45);
|
||||
x_46 = lean_ctor_get(x_44, 1);
|
||||
lean_object* x_46; lean_object* x_47; lean_object* x_48; size_t x_49; size_t x_50;
|
||||
x_46 = lean_ctor_get(x_45, 0);
|
||||
lean_inc(x_46);
|
||||
lean_dec(x_44);
|
||||
x_47 = lean_array_push(x_4, x_45);
|
||||
x_48 = 1;
|
||||
x_49 = x_3 + x_48;
|
||||
x_3 = x_49;
|
||||
x_4 = x_47;
|
||||
x_11 = x_46;
|
||||
x_47 = lean_ctor_get(x_45, 1);
|
||||
lean_inc(x_47);
|
||||
lean_dec(x_45);
|
||||
x_48 = lean_array_push(x_4, x_46);
|
||||
x_49 = 1;
|
||||
x_50 = x_3 + x_49;
|
||||
x_3 = x_50;
|
||||
x_4 = x_48;
|
||||
x_11 = x_47;
|
||||
goto _start;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_51;
|
||||
uint8_t x_52;
|
||||
lean_dec(x_10);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
x_51 = !lean_is_exclusive(x_44);
|
||||
if (x_51 == 0)
|
||||
x_52 = !lean_is_exclusive(x_45);
|
||||
if (x_52 == 0)
|
||||
{
|
||||
return x_44;
|
||||
return x_45;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_52; lean_object* x_53; lean_object* x_54;
|
||||
x_52 = lean_ctor_get(x_44, 0);
|
||||
x_53 = lean_ctor_get(x_44, 1);
|
||||
lean_object* x_53; lean_object* x_54; lean_object* x_55;
|
||||
x_53 = lean_ctor_get(x_45, 0);
|
||||
x_54 = lean_ctor_get(x_45, 1);
|
||||
lean_inc(x_54);
|
||||
lean_inc(x_53);
|
||||
lean_inc(x_52);
|
||||
lean_dec(x_44);
|
||||
x_54 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_54, 0, x_52);
|
||||
lean_ctor_set(x_54, 1, x_53);
|
||||
return x_54;
|
||||
lean_dec(x_45);
|
||||
x_55 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_55, 0, x_53);
|
||||
lean_ctor_set(x_55, 1, x_54);
|
||||
return x_55;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_55;
|
||||
uint8_t x_56;
|
||||
lean_dec(x_33);
|
||||
lean_dec(x_32);
|
||||
lean_dec(x_31);
|
||||
|
|
@ -3831,29 +3833,29 @@ lean_dec(x_7);
|
|||
lean_dec(x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
x_55 = !lean_is_exclusive(x_37);
|
||||
if (x_55 == 0)
|
||||
x_56 = !lean_is_exclusive(x_37);
|
||||
if (x_56 == 0)
|
||||
{
|
||||
return x_37;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_56; lean_object* x_57; lean_object* x_58;
|
||||
x_56 = lean_ctor_get(x_37, 0);
|
||||
x_57 = lean_ctor_get(x_37, 1);
|
||||
lean_object* x_57; lean_object* x_58; lean_object* x_59;
|
||||
x_57 = lean_ctor_get(x_37, 0);
|
||||
x_58 = lean_ctor_get(x_37, 1);
|
||||
lean_inc(x_58);
|
||||
lean_inc(x_57);
|
||||
lean_inc(x_56);
|
||||
lean_dec(x_37);
|
||||
x_58 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_58, 0, x_56);
|
||||
lean_ctor_set(x_58, 1, x_57);
|
||||
return x_58;
|
||||
x_59 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_59, 0, x_57);
|
||||
lean_ctor_set(x_59, 1, x_58);
|
||||
return x_59;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_59;
|
||||
uint8_t x_60;
|
||||
lean_dec(x_27);
|
||||
lean_dec(x_21);
|
||||
lean_dec(x_15);
|
||||
|
|
@ -3864,23 +3866,23 @@ lean_dec(x_7);
|
|||
lean_dec(x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
x_59 = !lean_is_exclusive(x_28);
|
||||
if (x_59 == 0)
|
||||
x_60 = !lean_is_exclusive(x_28);
|
||||
if (x_60 == 0)
|
||||
{
|
||||
return x_28;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_60; lean_object* x_61; lean_object* x_62;
|
||||
x_60 = lean_ctor_get(x_28, 0);
|
||||
x_61 = lean_ctor_get(x_28, 1);
|
||||
lean_object* x_61; lean_object* x_62; lean_object* x_63;
|
||||
x_61 = lean_ctor_get(x_28, 0);
|
||||
x_62 = lean_ctor_get(x_28, 1);
|
||||
lean_inc(x_62);
|
||||
lean_inc(x_61);
|
||||
lean_inc(x_60);
|
||||
lean_dec(x_28);
|
||||
x_62 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_62, 0, x_60);
|
||||
lean_ctor_set(x_62, 1, x_61);
|
||||
return x_62;
|
||||
x_63 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_63, 0, x_61);
|
||||
lean_ctor_set(x_63, 1, x_62);
|
||||
return x_63;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4299,7 +4301,7 @@ lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Elab_MutualD
|
|||
_start:
|
||||
{
|
||||
lean_object* x_11; lean_object* x_12;
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1), 10, 3);
|
||||
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1), 10, 3);
|
||||
lean_closure_set(x_11, 0, x_3);
|
||||
lean_closure_set(x_11, 1, x_4);
|
||||
lean_closure_set(x_11, 2, x_5);
|
||||
|
|
@ -10112,7 +10114,7 @@ lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Elab_MutualDef_0__L
|
|||
_start:
|
||||
{
|
||||
lean_object* x_10; uint8_t x_11; lean_object* x_12;
|
||||
x_10 = lean_alloc_closure((void*)(l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1), 10, 3);
|
||||
x_10 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg___lambda__1), 10, 3);
|
||||
lean_closure_set(x_10, 0, x_2);
|
||||
lean_closure_set(x_10, 1, x_3);
|
||||
lean_closure_set(x_10, 2, x_4);
|
||||
|
|
@ -17301,7 +17303,7 @@ lean_inc(x_2);
|
|||
x_12 = lean_apply_3(x_11, x_2, x_3, x_4);
|
||||
if (lean_obj_tag(x_12) == 0)
|
||||
{
|
||||
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; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25;
|
||||
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; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26;
|
||||
x_13 = lean_ctor_get(x_12, 0);
|
||||
lean_inc(x_13);
|
||||
x_14 = lean_ctor_get(x_12, 1);
|
||||
|
|
@ -17318,40 +17320,42 @@ x_19 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(x_17);
|
|||
lean_dec(x_17);
|
||||
x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabMutualDef___lambda__1), 9, 1);
|
||||
lean_closure_set(x_20, 0, x_13);
|
||||
x_21 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2);
|
||||
lean_closure_set(x_21, 0, x_19);
|
||||
lean_closure_set(x_21, 1, x_20);
|
||||
x_22 = 1;
|
||||
x_23 = lean_box(x_22);
|
||||
x_24 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_24, 0, x_21);
|
||||
lean_closure_set(x_24, 1, x_23);
|
||||
x_25 = l_Lean_Elab_Command_liftTermElabM___rarg(x_15, x_24, x_2, x_3, x_18);
|
||||
x_21 = 1;
|
||||
x_22 = lean_box(x_21);
|
||||
x_23 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg___boxed), 10, 3);
|
||||
lean_closure_set(x_23, 0, x_19);
|
||||
lean_closure_set(x_23, 1, x_20);
|
||||
lean_closure_set(x_23, 2, x_22);
|
||||
x_24 = lean_box(x_21);
|
||||
x_25 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withUnboundImplicitLocal___rarg___boxed), 9, 2);
|
||||
lean_closure_set(x_25, 0, x_23);
|
||||
lean_closure_set(x_25, 1, x_24);
|
||||
x_26 = l_Lean_Elab_Command_liftTermElabM___rarg(x_15, x_25, x_2, x_3, x_18);
|
||||
lean_dec(x_3);
|
||||
return x_25;
|
||||
return x_26;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_26;
|
||||
uint8_t x_27;
|
||||
lean_dec(x_3);
|
||||
lean_dec(x_2);
|
||||
x_26 = !lean_is_exclusive(x_12);
|
||||
if (x_26 == 0)
|
||||
x_27 = !lean_is_exclusive(x_12);
|
||||
if (x_27 == 0)
|
||||
{
|
||||
return x_12;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_27; lean_object* x_28; lean_object* x_29;
|
||||
x_27 = lean_ctor_get(x_12, 0);
|
||||
x_28 = lean_ctor_get(x_12, 1);
|
||||
lean_object* x_28; lean_object* x_29; lean_object* x_30;
|
||||
x_28 = lean_ctor_get(x_12, 0);
|
||||
x_29 = lean_ctor_get(x_12, 1);
|
||||
lean_inc(x_29);
|
||||
lean_inc(x_28);
|
||||
lean_inc(x_27);
|
||||
lean_dec(x_12);
|
||||
x_29 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_29, 0, x_27);
|
||||
lean_ctor_set(x_29, 1, x_28);
|
||||
return x_29;
|
||||
x_30 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_30, 0, x_28);
|
||||
lean_ctor_set(x_30, 1, x_29);
|
||||
return x_30;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
156
stage0/stdlib/Lean/Elab/PreDefinition/Main.c
generated
156
stage0/stdlib/Lean/Elab/PreDefinition/Main.c
generated
|
|
@ -16,11 +16,8 @@ extern "C" {
|
|||
lean_object* l_List_reverse___rarg(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__1(lean_object*, lean_object*);
|
||||
size_t l_USize_add(size_t, size_t);
|
||||
lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_stringToMessageData(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Std_HashMapImp_moveEntries___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__14(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
|
||||
lean_object* l_Std_AssocList_find_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__8___boxed(lean_object*, lean_object*);
|
||||
|
|
@ -43,31 +40,29 @@ lean_object* lean_st_ref_get(lean_object*, lean_object*);
|
|||
lean_object* l_Lean_Elab_addAndCompileUnsafeRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___lambda__1___boxed(lean_object*, lean_object*);
|
||||
uint8_t lean_name_eq(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1;
|
||||
extern lean_object* l_Lean_Meta_withoutPostponingUniverseConstraintsImp___rarg___closed__3;
|
||||
lean_object* lean_array_get_size(lean_object*);
|
||||
lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_MessageData_ofList(lean_object*);
|
||||
lean_object* l_List_map___at_Lean_Elab_addPreDefinitions___spec__3(lean_object*);
|
||||
lean_object* l_ReaderT_bind___at_Lean_Meta_instMonadLCtxMetaM___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___lambda__1(lean_object*, lean_object*);
|
||||
lean_object* l_Std_HashMapImp_find_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__7(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1;
|
||||
lean_object* l_Std_mkHashMap___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__23(lean_object*);
|
||||
extern lean_object* l___private_Lean_Meta_WHNF_0__Lean_Meta_reduceRec___rarg___lambda__2___closed__1;
|
||||
lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__2(lean_object*);
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__20(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_USize_decLt(size_t, size_t);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedMVarsAtPreDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2;
|
||||
lean_object* lean_nat_add(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_addAndCompileUnsafe(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__3(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive_match__1(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_FoldConstsImpl_fold_visit___rarg(lean_object*, size_t, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef_match__1(lean_object*);
|
||||
|
|
@ -79,7 +74,6 @@ lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8
|
|||
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_addPreDefinitions___spec__6(size_t, size_t, lean_object*);
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_push___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__10(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2;
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Std_HashMapImp_find_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__7___boxed(lean_object*, lean_object*);
|
||||
|
|
@ -92,6 +86,7 @@ lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8
|
|||
uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__5(lean_object*, size_t, size_t);
|
||||
lean_object* lean_array_get(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Std_mkHashMapImp___rarg(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
size_t l_Lean_Name_hash(lean_object*);
|
||||
|
|
@ -107,6 +102,7 @@ lean_object* lean_array_to_list(lean_object*, lean_object*);
|
|||
lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__2;
|
||||
lean_object* l_List_map___at_Lean_Elab_addPreDefinitions___spec__7(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_collectMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
size_t lean_usize_modn(size_t, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__4(lean_object*, size_t, size_t, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -127,7 +123,6 @@ uint8_t l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(lea
|
|||
lean_object* l_List_redLength___rarg(lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef_match__1___rarg(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(lean_object*);
|
||||
lean_object* l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__26(lean_object*, size_t, size_t, lean_object*);
|
||||
extern lean_object* l_Array_foldlMUnsafe_fold___at_Lean_withNestedTraces___spec__5___closed__1;
|
||||
|
|
@ -137,6 +132,7 @@ uint8_t lean_nat_dec_le(lean_object*, lean_object*);
|
|||
lean_object* l_Std_AssocList_foldlM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__15(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__1___closed__2;
|
||||
lean_object* lean_panic_fn(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__1___closed__1;
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC_add___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__21(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_setMCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_liftMkBindingM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -144,6 +140,7 @@ lean_object* lean_nat_mul(lean_object*, lean_object*);
|
|||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_updateLowLinkOf___rarg___lambda__1(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9___boxed__const__1;
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_collectMVarsAtPreDef___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2;
|
||||
lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__26___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_DefView___hyg_1056____closed__2;
|
||||
lean_object* l_Std_AssocList_contains___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__12___boxed(lean_object*, lean_object*);
|
||||
|
|
@ -151,6 +148,7 @@ lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*);
|
|||
extern lean_object* l_Lean_Meta_withoutPostponingUniverseConstraintsImp___rarg___closed__1;
|
||||
extern lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1___closed__1;
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__1___closed__4;
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__3(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_mk_array(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -159,18 +157,16 @@ uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__4(lean_o
|
|||
extern lean_object* l_Lean_Expr_FoldConstsImpl_initCache;
|
||||
lean_object* l_Lean_Elab_WFRecursion___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_indentD(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1;
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9___lambda__1(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_FindImpl_findM_x3f_visit(lean_object*, size_t, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_CollectMVars_instInhabitedState___closed__1;
|
||||
extern lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_getDataOf___rarg___closed__1;
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__20___boxed(lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2;
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__1___closed__2;
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_Meta_CheckAssignment_checkFVar___closed__1;
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__3(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__3___closed__1;
|
||||
extern lean_object* l_Lean_Meta_CheckAssignment_checkFVar___closed__2;
|
||||
lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__19(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -178,81 +174,17 @@ lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*);
|
|||
lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___boxed(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__8___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_mkConst(lean_object*, lean_object*);
|
||||
lean_object* l_Std_AssocList_find_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__8(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_updateLowLinkOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__17(lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Array_findSomeM_x3f___rarg___closed__1;
|
||||
lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_addPreDefinitions___spec__1___closed__1;
|
||||
lean_object* l_Lean_Elab_throwAbort___at_Lean_Elab_Term_ensureNoUnassignedMVars___spec__2___rarg(lean_object*);
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1;
|
||||
uint8_t lean_nat_dec_lt(lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_addPreDefinitions___spec__6___boxed(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg(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:
|
||||
{
|
||||
lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13;
|
||||
x_10 = lean_alloc_closure((void*)(l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_elabLetDeclAux___spec__2___rarg___lambda__1), 10, 3);
|
||||
lean_closure_set(x_10, 0, x_2);
|
||||
lean_closure_set(x_10, 1, x_3);
|
||||
lean_closure_set(x_10, 2, x_4);
|
||||
x_11 = lean_box(0);
|
||||
x_12 = 0;
|
||||
x_13 = l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(x_12, x_11, x_1, x_10, x_5, x_6, x_7, x_8, x_9);
|
||||
if (lean_obj_tag(x_13) == 0)
|
||||
{
|
||||
uint8_t x_14;
|
||||
x_14 = !lean_is_exclusive(x_13);
|
||||
if (x_14 == 0)
|
||||
{
|
||||
return x_13;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_15; lean_object* x_16; lean_object* x_17;
|
||||
x_15 = lean_ctor_get(x_13, 0);
|
||||
x_16 = lean_ctor_get(x_13, 1);
|
||||
lean_inc(x_16);
|
||||
lean_inc(x_15);
|
||||
lean_dec(x_13);
|
||||
x_17 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_17, 0, x_15);
|
||||
lean_ctor_set(x_17, 1, x_16);
|
||||
return x_17;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_18;
|
||||
x_18 = !lean_is_exclusive(x_13);
|
||||
if (x_18 == 0)
|
||||
{
|
||||
return x_13;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_19; lean_object* x_20; lean_object* x_21;
|
||||
x_19 = lean_ctor_get(x_13, 0);
|
||||
x_20 = lean_ctor_get(x_13, 1);
|
||||
lean_inc(x_20);
|
||||
lean_inc(x_19);
|
||||
lean_dec(x_13);
|
||||
x_21 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_21, 0, x_19);
|
||||
lean_ctor_set(x_21, 1, x_20);
|
||||
return x_21;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2;
|
||||
x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg), 9, 0);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1() {
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -260,16 +192,16 @@ x_1 = lean_mk_string("inhabitant for ");
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2() {
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1; lean_object* x_2;
|
||||
x_1 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1;
|
||||
x_1 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1;
|
||||
x_2 = l_Lean_stringToMessageData(x_1);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1(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, lean_object* x_10, lean_object* x_11, lean_object* x_12) {
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1(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, lean_object* x_10, lean_object* x_11, lean_object* x_12) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_13; lean_object* x_14;
|
||||
|
|
@ -356,7 +288,7 @@ lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean
|
|||
lean_inc(x_13);
|
||||
x_25 = lean_alloc_ctor(4, 1, 0);
|
||||
lean_ctor_set(x_25, 0, x_13);
|
||||
x_26 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2;
|
||||
x_26 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2;
|
||||
x_27 = lean_alloc_ctor(10, 2, 0);
|
||||
lean_ctor_set(x_27, 0, x_26);
|
||||
lean_ctor_set(x_27, 1, x_25);
|
||||
|
|
@ -420,7 +352,7 @@ return x_53;
|
|||
}
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1() {
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -428,16 +360,16 @@ x_1 = lean_mk_string("processing ");
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2() {
|
||||
static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1; lean_object* x_2;
|
||||
x_1 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1;
|
||||
x_1 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1;
|
||||
x_2 = l_Lean_stringToMessageData(x_1);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2(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* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2(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) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_9; uint8_t x_25; lean_object* x_26; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40;
|
||||
|
|
@ -486,11 +418,11 @@ x_10 = lean_ctor_get(x_1, 3);
|
|||
lean_inc(x_10);
|
||||
x_11 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_DefView___hyg_1056____closed__2;
|
||||
lean_inc(x_10);
|
||||
x_12 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___boxed), 12, 3);
|
||||
x_12 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___boxed), 12, 3);
|
||||
lean_closure_set(x_12, 0, x_1);
|
||||
lean_closure_set(x_12, 1, x_10);
|
||||
lean_closure_set(x_12, 2, x_11);
|
||||
x_13 = l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg(x_10, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_9);
|
||||
x_13 = l_Lean_Meta_forallTelescope___at___private_Lean_Elab_Term_0__Lean_Elab_Term_tryPureCoe_x3f___spec__3___rarg(x_10, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_9);
|
||||
if (lean_obj_tag(x_13) == 0)
|
||||
{
|
||||
uint8_t x_14;
|
||||
|
|
@ -554,7 +486,7 @@ x_27 = lean_ctor_get(x_1, 2);
|
|||
lean_inc(x_27);
|
||||
x_28 = lean_alloc_ctor(4, 1, 0);
|
||||
lean_ctor_set(x_28, 0, x_27);
|
||||
x_29 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2;
|
||||
x_29 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2;
|
||||
x_30 = lean_alloc_ctor(10, 2, 0);
|
||||
lean_ctor_set(x_30, 0, x_29);
|
||||
lean_ctor_set(x_30, 1, x_28);
|
||||
|
|
@ -573,7 +505,7 @@ goto block_24;
|
|||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t 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, lean_object* x_15, lean_object* x_16) {
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__3(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t 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, lean_object* x_15, lean_object* x_16) {
|
||||
_start:
|
||||
{
|
||||
if (lean_obj_tag(x_9) == 0)
|
||||
|
|
@ -604,12 +536,12 @@ lean_inc(x_21);
|
|||
lean_dec(x_9);
|
||||
x_22 = 1;
|
||||
x_23 = x_2 + x_22;
|
||||
x_24 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(x_3, x_4, x_5, x_6, x_1, x_7, x_8, x_23, x_21, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
x_24 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(x_3, x_4, x_5, x_6, x_1, x_7, x_8, x_23, x_21, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
return x_24;
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, size_t x_7, size_t 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, lean_object* x_15, lean_object* x_16) {
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, size_t x_7, size_t 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, lean_object* x_15, lean_object* x_16) {
|
||||
_start:
|
||||
{
|
||||
uint8_t x_17;
|
||||
|
|
@ -638,11 +570,11 @@ lean_dec(x_9);
|
|||
x_21 = lean_array_uget(x_6, x_8);
|
||||
x_22 = lean_ctor_get(x_5, 1);
|
||||
lean_inc(x_22);
|
||||
x_23 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2), 8, 1);
|
||||
x_23 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2), 8, 1);
|
||||
lean_closure_set(x_23, 0, x_21);
|
||||
x_24 = lean_box_usize(x_8);
|
||||
x_25 = lean_box_usize(x_7);
|
||||
x_26 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___boxed), 16, 8);
|
||||
x_26 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__3___boxed), 16, 8);
|
||||
lean_closure_set(x_26, 0, x_5);
|
||||
lean_closure_set(x_26, 1, x_24);
|
||||
lean_closure_set(x_26, 2, x_1);
|
||||
|
|
@ -677,7 +609,7 @@ lean_inc(x_4);
|
|||
lean_inc(x_3);
|
||||
lean_inc(x_2);
|
||||
lean_inc(x_1);
|
||||
x_18 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(x_12, x_13, x_14, x_15, x_16, x_1, x_10, x_11, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8);
|
||||
x_18 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(x_12, x_13, x_14, x_15, x_16, x_1, x_10, x_11, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8);
|
||||
if (lean_obj_tag(x_18) == 0)
|
||||
{
|
||||
lean_object* x_19; lean_object* x_20;
|
||||
|
|
@ -721,16 +653,16 @@ return x_24;
|
|||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__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, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) {
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__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, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_13;
|
||||
x_13 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12);
|
||||
x_13 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12);
|
||||
lean_dec(x_7);
|
||||
return x_13;
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__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, 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, lean_object* x_15, lean_object* x_16) {
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__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, 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, lean_object* x_15, lean_object* x_16) {
|
||||
_start:
|
||||
{
|
||||
size_t x_17; size_t x_18; lean_object* x_19;
|
||||
|
|
@ -738,11 +670,11 @@ x_17 = lean_unbox_usize(x_2);
|
|||
lean_dec(x_2);
|
||||
x_18 = lean_unbox_usize(x_8);
|
||||
lean_dec(x_8);
|
||||
x_19 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3(x_1, x_17, x_3, x_4, x_5, x_6, x_7, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
x_19 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__3(x_1, x_17, x_3, x_4, x_5, x_6, x_7, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
return x_19;
|
||||
}
|
||||
}
|
||||
lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___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, lean_object* x_10, 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* l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___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, 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, lean_object* x_15, lean_object* x_16) {
|
||||
_start:
|
||||
{
|
||||
size_t x_17; size_t x_18; lean_object* x_19;
|
||||
|
|
@ -750,7 +682,7 @@ x_17 = lean_unbox_usize(x_7);
|
|||
lean_dec(x_7);
|
||||
x_18 = lean_unbox_usize(x_8);
|
||||
lean_dec(x_8);
|
||||
x_19 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_17, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
x_19 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_17, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16);
|
||||
return x_19;
|
||||
}
|
||||
}
|
||||
|
|
@ -4484,14 +4416,14 @@ lean_dec_ref(res);
|
|||
res = initialize_Lean_Elab_PreDefinition_WF(lean_io_mk_world());
|
||||
if (lean_io_result_is_error(res)) return res;
|
||||
lean_dec_ref(res);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__1);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___closed__2);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__1);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__1___closed__2);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__1);
|
||||
l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2 = _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2();
|
||||
lean_mark_persistent(l_Array_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___lambda__2___closed__2);
|
||||
l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9___boxed__const__1 = _init_l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9___boxed__const__1();
|
||||
lean_mark_persistent(l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9___boxed__const__1);
|
||||
l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__1 = _init_l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__1();
|
||||
|
|
|
|||
1687
stage0/stdlib/Lean/Elab/Structure.c
generated
1687
stage0/stdlib/Lean/Elab/Structure.c
generated
File diff suppressed because it is too large
Load diff
1152
stage0/stdlib/Lean/Elab/Syntax.c
generated
1152
stage0/stdlib/Lean/Elab/Syntax.c
generated
File diff suppressed because it is too large
Load diff
5405
stage0/stdlib/Lean/Elab/Term.c
generated
5405
stage0/stdlib/Lean/Elab/Term.c
generated
File diff suppressed because it is too large
Load diff
135
stage0/stdlib/Lean/Expr.c
generated
135
stage0/stdlib/Lean/Expr.c
generated
|
|
@ -66,6 +66,7 @@ lean_object* lean_name_mk_string(lean_object*, lean_object*);
|
|||
uint8_t l_USize_decEq(size_t, size_t);
|
||||
lean_object* lean_array_uget(lean_object*, size_t);
|
||||
lean_object* l_Lean_Expr_replaceFVarId___boxed(lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_Lean_Expr_isProp(lean_object*);
|
||||
lean_object* l_Lean_Expr_instHashableExpr___closed__1;
|
||||
lean_object* lean_expr_update_mdata(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_bindingDomain_x21(lean_object*);
|
||||
|
|
@ -585,6 +586,7 @@ uint8_t l_Lean_Expr_Data_hasLevelParam(uint64_t);
|
|||
lean_object* l_Lean_Expr_dbgToString___boxed(lean_object*);
|
||||
lean_object* l_Lean_Expr_isForall___boxed(lean_object*);
|
||||
lean_object* l_Lean_Expr_isMData___boxed(lean_object*);
|
||||
lean_object* l_Lean_Expr_isProp___boxed(lean_object*);
|
||||
lean_object* l_Lean_Expr_bvarIdx_x21___boxed(lean_object*);
|
||||
lean_object* l_Lean_Expr_updateLambdaE_x21_match__1___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_hasLooseBVarInExplicitDomain_match__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -632,6 +634,7 @@ uint8_t l_Lean_Expr_hasLooseBVars(lean_object*);
|
|||
lean_object* l_Lean_Expr_updateProj___boxed(lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_Lean_Expr_isStringLit(lean_object*);
|
||||
lean_object* l_Lean_mkFreshMVarId(lean_object*);
|
||||
lean_object* l_Lean_Expr_isProp_match__1(lean_object*);
|
||||
lean_object* l_Lean_ExprStructEq_hash_match__1(lean_object*);
|
||||
size_t lean_expr_hash(lean_object*);
|
||||
lean_object* lean_mk_array(lean_object*, lean_object*);
|
||||
|
|
@ -666,6 +669,7 @@ lean_object* l_Lean_Expr_instantiateLevelParamsCore_visit___at_Lean_Expr_instant
|
|||
lean_object* l___private_Lean_Expr_0__Lean_Expr_getParamSubst_match__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Expr_mkData___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_ExprStructEq_instToStringExprStructEq(lean_object*);
|
||||
lean_object* l_Lean_Expr_isProp_match__1___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_BinderInfo_isExplicit___boxed(lean_object*);
|
||||
uint64_t l_Lean_Expr_mkData___closed__1;
|
||||
lean_object* l_List_foldr___at_Lean_mkConst___spec__2___boxed(lean_object*, lean_object*);
|
||||
|
|
@ -6307,6 +6311,91 @@ x_3 = lean_box(x_2);
|
|||
return x_3;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Expr_isProp_match__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
|
||||
_start:
|
||||
{
|
||||
if (lean_obj_tag(x_1) == 3)
|
||||
{
|
||||
lean_object* x_4;
|
||||
x_4 = lean_ctor_get(x_1, 0);
|
||||
lean_inc(x_4);
|
||||
if (lean_obj_tag(x_4) == 0)
|
||||
{
|
||||
uint64_t x_5; uint64_t x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9;
|
||||
lean_dec(x_3);
|
||||
x_5 = lean_ctor_get_uint64(x_1, sizeof(void*)*1);
|
||||
lean_dec(x_1);
|
||||
x_6 = lean_ctor_get_uint64(x_4, 0);
|
||||
lean_dec(x_4);
|
||||
x_7 = lean_box_uint64(x_6);
|
||||
x_8 = lean_box_uint64(x_5);
|
||||
x_9 = lean_apply_2(x_2, x_7, x_8);
|
||||
return x_9;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_10;
|
||||
lean_dec(x_4);
|
||||
lean_dec(x_2);
|
||||
x_10 = lean_apply_1(x_3, x_1);
|
||||
return x_10;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_11;
|
||||
lean_dec(x_2);
|
||||
x_11 = lean_apply_1(x_3, x_1);
|
||||
return x_11;
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Expr_isProp_match__1(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2;
|
||||
x_2 = lean_alloc_closure((void*)(l_Lean_Expr_isProp_match__1___rarg), 3, 0);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
uint8_t l_Lean_Expr_isProp(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
if (lean_obj_tag(x_1) == 3)
|
||||
{
|
||||
lean_object* x_2;
|
||||
x_2 = lean_ctor_get(x_1, 0);
|
||||
if (lean_obj_tag(x_2) == 0)
|
||||
{
|
||||
uint8_t x_3;
|
||||
x_3 = 1;
|
||||
return x_3;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_4;
|
||||
x_4 = 0;
|
||||
return x_4;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_5;
|
||||
x_5 = 0;
|
||||
return x_5;
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Expr_isProp___boxed(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
uint8_t x_2; lean_object* x_3;
|
||||
x_2 = l_Lean_Expr_isProp(x_1);
|
||||
lean_dec(x_1);
|
||||
x_3 = lean_box(x_2);
|
||||
return x_3;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Expr_isBVar_match__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
|
||||
_start:
|
||||
{
|
||||
|
|
@ -7780,7 +7869,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_getRevArg_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(497u);
|
||||
x_3 = lean_unsigned_to_nat(501u);
|
||||
x_4 = lean_unsigned_to_nat(22u);
|
||||
x_5 = l_List_get_x21___rarg___closed__3;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8163,7 +8252,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_appFn_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(517u);
|
||||
x_3 = lean_unsigned_to_nat(521u);
|
||||
x_4 = lean_unsigned_to_nat(17u);
|
||||
x_5 = l_Lean_Expr_appFn_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8247,7 +8336,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_appArg_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(521u);
|
||||
x_3 = lean_unsigned_to_nat(525u);
|
||||
x_4 = lean_unsigned_to_nat(17u);
|
||||
x_5 = l_Lean_Expr_appFn_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8665,7 +8754,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_constName_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(540u);
|
||||
x_3 = lean_unsigned_to_nat(544u);
|
||||
x_4 = lean_unsigned_to_nat(19u);
|
||||
x_5 = l_Lean_Expr_constName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8812,7 +8901,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_constLevels_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(548u);
|
||||
x_3 = lean_unsigned_to_nat(552u);
|
||||
x_4 = lean_unsigned_to_nat(20u);
|
||||
x_5 = l_Lean_Expr_constName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8902,7 +8991,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_bvarIdx_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(552u);
|
||||
x_3 = lean_unsigned_to_nat(556u);
|
||||
x_4 = lean_unsigned_to_nat(18u);
|
||||
x_5 = l_Lean_Expr_bvarIdx_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -8992,7 +9081,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_fvarId_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(556u);
|
||||
x_3 = lean_unsigned_to_nat(560u);
|
||||
x_4 = lean_unsigned_to_nat(16u);
|
||||
x_5 = l_Lean_Expr_fvarId_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9082,7 +9171,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_mvarId_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(560u);
|
||||
x_3 = lean_unsigned_to_nat(564u);
|
||||
x_4 = lean_unsigned_to_nat(16u);
|
||||
x_5 = l_Lean_Expr_mvarId_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9197,7 +9286,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_bindingName_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(565u);
|
||||
x_3 = lean_unsigned_to_nat(569u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_bindingName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9313,7 +9402,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_bindingDomain_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(570u);
|
||||
x_3 = lean_unsigned_to_nat(574u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_bindingName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9429,7 +9518,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_bindingBody_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(575u);
|
||||
x_3 = lean_unsigned_to_nat(579u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_bindingName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9545,7 +9634,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_bindingInfo_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(580u);
|
||||
x_3 = lean_unsigned_to_nat(584u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_bindingName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -9654,7 +9743,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_letName_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(584u);
|
||||
x_3 = lean_unsigned_to_nat(588u);
|
||||
x_4 = lean_unsigned_to_nat(22u);
|
||||
x_5 = l_Lean_Expr_letName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12060,7 +12149,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateApp_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(862u);
|
||||
x_3 = lean_unsigned_to_nat(866u);
|
||||
x_4 = lean_unsigned_to_nat(20u);
|
||||
x_5 = l_Lean_Expr_appFn_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12166,7 +12255,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateConst_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(871u);
|
||||
x_3 = lean_unsigned_to_nat(875u);
|
||||
x_4 = lean_unsigned_to_nat(20u);
|
||||
x_5 = l_Lean_Expr_constName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12277,7 +12366,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateSort_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(880u);
|
||||
x_3 = lean_unsigned_to_nat(884u);
|
||||
x_4 = lean_unsigned_to_nat(16u);
|
||||
x_5 = l_Lean_Expr_updateSort_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12465,7 +12554,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateMData_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(897u);
|
||||
x_3 = lean_unsigned_to_nat(901u);
|
||||
x_4 = lean_unsigned_to_nat(19u);
|
||||
x_5 = l_Lean_Expr_updateMData_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12572,7 +12661,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateProj_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(902u);
|
||||
x_3 = lean_unsigned_to_nat(906u);
|
||||
x_4 = lean_unsigned_to_nat(20u);
|
||||
x_5 = l_Lean_Expr_updateProj_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12692,7 +12781,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateForall_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(911u);
|
||||
x_3 = lean_unsigned_to_nat(915u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_updateForall_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12805,7 +12894,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateForallE_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(916u);
|
||||
x_3 = lean_unsigned_to_nat(920u);
|
||||
x_4 = lean_unsigned_to_nat(23u);
|
||||
x_5 = l_Lean_Expr_updateForall_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -12929,7 +13018,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateLambda_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(925u);
|
||||
x_3 = lean_unsigned_to_nat(929u);
|
||||
x_4 = lean_unsigned_to_nat(19u);
|
||||
x_5 = l_Lean_Expr_updateLambda_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -13042,7 +13131,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateLambdaE_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(930u);
|
||||
x_3 = lean_unsigned_to_nat(934u);
|
||||
x_4 = lean_unsigned_to_nat(19u);
|
||||
x_5 = l_Lean_Expr_updateLambda_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
@ -13158,7 +13247,7 @@ _start:
|
|||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6;
|
||||
x_1 = l___private_Lean_Expr_0__Lean_Expr_mkDataCore___closed__1;
|
||||
x_2 = l_Lean_Expr_updateLet_x21___closed__1;
|
||||
x_3 = lean_unsigned_to_nat(939u);
|
||||
x_3 = lean_unsigned_to_nat(943u);
|
||||
x_4 = lean_unsigned_to_nat(22u);
|
||||
x_5 = l_Lean_Expr_letName_x21___closed__2;
|
||||
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
|
||||
|
|
|
|||
313
stage0/stdlib/Lean/Meta/ExprDefEq.c
generated
313
stage0/stdlib/Lean/Meta/ExprDefEq.c
generated
|
|
@ -314,6 +314,7 @@ lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isSynthetic_match__2(l
|
|||
lean_object* l_Lean_Expr_fvarId_x21(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Std_mkHashMapImp___rarg(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProofIrrel_match__1(lean_object*);
|
||||
lean_object* l_Lean_Meta_throwIsDefEqStuck___rarg(lean_object*);
|
||||
|
|
@ -416,7 +417,6 @@ uint8_t l_Lean_Expr_Data_binderInfo(uint64_t);
|
|||
lean_object* l_Lean_Meta_isDefEqBindingDomain_loop_match__1(lean_object*);
|
||||
lean_object* l_Lean_ConstantInfo_hints(lean_object*);
|
||||
lean_object* l_Lean_Meta_commitWhen___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1;
|
||||
lean_object* l_Array_anyMUnsafe_any___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t);
|
||||
size_t lean_usize_of_nat(lean_object*);
|
||||
uint8_t l_Std_PersistentArray_anyM___at_Lean_Meta_CheckAssignment_check___spec__17(lean_object*, lean_object*);
|
||||
|
|
@ -441,6 +441,7 @@ size_t l_USize_land(size_t, size_t);
|
|||
lean_object* l_Lean_LocalDecl_fvarId(lean_object*);
|
||||
lean_object* l_Lean_Meta_CheckAssignment_checkMVar___closed__1;
|
||||
lean_object* l_Lean_registerInternalExceptionId(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l_Array_contains___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_check___spec__61(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*);
|
||||
lean_object* l_Lean_Meta_isDefEqNat_match__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -455,6 +456,7 @@ lean_object* l_Lean_LocalDecl_type(lean_object*);
|
|||
lean_object* l_Lean_LocalDecl_value_x3f(lean_object*);
|
||||
lean_object* l_Lean_Meta_CheckAssignment_checkFVar___closed__15;
|
||||
lean_object* lean_local_ctx_mk_local_decl(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1;
|
||||
lean_object* l_Lean_Meta_CheckAssignment_checkFVar___closed__3;
|
||||
extern lean_object* l_Lean_Expr_instInhabitedExpr;
|
||||
lean_object* l_Array_contains___at_Lean_Meta_CheckAssignment_check___spec__2___boxed(lean_object*, lean_object*);
|
||||
|
|
@ -567,8 +569,8 @@ lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_de
|
|||
lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlMAux___at_Lean_Meta_CheckAssignment_check___spec__53(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isAssigned_match__1(lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7282_(lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273_(lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271_(lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7280_(lean_object*);
|
||||
lean_object* l_Std_HashMapImp_insert___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_cache___spec__1(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_inferType___at_Lean_Meta_CheckAssignment_check___spec__68___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_instAddMessageContext___rarg(lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -48438,186 +48440,255 @@ lean_dec(x_1);
|
|||
return x_10;
|
||||
}
|
||||
}
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq(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) {
|
||||
lean_object* l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; uint8_t x_17;
|
||||
x_10 = lean_st_ref_get(x_8, x_9);
|
||||
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_object* x_7; uint8_t x_8;
|
||||
x_7 = lean_st_ref_get(x_5, x_6);
|
||||
x_8 = !lean_is_exclusive(x_7);
|
||||
if (x_8 == 0)
|
||||
{
|
||||
lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12;
|
||||
x_9 = lean_ctor_get(x_7, 0);
|
||||
x_10 = lean_ctor_get(x_9, 0);
|
||||
lean_inc(x_10);
|
||||
lean_dec(x_9);
|
||||
x_11 = l_Lean_Environment_isProjectionFn(x_10, x_1);
|
||||
lean_dec(x_10);
|
||||
x_13 = lean_ctor_get(x_11, 0);
|
||||
lean_inc(x_13);
|
||||
lean_dec(x_11);
|
||||
x_14 = l_Lean_ConstantInfo_name(x_1);
|
||||
lean_inc(x_14);
|
||||
x_15 = l_Lean_Environment_isProjectionFn(x_13, x_14);
|
||||
x_16 = l_Lean_ConstantInfo_name(x_2);
|
||||
lean_inc(x_16);
|
||||
x_17 = l_Lean_Environment_isProjectionFn(x_13, x_16);
|
||||
lean_dec(x_13);
|
||||
if (x_17 == 0)
|
||||
{
|
||||
lean_dec(x_14);
|
||||
if (x_15 == 0)
|
||||
{
|
||||
lean_object* x_18;
|
||||
lean_dec(x_16);
|
||||
x_18 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldReducibeDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_12);
|
||||
return x_18;
|
||||
x_12 = lean_box(x_11);
|
||||
lean_ctor_set(x_7, 0, x_12);
|
||||
return x_7;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_19;
|
||||
lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18;
|
||||
x_13 = lean_ctor_get(x_7, 0);
|
||||
x_14 = lean_ctor_get(x_7, 1);
|
||||
lean_inc(x_14);
|
||||
lean_inc(x_13);
|
||||
lean_dec(x_7);
|
||||
x_15 = lean_ctor_get(x_13, 0);
|
||||
lean_inc(x_15);
|
||||
lean_dec(x_13);
|
||||
x_16 = l_Lean_Environment_isProjectionFn(x_15, x_1);
|
||||
lean_dec(x_15);
|
||||
x_17 = lean_box(x_16);
|
||||
x_18 = lean_alloc_ctor(0, 2, 0);
|
||||
lean_ctor_set(x_18, 0, x_17);
|
||||
lean_ctor_set(x_18, 1, x_14);
|
||||
return x_18;
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq(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:
|
||||
{
|
||||
lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17;
|
||||
x_10 = l_Lean_ConstantInfo_name(x_1);
|
||||
lean_inc(x_10);
|
||||
x_11 = l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1(x_10, x_5, x_6, x_7, x_8, x_9);
|
||||
x_12 = lean_ctor_get(x_11, 0);
|
||||
lean_inc(x_12);
|
||||
x_13 = lean_ctor_get(x_11, 1);
|
||||
lean_inc(x_13);
|
||||
lean_dec(x_11);
|
||||
x_14 = l_Lean_ConstantInfo_name(x_2);
|
||||
lean_inc(x_14);
|
||||
x_15 = l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1(x_14, x_5, x_6, x_7, x_8, x_13);
|
||||
x_16 = lean_ctor_get(x_15, 0);
|
||||
lean_inc(x_16);
|
||||
x_17 = lean_unbox(x_16);
|
||||
lean_dec(x_16);
|
||||
if (x_17 == 0)
|
||||
{
|
||||
uint8_t x_18;
|
||||
lean_dec(x_10);
|
||||
x_18 = lean_unbox(x_12);
|
||||
lean_dec(x_12);
|
||||
if (x_18 == 0)
|
||||
{
|
||||
lean_object* x_19; lean_object* x_20;
|
||||
lean_dec(x_14);
|
||||
x_19 = lean_ctor_get(x_15, 1);
|
||||
lean_inc(x_19);
|
||||
lean_dec(x_15);
|
||||
x_20 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldReducibeDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_19);
|
||||
return x_20;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_21; lean_object* x_22;
|
||||
x_21 = lean_ctor_get(x_15, 1);
|
||||
lean_inc(x_21);
|
||||
lean_dec(x_15);
|
||||
lean_inc(x_8);
|
||||
lean_inc(x_7);
|
||||
lean_inc(x_6);
|
||||
lean_inc(x_5);
|
||||
lean_inc(x_4);
|
||||
x_19 = l___private_Lean_Meta_WHNF_0__Lean_Meta_unfoldDefinitionImp_x3f(x_4, x_5, x_6, x_7, x_8, x_12);
|
||||
if (lean_obj_tag(x_19) == 0)
|
||||
x_22 = l___private_Lean_Meta_WHNF_0__Lean_Meta_unfoldDefinitionImp_x3f(x_4, x_5, x_6, x_7, x_8, x_21);
|
||||
if (lean_obj_tag(x_22) == 0)
|
||||
{
|
||||
lean_object* x_20;
|
||||
x_20 = lean_ctor_get(x_19, 0);
|
||||
lean_inc(x_20);
|
||||
if (lean_obj_tag(x_20) == 0)
|
||||
{
|
||||
lean_object* x_21; lean_object* x_22;
|
||||
lean_dec(x_16);
|
||||
x_21 = lean_ctor_get(x_19, 1);
|
||||
lean_inc(x_21);
|
||||
lean_dec(x_19);
|
||||
x_22 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_21);
|
||||
return x_22;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_23; lean_object* x_24; lean_object* x_25;
|
||||
lean_dec(x_4);
|
||||
x_23 = lean_ctor_get(x_19, 1);
|
||||
lean_object* x_23;
|
||||
x_23 = lean_ctor_get(x_22, 0);
|
||||
lean_inc(x_23);
|
||||
lean_dec(x_19);
|
||||
x_24 = lean_ctor_get(x_20, 0);
|
||||
if (lean_obj_tag(x_23) == 0)
|
||||
{
|
||||
lean_object* x_24; lean_object* x_25;
|
||||
lean_dec(x_14);
|
||||
x_24 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_24);
|
||||
lean_dec(x_20);
|
||||
x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqRight(x_16, x_3, x_24, x_5, x_6, x_7, x_8, x_23);
|
||||
lean_dec(x_22);
|
||||
x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_24);
|
||||
return x_25;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_26; lean_object* x_27; lean_object* x_28;
|
||||
lean_dec(x_4);
|
||||
x_26 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_26);
|
||||
lean_dec(x_22);
|
||||
x_27 = lean_ctor_get(x_23, 0);
|
||||
lean_inc(x_27);
|
||||
lean_dec(x_23);
|
||||
x_28 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqRight(x_14, x_3, x_27, x_5, x_6, x_7, x_8, x_26);
|
||||
return x_28;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_26;
|
||||
lean_dec(x_16);
|
||||
uint8_t x_29;
|
||||
lean_dec(x_14);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
lean_dec(x_3);
|
||||
x_26 = !lean_is_exclusive(x_19);
|
||||
if (x_26 == 0)
|
||||
x_29 = !lean_is_exclusive(x_22);
|
||||
if (x_29 == 0)
|
||||
{
|
||||
return x_19;
|
||||
return x_22;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_27; lean_object* x_28; lean_object* x_29;
|
||||
x_27 = lean_ctor_get(x_19, 0);
|
||||
x_28 = lean_ctor_get(x_19, 1);
|
||||
lean_inc(x_28);
|
||||
lean_inc(x_27);
|
||||
lean_dec(x_19);
|
||||
x_29 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_29, 0, x_27);
|
||||
lean_ctor_set(x_29, 1, x_28);
|
||||
return x_29;
|
||||
lean_object* x_30; lean_object* x_31; lean_object* x_32;
|
||||
x_30 = lean_ctor_get(x_22, 0);
|
||||
x_31 = lean_ctor_get(x_22, 1);
|
||||
lean_inc(x_31);
|
||||
lean_inc(x_30);
|
||||
lean_dec(x_22);
|
||||
x_32 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_32, 0, x_30);
|
||||
lean_ctor_set(x_32, 1, x_31);
|
||||
return x_32;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_dec(x_16);
|
||||
if (x_15 == 0)
|
||||
uint8_t x_33;
|
||||
lean_dec(x_14);
|
||||
x_33 = lean_unbox(x_12);
|
||||
lean_dec(x_12);
|
||||
if (x_33 == 0)
|
||||
{
|
||||
lean_object* x_30;
|
||||
lean_object* x_34; lean_object* x_35;
|
||||
x_34 = lean_ctor_get(x_15, 1);
|
||||
lean_inc(x_34);
|
||||
lean_dec(x_15);
|
||||
lean_inc(x_8);
|
||||
lean_inc(x_7);
|
||||
lean_inc(x_6);
|
||||
lean_inc(x_5);
|
||||
lean_inc(x_3);
|
||||
x_30 = l___private_Lean_Meta_WHNF_0__Lean_Meta_unfoldDefinitionImp_x3f(x_3, x_5, x_6, x_7, x_8, x_12);
|
||||
if (lean_obj_tag(x_30) == 0)
|
||||
x_35 = l___private_Lean_Meta_WHNF_0__Lean_Meta_unfoldDefinitionImp_x3f(x_3, x_5, x_6, x_7, x_8, x_34);
|
||||
if (lean_obj_tag(x_35) == 0)
|
||||
{
|
||||
lean_object* x_31;
|
||||
x_31 = lean_ctor_get(x_30, 0);
|
||||
lean_inc(x_31);
|
||||
if (lean_obj_tag(x_31) == 0)
|
||||
lean_object* x_36;
|
||||
x_36 = lean_ctor_get(x_35, 0);
|
||||
lean_inc(x_36);
|
||||
if (lean_obj_tag(x_36) == 0)
|
||||
{
|
||||
lean_object* x_32; lean_object* x_33;
|
||||
lean_dec(x_14);
|
||||
x_32 = lean_ctor_get(x_30, 1);
|
||||
lean_inc(x_32);
|
||||
lean_dec(x_30);
|
||||
x_33 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_32);
|
||||
return x_33;
|
||||
lean_object* x_37; lean_object* x_38;
|
||||
lean_dec(x_10);
|
||||
x_37 = lean_ctor_get(x_35, 1);
|
||||
lean_inc(x_37);
|
||||
lean_dec(x_35);
|
||||
x_38 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_37);
|
||||
return x_38;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_34; lean_object* x_35; lean_object* x_36;
|
||||
lean_object* x_39; lean_object* x_40; lean_object* x_41;
|
||||
lean_dec(x_3);
|
||||
x_34 = lean_ctor_get(x_30, 1);
|
||||
lean_inc(x_34);
|
||||
lean_dec(x_30);
|
||||
x_35 = lean_ctor_get(x_31, 0);
|
||||
lean_inc(x_35);
|
||||
lean_dec(x_31);
|
||||
x_36 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeft(x_14, x_35, x_4, x_5, x_6, x_7, x_8, x_34);
|
||||
return x_36;
|
||||
x_39 = lean_ctor_get(x_35, 1);
|
||||
lean_inc(x_39);
|
||||
lean_dec(x_35);
|
||||
x_40 = lean_ctor_get(x_36, 0);
|
||||
lean_inc(x_40);
|
||||
lean_dec(x_36);
|
||||
x_41 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeft(x_10, x_40, x_4, x_5, x_6, x_7, x_8, x_39);
|
||||
return x_41;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t x_37;
|
||||
lean_dec(x_14);
|
||||
uint8_t x_42;
|
||||
lean_dec(x_10);
|
||||
lean_dec(x_8);
|
||||
lean_dec(x_7);
|
||||
lean_dec(x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
lean_dec(x_3);
|
||||
x_37 = !lean_is_exclusive(x_30);
|
||||
if (x_37 == 0)
|
||||
x_42 = !lean_is_exclusive(x_35);
|
||||
if (x_42 == 0)
|
||||
{
|
||||
return x_30;
|
||||
return x_35;
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_38; lean_object* x_39; lean_object* x_40;
|
||||
x_38 = lean_ctor_get(x_30, 0);
|
||||
x_39 = lean_ctor_get(x_30, 1);
|
||||
lean_inc(x_39);
|
||||
lean_inc(x_38);
|
||||
lean_dec(x_30);
|
||||
x_40 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_40, 0, x_38);
|
||||
lean_ctor_set(x_40, 1, x_39);
|
||||
return x_40;
|
||||
lean_object* x_43; lean_object* x_44; lean_object* x_45;
|
||||
x_43 = lean_ctor_get(x_35, 0);
|
||||
x_44 = lean_ctor_get(x_35, 1);
|
||||
lean_inc(x_44);
|
||||
lean_inc(x_43);
|
||||
lean_dec(x_35);
|
||||
x_45 = lean_alloc_ctor(1, 2, 0);
|
||||
lean_ctor_set(x_45, 0, x_43);
|
||||
lean_ctor_set(x_45, 1, x_44);
|
||||
return x_45;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lean_object* x_41;
|
||||
lean_dec(x_14);
|
||||
x_41 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldReducibeDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_12);
|
||||
return x_41;
|
||||
lean_object* x_46; lean_object* x_47;
|
||||
lean_dec(x_10);
|
||||
x_46 = lean_ctor_get(x_15, 1);
|
||||
lean_inc(x_46);
|
||||
lean_dec(x_15);
|
||||
x_47 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldReducibeDefEq(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_46);
|
||||
return x_47;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___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) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_7;
|
||||
x_7 = l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1(x_1, x_2, x_3, x_4, x_5, x_6);
|
||||
lean_dec(x_5);
|
||||
lean_dec(x_4);
|
||||
lean_dec(x_3);
|
||||
lean_dec(x_2);
|
||||
return x_7;
|
||||
}
|
||||
}
|
||||
lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___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:
|
||||
{
|
||||
|
|
@ -60710,7 +60781,7 @@ x_10 = l_Lean_Meta_isExprDefEqAuxImpl___lambda__1(x_1, x_2, x_9, x_4, x_5, x_6,
|
|||
return x_10;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1() {
|
||||
static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -60718,12 +60789,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_isExprDefEqAuxImpl), 7, 0);
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273_(lean_object* x_1) {
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271_(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2; lean_object* x_3; lean_object* x_4; uint8_t x_5;
|
||||
x_2 = l_Lean_Meta_isExprDefEqAuxRef;
|
||||
x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1;
|
||||
x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1;
|
||||
x_4 = lean_st_ref_set(x_2, x_3, x_1);
|
||||
x_5 = !lean_is_exclusive(x_4);
|
||||
if (x_5 == 0)
|
||||
|
|
@ -60745,7 +60816,7 @@ return x_8;
|
|||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7282_(lean_object* x_1) {
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7280_(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2; lean_object* x_3;
|
||||
|
|
@ -61114,12 +61185,12 @@ l_Lean_Meta_isExprDefEqAuxImpl___lambda__2___closed__1 = _init_l_Lean_Meta_isExp
|
|||
lean_mark_persistent(l_Lean_Meta_isExprDefEqAuxImpl___lambda__2___closed__1);
|
||||
l_Lean_Meta_isExprDefEqAuxImpl___closed__1 = _init_l_Lean_Meta_isExprDefEqAuxImpl___closed__1();
|
||||
lean_mark_persistent(l_Lean_Meta_isExprDefEqAuxImpl___closed__1);
|
||||
l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1();
|
||||
lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273____closed__1);
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7273_(lean_io_mk_world());
|
||||
l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1();
|
||||
lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271____closed__1);
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7271_(lean_io_mk_world());
|
||||
if (lean_io_result_is_error(res)) return res;
|
||||
lean_dec_ref(res);
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7282_(lean_io_mk_world());
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_7280_(lean_io_mk_world());
|
||||
if (lean_io_result_is_error(res)) return res;
|
||||
lean_dec_ref(res);
|
||||
return lean_io_result_mk_ok(lean_box(0));
|
||||
|
|
|
|||
76
stage0/stdlib/Lean/Meta/Match/Match.c
generated
76
stage0/stdlib/Lean/Meta/Match/Match.c
generated
|
|
@ -73,11 +73,9 @@ extern lean_object* l_Lean_withIncRecDepth___rarg___lambda__2___closed__2;
|
|||
extern lean_object* l_Lean_Meta_setInlineAttribute___rarg___closed__2;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_updateAlts_match__1___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_LocalDecl_userName(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processNonVariable___lambda__1___closed__1;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_withAlts___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processConstructor___spec__7(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1;
|
||||
lean_object* l_Lean_Meta_isExprDefEq___at_Lean_Meta_isExprDefEqGuarded___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_kabstract___at_Lean_Meta_MatcherApp_addArg___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_mapM___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processArrayLit___spec__8___closed__2;
|
||||
|
|
@ -134,6 +132,8 @@ lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_collectArraySi
|
|||
lean_object* l_Lean_Meta_isExprDefEqAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_expandVarIntoCtor_x3f___spec__4___boxed(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_expandVarIntoCtor_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4;
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_isArrayLitTransition_match__1(lean_object*);
|
||||
uint8_t l_Lean_checkTraceOption(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Problem_toMessageData___lambda__1___closed__4;
|
||||
|
|
@ -258,7 +258,7 @@ lean_object* l_Lean_mkAppN(lean_object*, lean_object*);
|
|||
lean_object* l_List_filterMapM_loop___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processNonVariable___spec__1___closed__2;
|
||||
lean_object* l_List_map___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processValue___spec__3(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_kabstract___at_Lean_Meta_MatcherApp_addArg___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7522_(lean_object*);
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7518_(lean_object*);
|
||||
lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Match_mkMatcher___spec__3___boxed(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_mkMatcher___lambda__1___closed__8;
|
||||
|
|
@ -306,6 +306,7 @@ lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_withAltsAux___
|
|||
lean_object* l_Lean_Meta_Match_Pattern_toMessageData___closed__5;
|
||||
lean_object* l_Lean_Meta_mkForallFVars___at_Lean_Meta_Match_mkMatcher___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Problem_toMessageData___lambda__1___closed__9;
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3;
|
||||
lean_object* l_Lean_Meta_Match_Pattern_toMessageData(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Example_varsToUnderscore(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Unify_unify_match__1(lean_object*);
|
||||
|
|
@ -431,7 +432,6 @@ lean_object* l_Lean_Meta_Match_processInaccessibleAsCtor___lambda__1___boxed(lea
|
|||
lean_object* l_Lean_Meta_MatcherApp_addArg___lambda__2___closed__3;
|
||||
lean_object* l_List_foldr___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_isConstructorTransition___spec__1___boxed(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Pattern_toMessageData_match__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3;
|
||||
lean_object* l_Lean_getConstInfo___at_Lean_Meta_getParamNamesImp___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at_Lean_Meta_Match_examplesToMessageData___spec__1(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processAsPattern___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -470,6 +470,7 @@ lean_object* l_Lean_Meta_Match_Pattern_applyFVarSubst_match__1___rarg(lean_objec
|
|||
lean_object* l_Lean_Meta_MatcherApp_addArg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Problem_toMessageData___lambda__1___closed__3;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processArrayLit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2;
|
||||
lean_object* l_Lean_Meta_Match_Pattern_applyFVarSubst_match__1(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processAsPattern___closed__1;
|
||||
lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -505,7 +506,6 @@ uint8_t l_List_elem___at_Lean_Occurrences_contains___spec__1(lean_object*, lean_
|
|||
lean_object* l_Array_indexOfAux___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_MessageData_arrayExpr_toMessageData___closed__2;
|
||||
size_t lean_usize_of_nat(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5;
|
||||
lean_object* l_Lean_replaceFVarIdAtLocalDecl(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_mkSimpleThunkType(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processVariable(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -589,7 +589,6 @@ lean_object* l_List_toStringAux___at_Lean_Meta_Match_mkMatcher___spec__12(uint8_
|
|||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processValue___closed__1;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_traceState___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_expandVarIntoCtor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2;
|
||||
uint8_t lean_expr_eqv(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_Alt_toMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
uint8_t l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_isValueTransition(lean_object*);
|
||||
|
|
@ -663,6 +662,7 @@ lean_object* l_Lean_Meta_commitWhen___at_Lean_Meta_Match_Unify_unify___spec__2(l
|
|||
lean_object* l_List_filterAux___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processConstructor___spec__6(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Array_mapIdxM_map___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processValue___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_502____closed__4;
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5;
|
||||
extern lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8;
|
||||
lean_object* l_Array_indexOfAux___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___spec__1(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_List_map___at_Lean_Meta_Match_Pattern_toMessageData___spec__2(lean_object*);
|
||||
|
|
@ -704,7 +704,6 @@ lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processArrayLi
|
|||
lean_object* l_Lean_Meta_Match_Pattern_instInhabitedPattern___closed__1;
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processAsPattern(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_MatcherApp_addArg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6;
|
||||
lean_object* l_List_foldr___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_hasArrayLitPattern___spec__1___boxed(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processArrayLit_match__1(lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processNonVariable_match__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
|
|
@ -824,6 +823,7 @@ lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_process___boxe
|
|||
lean_object* l_Lean_Meta_Match_isCurrVarInductive_match__1___rarg(lean_object*, lean_object*, lean_object*);
|
||||
uint8_t lean_level_eq(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_isCurrVarInductive___closed__1;
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6;
|
||||
lean_object* l_Lean_Meta_Match_Problem_toMessageData___lambda__1___closed__6;
|
||||
lean_object* l_Lean_Meta_Match_Alt_checkAndReplaceFVarId_match__1___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_isVariableTransition___boxed(lean_object*);
|
||||
|
|
@ -855,7 +855,7 @@ lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Meta_Match_M
|
|||
lean_object* l_Lean_Meta_Match_Alt_checkAndReplaceFVarId___closed__5;
|
||||
lean_object* l_Lean_Meta_Match_Alt_applyFVarSubst(lean_object*, lean_object*);
|
||||
lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processNonVariable_match__1(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592_(lean_object*);
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588_(lean_object*);
|
||||
lean_object* l_Lean_Meta_commitWhen___at_Lean_Meta_Match_Unify_unify___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_throwInductiveTypeExpected___rarg___closed__2;
|
||||
lean_object* l_Lean_Meta_Match_Alt_checkAndReplaceFVarId___closed__3;
|
||||
|
|
@ -29042,7 +29042,7 @@ lean_dec(x_2);
|
|||
return x_8;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -29050,17 +29050,17 @@ x_1 = lean_mk_string("bootstrap");
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1; lean_object* x_2; lean_object* x_3;
|
||||
x_1 = lean_box(0);
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1;
|
||||
x_3 = lean_name_mk_string(x_1, x_2);
|
||||
return x_3;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -29068,17 +29068,17 @@ x_1 = lean_mk_string("gen_matcher_code");
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1; lean_object* x_2; lean_object* x_3;
|
||||
x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3;
|
||||
x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3;
|
||||
x_3 = lean_name_mk_string(x_1, x_2);
|
||||
return x_3;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1;
|
||||
|
|
@ -29086,13 +29086,13 @@ x_1 = lean_mk_string("disable code generation for auxiliary matcher function");
|
|||
return x_1;
|
||||
}
|
||||
}
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6() {
|
||||
static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6() {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
|
||||
x_1 = l_Lean_initFn____x40_Lean_Data_Options___hyg_476____closed__3;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1;
|
||||
x_3 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1;
|
||||
x_3 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5;
|
||||
x_4 = lean_alloc_ctor(0, 3, 0);
|
||||
lean_ctor_set(x_4, 0, x_1);
|
||||
lean_ctor_set(x_4, 1, x_2);
|
||||
|
|
@ -29100,12 +29100,12 @@ lean_ctor_set(x_4, 2, x_3);
|
|||
return x_4;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592_(lean_object* x_1) {
|
||||
lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588_(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2; lean_object* x_3; lean_object* x_4;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4;
|
||||
x_3 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4;
|
||||
x_3 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6;
|
||||
x_4 = lean_register_option(x_2, x_3, x_1);
|
||||
return x_4;
|
||||
}
|
||||
|
|
@ -29114,7 +29114,7 @@ uint8_t l_Lean_Meta_Match_generateMatcherCode(lean_object* x_1) {
|
|||
_start:
|
||||
{
|
||||
lean_object* x_2; uint8_t x_3; uint8_t x_4;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4;
|
||||
x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4;
|
||||
x_3 = 1;
|
||||
x_4 = l_Lean_KVMap_getBool(x_1, x_2, x_3);
|
||||
return x_4;
|
||||
|
|
@ -34832,7 +34832,7 @@ lean_dec(x_5);
|
|||
return x_11;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7522_(lean_object* x_1) {
|
||||
lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7518_(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2; lean_object* x_3;
|
||||
|
|
@ -35204,19 +35204,19 @@ l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___closed__2
|
|||
lean_mark_persistent(l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___closed__2);
|
||||
l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___closed__3 = _init_l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___closed__3();
|
||||
lean_mark_persistent(l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___closed__3);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__1);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__2);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__3);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__4);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__5);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592____closed__6);
|
||||
res = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6592_(lean_io_mk_world());
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__1);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__2);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__3);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__4);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__5);
|
||||
l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6();
|
||||
lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588____closed__6);
|
||||
res = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_Match___hyg_6588_(lean_io_mk_world());
|
||||
if (lean_io_result_is_error(res)) return res;
|
||||
lean_dec_ref(res);
|
||||
l_Lean_Meta_Match_mkMatcher___lambda__1___closed__1 = _init_l_Lean_Meta_Match_mkMatcher___lambda__1___closed__1();
|
||||
|
|
@ -35291,7 +35291,7 @@ l_Lean_Meta_MatcherApp_addArg___lambda__4___closed__1 = _init_l_Lean_Meta_Matche
|
|||
lean_mark_persistent(l_Lean_Meta_MatcherApp_addArg___lambda__4___closed__1);
|
||||
l_Lean_Meta_MatcherApp_addArg___lambda__4___closed__2 = _init_l_Lean_Meta_MatcherApp_addArg___lambda__4___closed__2();
|
||||
lean_mark_persistent(l_Lean_Meta_MatcherApp_addArg___lambda__4___closed__2);
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7522_(lean_io_mk_world());
|
||||
res = l_Lean_Meta_initFn____x40_Lean_Meta_Match_Match___hyg_7518_(lean_io_mk_world());
|
||||
if (lean_io_result_is_error(res)) return res;
|
||||
lean_dec_ref(res);
|
||||
return lean_io_result_mk_ok(lean_box(0));
|
||||
|
|
|
|||
95
stage0/stdlib/Lean/ProjFns.c
generated
95
stage0/stdlib/Lean/ProjFns.c
generated
|
|
@ -27,6 +27,7 @@ lean_object* lean_name_mk_string(lean_object*, lean_object*);
|
|||
uint8_t l_USize_decEq(size_t, size_t);
|
||||
lean_object* lean_array_uget(lean_object*, size_t);
|
||||
uint8_t l_Lean_Name_quickLt(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_isProjectionFn___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___elambda__2___boxed(lean_object*);
|
||||
extern lean_object* l_Array_empty___closed__1;
|
||||
lean_object* lean_environment_find(lean_object*, lean_object*);
|
||||
|
|
@ -46,9 +47,11 @@ lean_object* l_Lean_Environment_getProjectionStructureName_x3f(lean_object*, lea
|
|||
lean_object* l_Lean_projectionFnInfoExt___elambda__3___boxed(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Name_toStringWithSep(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___elambda__4___rarg(lean_object*);
|
||||
lean_object* l_Lean_isProjectionFn___rarg___lambda__1(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_registerSimplePersistentEnvExtension___rarg___lambda__2(lean_object*, lean_object*, lean_object*);
|
||||
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
|
||||
lean_object* lean_nat_sub(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f___rarg(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* lean_array_swap(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_initFn____x40_Lean_ProjFns___hyg_42_(lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___elambda__2(lean_object*);
|
||||
|
|
@ -90,11 +93,13 @@ lean_object* l_Lean_Environment_isProjectionFn_match__1___rarg(lean_object*, lea
|
|||
lean_object* l_Std_RBNode_find___at_Lean_Environment_getProjectionFnInfo_x3f___spec__1___boxed(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_ProjectionFunctionInfo_fromClassEx___boxed(lean_object*);
|
||||
extern lean_object* l_Lean_registerSimplePersistentEnvExtension___rarg___closed__1;
|
||||
lean_object* l_Lean_isProjectionFn___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_initFn____x40_Lean_ProjFns___hyg_42____closed__4;
|
||||
lean_object* l_Lean_mkProjectionInfoEx___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
|
||||
extern lean_object* l_Lean_EnvExtensionInterfaceUnsafe_instInhabitedExt___closed__2;
|
||||
lean_object* l_Lean_initFn____x40_Lean_ProjFns___hyg_42____closed__2;
|
||||
lean_object* l_Lean_projectionFnInfoExt___elambda__3(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f___rarg___lambda__1(lean_object*, lean_object*, lean_object*);
|
||||
lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___at_Lean_initFn____x40_Lean_ProjFns___hyg_42____spec__4(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_Environment_getProjectionFnInfo_x3f_match__2(lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___closed__1;
|
||||
|
|
@ -102,6 +107,8 @@ extern lean_object* l_Lean_instInhabitedName;
|
|||
lean_object* l_Lean_Environment_getModuleIdxFor_x3f(lean_object*, lean_object*);
|
||||
lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___elambda__4(lean_object*, lean_object*);
|
||||
lean_object* l_Lean_isProjectionFn(lean_object*);
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f(lean_object*);
|
||||
lean_object* l_Lean_initFn____x40_Lean_ProjFns___hyg_42____lambda__2___boxed(lean_object*);
|
||||
lean_object* l_Lean_projectionFnInfoExt___closed__4;
|
||||
lean_object* l_Array_qpartition_loop___at_Lean_initFn____x40_Lean_ProjFns___hyg_42____spec__2___closed__1;
|
||||
|
|
@ -1587,6 +1594,94 @@ return x_18;
|
|||
}
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_isProjectionFn___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_4; lean_object* x_5; uint8_t x_6; lean_object* x_7; lean_object* x_8;
|
||||
x_4 = lean_ctor_get(x_1, 0);
|
||||
lean_inc(x_4);
|
||||
lean_dec(x_1);
|
||||
x_5 = lean_ctor_get(x_4, 1);
|
||||
lean_inc(x_5);
|
||||
lean_dec(x_4);
|
||||
x_6 = l_Lean_Environment_isProjectionFn(x_3, x_2);
|
||||
x_7 = lean_box(x_6);
|
||||
x_8 = lean_apply_2(x_5, lean_box(0), x_7);
|
||||
return x_8;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_isProjectionFn___rarg(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 = lean_ctor_get(x_2, 1);
|
||||
lean_inc(x_4);
|
||||
x_5 = lean_ctor_get(x_1, 0);
|
||||
lean_inc(x_5);
|
||||
lean_dec(x_1);
|
||||
x_6 = lean_alloc_closure((void*)(l_Lean_isProjectionFn___rarg___lambda__1___boxed), 3, 2);
|
||||
lean_closure_set(x_6, 0, x_2);
|
||||
lean_closure_set(x_6, 1, x_3);
|
||||
x_7 = lean_apply_4(x_4, lean_box(0), lean_box(0), x_5, x_6);
|
||||
return x_7;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_isProjectionFn(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2;
|
||||
x_2 = lean_alloc_closure((void*)(l_Lean_isProjectionFn___rarg), 3, 0);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_isProjectionFn___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_4;
|
||||
x_4 = l_Lean_isProjectionFn___rarg___lambda__1(x_1, x_2, x_3);
|
||||
lean_dec(x_3);
|
||||
return x_4;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f___rarg___lambda__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 = lean_ctor_get(x_1, 0);
|
||||
lean_inc(x_4);
|
||||
lean_dec(x_1);
|
||||
x_5 = lean_ctor_get(x_4, 1);
|
||||
lean_inc(x_5);
|
||||
lean_dec(x_4);
|
||||
x_6 = lean_get_projection_info(x_3, x_2);
|
||||
x_7 = lean_apply_2(x_5, lean_box(0), x_6);
|
||||
return x_7;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f___rarg(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 = lean_ctor_get(x_2, 1);
|
||||
lean_inc(x_4);
|
||||
x_5 = lean_ctor_get(x_1, 0);
|
||||
lean_inc(x_5);
|
||||
lean_dec(x_1);
|
||||
x_6 = lean_alloc_closure((void*)(l_Lean_getProjectionFnInfo_x3f___rarg___lambda__1), 3, 2);
|
||||
lean_closure_set(x_6, 0, x_2);
|
||||
lean_closure_set(x_6, 1, x_3);
|
||||
x_7 = lean_apply_4(x_4, lean_box(0), lean_box(0), x_5, x_6);
|
||||
return x_7;
|
||||
}
|
||||
}
|
||||
lean_object* l_Lean_getProjectionFnInfo_x3f(lean_object* x_1) {
|
||||
_start:
|
||||
{
|
||||
lean_object* x_2;
|
||||
x_2 = lean_alloc_closure((void*)(l_Lean_getProjectionFnInfo_x3f___rarg), 3, 0);
|
||||
return x_2;
|
||||
}
|
||||
}
|
||||
lean_object* initialize_Init(lean_object*);
|
||||
lean_object* initialize_Lean_Environment(lean_object*);
|
||||
static bool _G_initialized = false;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue