diff --git a/src/test/ui/rfc-2497-if-let-chains/irrefutable-lets.rs b/src/test/ui/rfc-2497-if-let-chains/irrefutable-lets.rs
index 5915cb9df269c..945c665e35d28 100644
--- a/src/test/ui/rfc-2497-if-let-chains/irrefutable-lets.rs
+++ b/src/test/ui/rfc-2497-if-let-chains/irrefutable-lets.rs
@@ -1,6 +1,6 @@
// check-pass
-#![feature(let_chains)]
+#![feature(if_let_guard, let_chains)]
use std::ops::Range;
@@ -16,6 +16,16 @@ fn main() {
&& let None = local_start {
}
+ match opt {
+ Some(ref first) if let second = first && let _third = second => {},
+ _ => {}
+ }
+ match opt {
+ Some(ref first) if let Range { start: local_start, end: _ } = first
+ && let None = local_start => {},
+ _ => {}
+ }
+
while let first = &opt && let Some(ref second) = first && let None = second.start {
}
while let Some(ref first) = opt && let second = first && let _third = second {
diff --git a/src/test/ui/rfc-2497-if-let-chains/then-else-blocks.rs b/src/test/ui/rfc-2497-if-let-chains/then-else-blocks.rs
index 0856a10520636..e061174f667d9 100644
--- a/src/test/ui/rfc-2497-if-let-chains/then-else-blocks.rs
+++ b/src/test/ui/rfc-2497-if-let-chains/then-else-blocks.rs
@@ -1,6 +1,6 @@
// run-pass
-#![feature(let_chains)]
+#![feature(if_let_guard, let_chains)]
fn check_if_let(opt: Option