error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:18:5
   |
LL |     let v = if let Some(v_some) = g() { v_some } else { return };
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v_some) = 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:19:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         return;
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         return;
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:25:5
   |
LL | /     let v = if let Some(v) = g() {
LL | |         // Blocks around the identity should have no impact
LL | |         {
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`
  --> $DIR/manual_let_else.rs:38:9
   |
LL |         let v = if let Some(v_some) = g() { v_some } else { continue };
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v_some) = g() else { continue };`

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:39:9
   |
LL |         let v = if let Some(v_some) = g() { v_some } else { break };
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v_some) = g() else { break };`

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:43:5
   |
LL |     let v = if let Some(v_some) = g() { v_some } else { panic!() };
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v_some) = g() else { panic!() };`

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:46:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         std::process::abort()
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         std::process::abort()
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:53:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         if true { return } else { panic!() }
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         if true { return } else { panic!() }
LL +     };
   |

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 | |         v_some
LL | |     } else {
LL | |         if true {}
LL | |         panic!();
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         if true {}
LL +         panic!();
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:70:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         match () {
...  |
LL | |         }
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         match () {
LL +             _ if panic!() => {},
LL +             _ => panic!(),
LL +         }
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:80:5
   |
LL |     let v = if let Some(v_some) = g() { v_some } else { if panic!() {} };
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v_some) = g() else { if panic!() {} };`

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:83:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         match panic!() {
LL | |             _ => {},
LL | |         }
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g() else {
LL +         match panic!() {
LL +             _ => {},
LL +         }
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:92:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else if true {
LL | |         return;
LL | |     } else {
LL | |         panic!("diverge");
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = 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:101:5
   |
LL | /     let v = if let Some(v_some) = g() {
LL | |         v_some
LL | |     } else {
LL | |         match (g(), g()) {
...  |
LL | |         }
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = 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:118:5
   |
LL | /     let (v, w) = if let Some(v_some) = g().map(|v| (v, 42)) {
LL | |         v_some
LL | |     } else {
LL | |         return;
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let Some(v_some) = g().map(|v| (v, 42)) else {
LL +         return;
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:125:5
   |
LL | /     let v = if let (Some(v_some), w_some) = (g(), 0) {
LL | |         (w_some, v_some)
LL | |     } else {
LL | |         return;
LL | |     };
   | |______^
   |
help: consider writing
   |
LL ~     let (Some(v_some), w_some) = (g(), 0) else {
LL +         return;
LL +     };
   |

error: this could be rewritten as `let...else`
  --> $DIR/manual_let_else.rs:134:13
   |
LL |             let $n = if let Some(v) = $e { v } else { return };
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider writing: `let Some(v) = 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:247:5
   |
LL | /     let _ = match ff {
LL | |         Some(value) => value,
LL | |         _ => macro_call!(),
LL | |     };
   | |______^ help: consider writing: `let Some(value) = ff else { macro_call!() };`

error: aborting due to 18 previous errors

