Add help for `matches` for `if let` in arm guard

This commit is contained in:
Esteban Küber 2021-03-07 14:44:21 -08:00
parent 23bcea4249
commit 63fb294a74
2 changed files with 7 additions and 1 deletions

View File

@ -638,7 +638,11 @@ pub fn check_crate(krate: &ast::Crate, sess: &Session) {
}
};
}
gate_all!(if_let_guard, "`if let` guards are experimental");
gate_all!(
if_let_guard,
"`if let` guards are experimental",
"you can write `if matches!(<expr>, <pattern>)` instead of `if let <pattern> = <expr>`"
);
gate_all!(
let_chains,
"`let` expressions in this position are experimental",

View File

@ -15,6 +15,7 @@ LL | () if let 0 = 1 => {}
|
= note: see issue #51114 <https://github.com/rust-lang/rust/issues/51114> for more information
= help: add `#![feature(if_let_guard)]` to the crate attributes to enable
= help: you can write `if matches!(<expr>, <pattern>)` instead of `if let <pattern> = <expr>`
error[E0658]: `if let` guards are experimental
--> $DIR/feature-gate.rs:76:12
@ -24,6 +25,7 @@ LL | () if let 0 = 1 => {}
|
= note: see issue #51114 <https://github.com/rust-lang/rust/issues/51114> for more information
= help: add `#![feature(if_let_guard)]` to the crate attributes to enable
= help: you can write `if matches!(<expr>, <pattern>)` instead of `if let <pattern> = <expr>`
error[E0658]: `let` expressions in this position are experimental
--> $DIR/feature-gate.rs:10:16