lean4-htt/tests/lean/run/1163.lean
jrr6 4759506bcf
chore: use note and hint' for message addenda (#8980)
This PR improves the consistency of error message formatting by
rendering addenda of several existing error messages as labeled notes
and hints.
2025-06-27 15:16:01 +00:00

39 lines
1.1 KiB
Text

import Lean
open Lean Elab Tactic
macro "obviously1" : tactic => `(tactic| exact sorryAx _ false)
theorem result1 : False := by obviously1
elab "obviously2" : tactic =>
liftMetaTactic1 fun mvarId => mvarId.admit *> pure none
theorem result2 : False := by obviously2
/--
error: failed to synthesize
OfNat Bool 0
numerals are polymorphic in Lean, but the numeral `0` cannot be used in a context where the expected type is
Bool
due to the absence of the instance above
Hint: Additional diagnostic information may be available using the `set_option diagnostics true` command.
-/
#guard_msgs in
def x : Bool := 0
theorem result3 : False := by obviously2
/--
error: failed to synthesize
OfNat Bool 0
numerals are polymorphic in Lean, but the numeral `0` cannot be used in a context where the expected type is
Bool
due to the absence of the instance above
Hint: Additional diagnostic information may be available using the `set_option diagnostics true` command.
-/
#guard_msgs in
theorem result4 : False := by -- Does not generate a `sorry` warning because there is an error
let x : Bool := 0
obviously2