| [Elab.info] • command @ ⟨3, 0⟩-⟨3, 31⟩ @ Lean.Elab.Command.elabSetOption | |
| • [.] (Command.set_option "set_option" `trace.Elab.info []) @ ⟨3, 0⟩-⟨3, 26⟩ | |
| • option trace.Elab.info @ ⟨3, 11⟩-⟨3, 26⟩ | |
| 1 + 2 + 3 : Nat | |
| [Elab.info] • command @ ⟨5, 0⟩-⟨5, 16⟩ @ Lean.Elab.Command.elabCheck | |
| • 1 + 2 + 3 : Nat @ ⟨5, 7⟩-⟨5, 16⟩ @ «_aux_Init_Notation___macroRules_term_+__2» | |
| • Macro expansion | |
| 1 + 2 + | |
| 3 | |
| -- should propagate through multiple macro expansions | |
| ===> | |
| binop% HAdd.hAdd✝ (1 + 2) | |
| 3 | |
| -- should propagate through multiple macro expansions | |
| • 1 + 2 + 3 : Nat @ ⟨5, 7⟩†-⟨5, 16⟩† @ Lean.Elab.Term.Op.elabBinOp | |
| • 1 + 2 + 3 : Nat @ ⟨5, 7⟩†-⟨5, 16⟩† | |
| • 1 + 2 : Nat @ ⟨5, 7⟩-⟨5, 12⟩ @ «_aux_Init_Notation___macroRules_term_+__2» | |
| • Macro expansion | |
| 1 + 2 | |
| ===> | |
| binop% HAdd.hAdd✝ 1 2 | |
| • 1 + 2 : Nat @ ⟨5, 7⟩†-⟨5, 12⟩† | |
| • [.] HAdd.hAdd✝ : none @ ⟨5, 7⟩†-⟨5, 16⟩† | |
| • [.] HAdd.hAdd✝ : none @ ⟨5, 7⟩†-⟨5, 12⟩† | |
| • 1 : Nat @ ⟨5, 7⟩-⟨5, 8⟩ @ Lean.Elab.Term.elabNumLit | |
| • 2 : Nat @ ⟨5, 11⟩-⟨5, 12⟩ @ Lean.Elab.Term.elabNumLit | |
| • 3 : Nat @ ⟨5, 15⟩-⟨5, 16⟩ @ Lean.Elab.Term.elabNumLit | |
| fun n m l => ↑n + (↑m + ↑l) : Nat → Nat → Nat → Int | |
| [Elab.info] • command @ ⟨7, 0⟩-⟨7, 48⟩ @ Lean.Elab.Command.elabCheck | |
| • fun n m l => ↑n + (↑m + ↑l) : Nat → Nat → Nat → Int @ ⟨7, 7⟩-⟨7, 48⟩ @ Lean.Elab.Term.elabFun | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] Nat : some Sort.{?_uniq} @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • n (isBinder := true) : Nat @ ⟨7, 12⟩-⟨7, 13⟩ | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] Nat : some Sort.{?_uniq} @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • m (isBinder := true) : Nat @ ⟨7, 14⟩-⟨7, 15⟩ | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] Nat : some Sort.{?_uniq} @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • Nat : Type @ ⟨7, 20⟩-⟨7, 23⟩ | |
| • l (isBinder := true) : Nat @ ⟨7, 16⟩-⟨7, 17⟩ | |
| • ↑n + (↑m + ↑l) : Int @ ⟨7, 28⟩-⟨7, 48⟩ @ Lean.Elab.Term.elabTypeAscription | |
| • Int : Type @ ⟨7, 44⟩-⟨7, 47⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] Int : some Sort.{?_uniq} @ ⟨7, 44⟩-⟨7, 47⟩ | |
| • Int : Type @ ⟨7, 44⟩-⟨7, 47⟩ | |
| • ↑n + (↑m + ↑l) : Int @ ⟨7, 29⟩-⟨7, 41⟩ @ «_aux_Init_Notation___macroRules_term_+__2» | |
| • Macro expansion | |
| n + (m +' l) | |
| ===> | |
| binop% HAdd.hAdd✝ n (m +' l) | |
| • ↑n + (↑m + ↑l) : Int @ ⟨7, 29⟩†-⟨7, 41⟩† @ Lean.Elab.Term.Op.elabBinOp | |
| • ↑n + (↑m + ↑l) : Int @ ⟨7, 29⟩†-⟨7, 41⟩† | |
| • [.] HAdd.hAdd✝ : none @ ⟨7, 29⟩†-⟨7, 41⟩† | |
| • n : Nat @ ⟨7, 29⟩-⟨7, 30⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] n : none @ ⟨7, 29⟩-⟨7, 30⟩ | |
| • n : Nat @ ⟨7, 29⟩-⟨7, 30⟩ | |
| • ↑m + ↑l : Int @ ⟨7, 34⟩-⟨7, 40⟩ @ «_aux_binopInfoTree___macroRules_term_+'__1» | |
| • Macro expansion | |
| m +' l | |
| ===> | |
| m + l | |
| • ↑m + ↑l : Int @ ⟨7, 34⟩†-⟨7, 40⟩† @ «_aux_Init_Notation___macroRules_term_+__2» | |
| • Macro expansion | |
| m + l | |
| ===> | |
| binop% HAdd.hAdd✝ m l | |
| • ↑m + ↑l : Int @ ⟨7, 34⟩†-⟨7, 40⟩† | |
| • [.] HAdd.hAdd✝ : none @ ⟨7, 34⟩†-⟨7, 40⟩† | |
| • m : Nat @ ⟨7, 34⟩-⟨7, 35⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] m : none @ ⟨7, 34⟩-⟨7, 35⟩ | |
| • m : Nat @ ⟨7, 34⟩-⟨7, 35⟩ | |
| • l : Nat @ ⟨7, 39⟩-⟨7, 40⟩ @ Lean.Elab.Term.elabIdent | |
| • [.] l : none @ ⟨7, 39⟩-⟨7, 40⟩ | |
| • l : Nat @ ⟨7, 39⟩-⟨7, 40⟩ | |
| [Elab.info] • command @ ⟨8, 0⟩-⟨8, 0⟩ @ Lean.Elab.Command.elabEoi |