so that the pretty-printed origin is clickable, and avoid the unnecessary `@`. Particularly nice is this fix: ```diff /-- -info: [Meta.Tactic.simp.discharge] @bar discharge ✅ +info: [Meta.Tactic.simp.discharge] bar discharge ✅ autoParam T _auto✝ - [Meta.Tactic.simp.rewrite] { }:1000, T ==> True -[Meta.Tactic.simp.rewrite] @bar:1000, U ==> True + [Meta.Tactic.simp.rewrite] T.mk:1000, T ==> True +[Meta.Tactic.simp.rewrite] bar:1000, U ==> True -/ ```
25 lines
572 B
Text
25 lines
572 B
Text
structure T : Prop
|
|
structure U : Prop
|
|
|
|
theorem foo : T → U := λ _ => {}
|
|
theorem bar : (_ : T := by trivial) → U := λ _ => {}
|
|
|
|
-- fails as expected
|
|
example : U := by
|
|
fail_if_success simp
|
|
sorry
|
|
|
|
-- works as expected, discharging `T` via `T.mk`
|
|
example : U := by
|
|
simp [foo, T.mk]
|
|
|
|
/--
|
|
info: [Meta.Tactic.simp.discharge] bar discharge ✅
|
|
autoParam T _auto✝
|
|
[Meta.Tactic.simp.rewrite] T.mk:1000, T ==> True
|
|
[Meta.Tactic.simp.rewrite] bar:1000, U ==> True
|
|
-/
|
|
#guard_msgs in
|
|
example : U := by
|
|
set_option trace.Meta.Tactic.simp true in
|
|
simp [bar, T.mk]
|