error: this could be rewritten as `let...else` --> $DIR/manual_let_else.rs:25: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` error: this could be rewritten as `let...else` --> $DIR/manual_let_else.rs:28: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` --> $DIR/manual_let_else.rs:35:5 | LL | / let v = if let Some(v) = g() { LL | | LL | | // Blocks around the identity should have no impact LL | | { ... | 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` --> $DIR/manual_let_else.rs:49: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` --> $DIR/manual_let_else.rs:51: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` --> $DIR/manual_let_else.rs:56: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` --> $DIR/manual_let_else.rs:60: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` --> $DIR/manual_let_else.rs:68: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` --> $DIR/manual_let_else.rs:76: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` --> $DIR/manual_let_else.rs:87: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 () { LL + _ if panic!() => {}, LL + _ => panic!(), LL + } LL + }; | error: this could be rewritten as `let...else` --> $DIR/manual_let_else.rs:98:5 | LL | let v = if let Some(v_some) = g() { v_some } else { if panic!() {} }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = g() else { if panic!() {} };` error: this could be rewritten as `let...else` --> $DIR/manual_let_else.rs:102: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` --> $DIR/manual_let_else.rs:112: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` --> $DIR/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 + 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` --> $DIR/manual_let_else.rs:140: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` --> $DIR/manual_let_else.rs:148: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` --> $DIR/manual_let_else.rs:158: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` --> $DIR/manual_let_else.rs:167: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` --> $DIR/manual_let_else.rs:171: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` --> $DIR/manual_let_else.rs:176: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` --> $DIR/manual_let_else.rs:183: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` --> $DIR/manual_let_else.rs:187: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` --> $DIR/manual_let_else.rs:191: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` --> $DIR/manual_let_else.rs:199: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` --> $DIR/manual_let_else.rs:207: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` --> $DIR/manual_let_else.rs:324:5 | LL | / let _ = match ff { LL | | LL | | Some(value) => value, LL | | _ => macro_call!(), LL | | }; | |______^ help: consider writing: `let Some(_) = ff else { macro_call!() };` error: aborting due to 26 previous errors