error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:28:5 | LL | let v = if let Some(v_some) = g() { v_some } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { return };` | = note: `-D clippy::manual-let-else` implied by `-D warnings` = help: to override `-D warnings` add `#[allow(clippy::manual_let_else)]` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:31:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:38:5 | LL | / let v = if let Some(v) = g() { LL | | LL | | // Blocks around the identity should have no impact LL | | { { v } } ... | LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + // Some computation should still make it fire LL + g(); LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:50:9 | LL | let v = if let Some(v_some) = g() { v_some } else { continue }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { continue };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:52:9 | LL | let v = if let Some(v_some) = g() { v_some } else { break }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { break };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:57:5 | LL | let v = if let Some(v_some) = g() { v_some } else { panic!() }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { panic!() };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:61:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | std::process::abort() LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + std::process::abort() LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:69:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | if true { return } else { panic!() } LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + if true { return } else { panic!() } LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:77:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | if true {} LL | | panic!(); LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + if true {} LL + panic!(); LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:86:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | panic!(); LL | | () LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + panic!(); LL + () LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:95:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | } LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + panic!(); LL + if true { LL + match 0 { LL + 0 => (), LL + _ => (), LL + } LL + } else { LL + panic!() LL + } LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:111:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | } LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + loop { LL + panic!(); LL + break (); LL + } LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:122:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | } LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + 'a: loop { LL + panic!(); LL + loop { LL + match 0 { LL + 0 if (return break 'a ()) => {}, LL + _ => {}, LL + } LL + } LL + } LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:138:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | }; LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + match 0 { LL + 0 if true => panic!(), LL + _ => panic!(), LL + }; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:149:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { LL | | if panic!() {}; LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + if panic!() {}; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:157:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | }; LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + match panic!() { LL + _ => {}, LL + }; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:167:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else if true { ... | LL | | panic!("diverge"); LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { if true { LL + return; LL + } else { LL + panic!("diverge"); LL + } }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:177:5 | LL | / let v = if let Some(v_some) = g() { LL | | LL | | v_some LL | | } else { ... | LL | | } LL | | }; | |______^ | help: consider writing | LL ~ let Some(v) = g() else { LL + match (g(), g()) { LL + (Some(_), None) => return, LL + (None, Some(_)) => { LL + if true { LL + return; LL + } else { LL + panic!(); LL + } LL + }, LL + _ => return, LL + } LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:195:5 | LL | / let (v, w) = if let Some(v_some) = g().map(|v| (v, 42)) { LL | | LL | | v_some LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some((v, w)) = g().map(|v| (v, 42)) else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:203:5 | LL | / let (w, S { v }) = if let (Some(v_some), w_some) = (g().map(|_| S { v: 0 }), 0) { LL | | LL | | (w_some, v_some) LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let (Some(S { v }), w) = (g().map(|_| S { v: 0 }), 0) else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:213:13 | LL | let $n = if let Some(v) = $e { v } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some($n) = g() else { return };` ... LL | create_binding_if_some!(w, g()); | ------------------------------- in this macro invocation | = note: this error originates in the macro `create_binding_if_some` (in Nightly builds, run with -Z macro-backtrace for more info) error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:222:5 | LL | let v = if let Variant::A(a, 0) = e() { a } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Variant::A(v, 0) = e() else { return };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:226:5 | LL | let mut v = if let Variant::B(b) = e() { b } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Variant::B(mut v) = e() else { return };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:231:5 | LL | / let v = if let Ok(Some(Variant::B(b))) | Err(Some(Variant::A(b, _))) = nested { LL | | LL | | b LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let (Ok(Some(Variant::B(v))) | Err(Some(Variant::A(v, _)))) = nested else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:238:5 | LL | let v = if let Variant::A(.., a) = e() { a } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Variant::A(.., v) = e() else { return };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:242:5 | LL | let w = if let (Some(v), ()) = (g(), ()) { v } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let (Some(w), ()) = (g(), ()) else { return };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:246:5 | LL | / let w = if let Some(S { v: x }) = Some(S { v: 0 }) { LL | | LL | | x LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some(S { v: w }) = Some(S { v: 0 }) else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:254:5 | LL | / let v = if let Some(S { v: x }) = Some(S { v: 0 }) { LL | | LL | | x LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some(S { v }) = Some(S { v: 0 }) else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:262:5 | LL | / let (x, S { v }, w) = if let Some(U { v, w, x }) = None::>> { LL | | LL | | (x, v, w) LL | | } else { LL | | return; LL | | }; | |______^ | help: consider writing | LL ~ let Some(U { v: S { v }, w, x }) = None::>> else { LL + return; LL + }; | error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:379:5 | LL | / let _ = match ff { LL | | LL | | Some(value) => value, LL | | _ => macro_call!(), LL | | }; | |______^ help: consider writing: `let Some(_) = ff else { macro_call!() };` error: this could be rewritten as `let...else` --> tests/ui/manual_let_else.rs:456:9 | LL | let v = if let Some(v_some) = g() { v_some } else { return }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { return };` error: aborting due to 31 previous errors