warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:26:29
   |
LL |     println!("{:?}{:?}", { &temp() }, ());
   |                             ^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                             |
   |                             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`
   = note: `#[warn(macro_extended_temporary_scopes)]` (part of `#[warn(future_incompatible)]`) on by default

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:33:43
   |
LL |     println!("{:?}{:?}", (), if cond() { &format!("") } else { "" });
   |                                           ^^^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                                           |
   |                                           this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`
   = note: this warning originates in the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:36:43
   |
LL |     println!("{:?}{:?}", (), if cond() { &"".to_string() } else { "" });
   |                                           ^^^^^^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                                           |
   |                                           this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:39:43
   |
LL |     println!("{:?}{:?}", (), if cond() { &("string".to_owned() + "string") } else { "" });
   |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                                           |
   |                                           this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:58:17
   |
LL |             &*&*smart_ptr_temp()
   |                 ^^^^^^^^^^^^^^^^ this expression creates a temporary value...
...
LL |         }
   |         - ...which will be dropped at the end of this block in Rust 1.92
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:54:14
   |
LL |             &struct_temp().field
   |              ^^^^^^^^^^^^^ this expression creates a temporary value...
...
LL |         } else {
   |         - ...which will be dropped at the end of this block in Rust 1.92
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:50:14
   |
LL |             &tuple_temp().0
   |              ^^^^^^^^^^^^ this expression creates a temporary value...
...
LL |         } else if cond() {
   |         - ...which will be dropped at the end of this block in Rust 1.92
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:46:14
   |
LL |             &array_temp()[0]
   |              ^^^^^^^^^^^^ this expression creates a temporary value...
...
LL |         } else if cond() {
   |         - ...which will be dropped at the end of this block in Rust 1.92
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:65:18
   |
LL |     pin!(pin!({ &temp() }));
   |                  ^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                  |
   |                  this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:96:13
   |
LL |     pin!({ &(1 / 0) });
   |             ^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |             |
   |             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:99:17
   |
LL |     pin!({ &mut [()] });
   |                 ^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |                 |
   |                 this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:102:13
   |
LL |     pin!({ &Some(String::new()) });
   |             ^^^^^^^^^^^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |             |
   |             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:105:13
   |
LL |     pin!({ &(|| ())() });
   |             ^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |             |
   |             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:108:13
   |
LL |     pin!({ &|| &local });
   |             ^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |             |
   |             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: temporary lifetime will be shortened in Rust 1.92
  --> $DIR/macro-extended-temporary-scopes.rs:111:13
   |
LL |     pin!({ &CONST_STRING });
   |             ^^^^^^^^^^^^ - ...which will be dropped at the end of this block in Rust 1.92
   |             |
   |             this expression creates a temporary value...
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see <https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#macro-extended-temporary-scopes>
   = note: consider using a `let` binding to create a longer lived value
   = note: some temporaries were previously incorrectly lifetime-extended since Rust 1.89 in formatting macros, and since Rust 1.88 in `pin!()`

warning: 15 warnings emitted

