rust/tests/ui/rfcs/rfc-2497-if-let-chains/invalid-let-in-a-valid-let-context.rs
2025-06-30 07:49:20 -05:00

48 lines
1.1 KiB
Rust

//@ edition: 2024
fn main() {
let _opt = Some(1i32);
#[cfg(false)]
{
let _ = &&let Some(x) = Some(42);
//~^ ERROR expected expression, found `let` statement
}
#[cfg(false)]
{
if let Some(elem) = _opt && [1, 2, 3][let _ = &&let Some(x) = Some(42)] = 1 {
//~^ ERROR expected expression, found `let` statement
//~| ERROR expected expression, found `let` statement
//~| ERROR expected expression, found `let` statement
true
}
}
#[cfg(false)]
{
if let Some(elem) = _opt && {
[1, 2, 3][let _ = ()];
//~^ ERROR expected expression, found `let` statement
true
} {
}
}
#[cfg(false)]
{
if let Some(elem) = _opt && [1, 2, 3][let _ = ()] = 1 {
//~^ ERROR expected expression, found `let` statement
//~| ERROR expected expression, found `let` statement
true
}
}
#[cfg(false)]
{
if let a = 1 && {
let x = let y = 1;
//~^ ERROR expected expression, found `let` statement
} {
}
}
}