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
I keep getting this annoying warning with rust 1.83:
warning: irrefutable `if let` pattern
--> plotters/src/coord/ranged1d/types/numeric.rs:29:20
|
29 | if let Ok(index) = Self::ValueType::try_from(index) {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
365 | impl_discrete_trait!(RangedCoordusize);
| -------------------------------------- in this macro invocation
|
= note: this pattern will always match, so the `if let` is useless
= help: consider replacing the `if let` with a `let`
= note: `#[warn(irrefutable_let_patterns)]` on by default
= note: this warning originates in the macro `impl_discrete_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
This is because the conversion of usize to ValueType always
passes, so we don't need the try_from() in all cases.
An additional problem are potential overflows so we use
checked_add() which returns None if the addition fails,
thus also avoiding the irrefutable let pattern while also
protecting against overflows.
Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
0 commit comments