You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@[deprecated]theoremNat.deprfl (n : Nat) : n = n := rfl
-- expected: deprecation warningexample {n : Nat} : n = n := Nat.deprfl n
-- unexpected: no deprecation warningexample {n : Nat} : n = n := n.deprfl
Expected behavior:n.deprfl should trigger a deprecated warning, just like Nat.deprfl.
Actual behavior:n.deprfl does not trigger a deprecated warning.
Versions
"4.6.0-rc1", "4.7.0-rc2"
Linux
(The same behaviour also happens in the online Lean server.)
Fixes#3270 by moving the deprecation check from
`Lean.Elab.Term.mkConsts` to `Lean.Elab.Term.mkConst`, so
`Lean.Elab.Term.mkBaseProjections`, `.elabAppLValsAux`, `.elabAppFn`,
and `.elabForIn` also hit the check. Not all of these really need to hit
the check, so I'll run `!bench` to see if it's a problem.
Prerequisites
Description
If a deprecated theorem allows dot-notation and is used with dot-notation, then there is no deprecation warning.
Context
This appeared in this Zulip discussion.
Steps to Reproduce
Expected behavior:
n.deprfl
should trigger a deprecated warning, just likeNat.deprfl
.Actual behavior:
n.deprfl
does not trigger a deprecated warning.Versions
"4.6.0-rc1", "4.7.0-rc2"
Linux
(The same behaviour also happens in the online Lean server.)
Impact
Add 👍 to issues you consider important. If others are impacted by this issue, please ask them to add 👍 to it.
The text was updated successfully, but these errors were encountered: