[INFO] fetching crate msf-ice 0.2.1... [INFO] checking msf-ice-0.2.1 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate msf-ice 0.2.1 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate msf-ice 0.2.1 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate msf-ice 0.2.1 [INFO] finished tweaking crates.io crate msf-ice 0.2.1 [INFO] tweaked toml for crates.io crate msf-ice 0.2.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 66 packages to latest compatible versions [INFO] [stderr] Adding generic-array v0.14.7 (available: v1.1.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ed947c013b67b5d68e638499084f62d2848468a5a5ad681e0f0d3da0300bcd66 [INFO] running `Command { std: "docker" "start" "-a" "ed947c013b67b5d68e638499084f62d2848468a5a5ad681e0f0d3da0300bcd66", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ed947c013b67b5d68e638499084f62d2848468a5a5ad681e0f0d3da0300bcd66", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ed947c013b67b5d68e638499084f62d2848468a5a5ad681e0f0d3da0300bcd66", kill_on_drop: false }` [INFO] [stdout] ed947c013b67b5d68e638499084f62d2848468a5a5ad681e0f0d3da0300bcd66 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f7d50ff3ce55fbdfef0d325b77581d610b5f7463df34294aafa3a8bad6eee7e [INFO] running `Command { std: "docker" "start" "-a" "4f7d50ff3ce55fbdfef0d325b77581d610b5f7463df34294aafa3a8bad6eee7e", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (2 fixes) [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking crc-catalog v2.4.0 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Checking crc v3.2.1 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking msf-stun v0.1.1 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking msf-ice v0.2.1 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `msf_ice` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/log.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:14 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:36 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:50 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:66 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:82 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:14 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:36 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:50 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:66 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:82 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:14 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:36 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:50 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:66 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:82 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:14 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:36 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:50 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:66 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:96 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:14 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:36 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:50 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:66 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:97 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:36 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:50 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:66 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:97 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:14 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:36 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:50 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:66 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:96 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:14 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:36 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:50 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:66 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:97 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:50 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:66 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:97 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:36 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:50 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:66 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:14 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:50 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:66 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:14 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:36 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:50 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:66 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:14 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:36 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:50 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:66 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:110:7 [INFO] [stderr] | [INFO] [stderr] 110 | ( $l:expr_2021, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:110:21 [INFO] [stderr] | [INFO] [stderr] 110 | ( $l:expr_2021, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:45 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/log.rs:117:7 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:56 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:67 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 117 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:45 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:56 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:45 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/log.rs:132:7 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:56 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:67 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 132 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:45 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:56 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:79 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:20 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:34 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:45 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/log.rs:147:7 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:56 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:80 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 147 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:20 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:45 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:56 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:80 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:20 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:34 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:45 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/log.rs:162:7 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:56 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:79 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 162 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:20 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:34 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:45 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:56 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:80 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:20 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:34 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:45 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/log.rs:177:7 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:56 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:80 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 177 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:20 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:34 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:45 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:56 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:20 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:34 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:45 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: aborting due to 68 previous errors [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:56 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:20 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:34 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Original diagnostics will follow. [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:45 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:56 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:20 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:34 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:45 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:56 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:110:10 [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr_2021, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:117:10 [INFO] [stdout] | [INFO] [stdout] 117 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 117 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:132:10 [INFO] [stdout] | [INFO] [stdout] 132 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 132 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:147:10 [INFO] [stdout] | [INFO] [stdout] 147 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 147 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:162:10 [INFO] [stdout] | [INFO] [stdout] 162 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 162 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:177:10 [INFO] [stdout] | [INFO] [stdout] 177 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 177 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/check.rs:462:24 [INFO] [stdout] | [INFO] [stdout] 462 | UnknownTransaction(TransactionId), [INFO] [stdout] | ------------------ ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `CheckError` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 462 | UnknownTransaction(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:211:12 [INFO] [stdout] | [INFO] [stdout] 211 | if let Some(candidate) = ready!(self.local_candidate_rx.poll_next_unpin(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:292:12 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(channel) = self.channels.get_mut(candidate.channel()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:308:9 [INFO] [stdout] | [INFO] [stdout] 308 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 292 ~ match self.channels.get_mut(candidate.channel()) { Some(channel) => { [INFO] [stdout] 293 | let is_from_current_session = self [INFO] [stdout] ... [INFO] [stdout] 307 | } [INFO] [stdout] 308 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:313:12 [INFO] [stdout] | [INFO] [stdout] 313 | if let Some(candidate_tx) = self.local_candidate_tx.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:333:9 [INFO] [stdout] | [INFO] [stdout] 333 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 313 ~ match self.local_candidate_tx.as_mut() { Some(candidate_tx) => { [INFO] [stdout] 314 | let mut resolved = 0; [INFO] [stdout] ... [INFO] [stdout] 332 | } [INFO] [stdout] 333 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:390:15 [INFO] [stdout] | [INFO] [stdout] 390 | while let Poll::Ready(next) = self.remote_candidate_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:396:9 [INFO] [stdout] | [INFO] [stdout] 396 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:214:15 [INFO] [stdout] | [INFO] [stdout] 214 | while let Poll::Ready(msg) = self.checklist.poll(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:234:20 [INFO] [stdout] | [INFO] [stdout] 234 | if let Poll::Ready(packet) = transport.poll_recv(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 234 ~ match transport.poll_recv(cx) { Poll::Ready(packet) => { [INFO] [stdout] 235 | self.process_incoming_packet(index as _, packet); [INFO] [stdout] 236 ~ } _ => { [INFO] [stdout] 237 | break; [INFO] [stdout] 238 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:247:20 [INFO] [stdout] | [INFO] [stdout] 247 | if let Some(handle) = self.component_handles.get_mut(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:251:17 [INFO] [stdout] | [INFO] [stdout] 251 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 247 ~ match self.component_handles.get_mut(index) { Some(handle) => { [INFO] [stdout] 248 | while let Poll::Ready(Some(data)) = handle.poll_next_output_packet(cx) { [INFO] [stdout] 249 | transport.send(data); [INFO] [stdout] 250 | } [INFO] [stdout] 251 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:248:27 [INFO] [stdout] | [INFO] [stdout] 248 | while let Poll::Ready(Some(data)) = handle.poll_next_output_packet(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:250:21 [INFO] [stdout] | [INFO] [stdout] 250 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:262:12 [INFO] [stdout] | [INFO] [stdout] 262 | if let Some(msg) = self.parse_stun_message(data) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 263 | self.process_stun_message(component, local_addr, remote_addr, msg); [INFO] [stdout] 264 | } else if let Some(handle) = self.component_handles.get_mut(component as usize) { [INFO] [stdout] | ---------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | } else if let Some(handle) = self.component_handles.get_mut(component as usize) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 262 ~ match self.parse_stun_message(data) { Some(msg) => { [INFO] [stdout] 263 | self.process_stun_message(component, local_addr, remote_addr, msg); [INFO] [stdout] 264 ~ } _ => { match self.component_handles.get_mut(component as usize) { Some(handle) => { [INFO] [stdout] 265 | handle.deliver_input_packet(packet); [INFO] [stdout] 266 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:322:12 [INFO] [stdout] | [INFO] [stdout] 322 | if let Some(nominated) = [INFO] [stdout] | ____________^ [INFO] [stdout] 323 | | self.checklist [INFO] [stdout] | | -------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 324 | | .process_stun_response(component, local_addr, remote_addr, &msg) [INFO] [stdout] | |________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 332 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 322 ~ match self.checklist [INFO] [stdout] 323 | .process_stun_response(component, local_addr, remote_addr, &msg) [INFO] [stdout] 324 ~ { Some(nominated) => { [INFO] [stdout] 325 | let local = nominated.local(); [INFO] [stdout] ... [INFO] [stdout] 330 | transport.bind(local.base(), remote.addr()); [INFO] [stdout] 331 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | if let CheckState::InProgress(t) = &self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 43 ~ match &self.state { CheckState::InProgress(t) => { [INFO] [stdout] 44 | Some(t) [INFO] [stdout] 45 ~ } _ => { [INFO] [stdout] 46 | None [INFO] [stdout] 47 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 141 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 142 | task.wake(); [INFO] [stdout] 143 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 156 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 156 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 157 | task.wake(); [INFO] [stdout] 158 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:222:12 [INFO] [stdout] | [INFO] [stdout] 222 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 222 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 223 | task.wake(); [INFO] [stdout] 224 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:282:20 [INFO] [stdout] | [INFO] [stdout] 282 | if let Some(msg) = ready!(t.poll(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:284:17 [INFO] [stdout] | [INFO] [stdout] 284 | } else { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:379:12 [INFO] [stdout] | [INFO] [stdout] 379 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:381:9 [INFO] [stdout] | [INFO] [stdout] 381 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 379 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 380 | task.wake(); [INFO] [stdout] 381 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:511:12 [INFO] [stdout] | [INFO] [stdout] 511 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:513:9 [INFO] [stdout] | [INFO] [stdout] 513 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 511 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 512 | task.wake_by_ref(); [INFO] [stdout] 513 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:605:12 [INFO] [stdout] | [INFO] [stdout] 605 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:607:9 [INFO] [stdout] | [INFO] [stdout] 607 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 605 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 606 | task.wake_by_ref(); [INFO] [stdout] 607 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:657:16 [INFO] [stdout] | [INFO] [stdout] 657 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:659:13 [INFO] [stdout] | [INFO] [stdout] 659 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 657 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 658 | task.wake_by_ref(); [INFO] [stdout] 659 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | if let Some(binding) = ready!(self.binding_rx.poll_next_unpin(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 130 | } else if sockets.is_pending() { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 157 | if let Poll::Ready(Some(packet)) = self.packet_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 157 ~ match self.packet_rx.poll_next_unpin(cx) { Poll::Ready(Some(packet)) => { [INFO] [stdout] 158 | Poll::Ready(packet) [INFO] [stdout] 159 ~ } _ => { [INFO] [stdout] 160 | Poll::Pending [INFO] [stdout] 161 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:180:15 [INFO] [stdout] | [INFO] [stdout] 180 | while let Poll::Ready(ready) = self.socket_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 186 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | if let Some(socket) = ready { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 181 ~ match ready { Some(socket) => { [INFO] [stdout] 182 | self.open_sockets.push(socket); [INFO] [stdout] 183 ~ } _ => { [INFO] [stdout] 184 | return Poll::Ready(()); [INFO] [stdout] 185 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:318:16 [INFO] [stdout] | [INFO] [stdout] 318 | if let Some((reflexive_addr, stun_server)) = reflexive_addr.await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:330:13 [INFO] [stdout] | [INFO] [stdout] 330 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 318 ~ match reflexive_addr.await { Some((reflexive_addr, stun_server)) => { [INFO] [stdout] 319 | let binding = Binding::reflexive(local_addr, reflexive_addr, stun_server); [INFO] [stdout] ... [INFO] [stdout] 329 | .await; [INFO] [stdout] 330 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/socket.rs:391:62 [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/socket.rs:391:21 [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future + use [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:398:19 [INFO] [stdout] | [INFO] [stdout] 398 | while let Some((peer, data)) = stream.next().await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:399:20 [INFO] [stdout] | [INFO] [stdout] 399 | if let Err(err) = socket.send_to(&data, peer).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:405:17 [INFO] [stdout] | [INFO] [stdout] 405 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 399 ~ match socket.send_to(&data, peer).await { Err(err) => { [INFO] [stdout] 400 | // log the error [INFO] [stdout] ... [INFO] [stdout] 404 | break; [INFO] [stdout] 405 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:426:24 [INFO] [stdout] | [INFO] [stdout] 426 | if let Err(packet) = stun_context.process_packet(packet) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:428:21 [INFO] [stdout] | [INFO] [stdout] 428 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 426 ~ match stun_context.process_packet(packet) { Err(packet) => { [INFO] [stdout] 427 | Some(Ok(packet)) [INFO] [stdout] 428 ~ } _ => { [INFO] [stdout] 429 | None [INFO] [stdout] 430 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:438:15 [INFO] [stdout] | [INFO] [stdout] 438 | while let Some(item) = filtered.next().await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:445:9 [INFO] [stdout] | [INFO] [stdout] 445 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:461:12 [INFO] [stdout] | [INFO] [stdout] 461 | if let Some(socket) = self.socket.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:485:9 [INFO] [stdout] | [INFO] [stdout] 485 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 461 ~ match self.socket.as_ref() { Some(socket) => { [INFO] [stdout] 462 | // XXX: use MaybeUninit::uninit_array() once stabilized [INFO] [stdout] ... [INFO] [stdout] 484 | } [INFO] [stdout] 485 ~ } _ => { [INFO] [stdout] 486 | Poll::Ready(None) [INFO] [stdout] 487 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:543:24 [INFO] [stdout] | [INFO] [stdout] 543 | if let Ok(reflexive_addr) = request.await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:545:21 [INFO] [stdout] | [INFO] [stdout] 545 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 543 ~ match request.await { Ok(reflexive_addr) => { [INFO] [stdout] 544 | Some((reflexive_addr, stun_server)) [INFO] [stdout] 545 ~ } _ => { [INFO] [stdout] 546 | None [INFO] [stdout] 547 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/socket.rs:573:10 [INFO] [stdout] | [INFO] [stdout] 573 | ) -> impl Future> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/socket.rs:570:9 [INFO] [stdout] | [INFO] [stdout] 570 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 573 | ) -> impl Future> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:649:20 [INFO] [stdout] | [INFO] [stdout] 649 | if let Some(handle) = self.remove_handle(msg.transaction_id()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:657:17 [INFO] [stdout] | [INFO] [stdout] 657 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 649 ~ match self.remove_handle(msg.transaction_id()) { Some(handle) => { [INFO] [stdout] 650 | let attrs = msg.attributes(); [INFO] [stdout] ... [INFO] [stdout] 656 | return Ok(()); [INFO] [stdout] 657 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 102 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `msf_ice` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/log.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:14 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:36 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:50 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:66 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:47:82 [INFO] [stderr] | [INFO] [stderr] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:14 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:36 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:50 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:66 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:50:82 [INFO] [stderr] | [INFO] [stderr] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:14 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:36 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:50 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:66 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:53:82 [INFO] [stderr] | [INFO] [stderr] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, $arg:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:14 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:36 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:50 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:66 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:59:96 [INFO] [stderr] | [INFO] [stderr] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:14 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:36 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:50 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:66 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:62:97 [INFO] [stderr] | [INFO] [stderr] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:36 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:50 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:66 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:65:97 [INFO] [stderr] | [INFO] [stderr] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:14 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:36 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:50 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:66 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:68:96 [INFO] [stderr] | [INFO] [stderr] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => $v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:14 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:36 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:50 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:66 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:71:97 [INFO] [stderr] | [INFO] [stderr] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => %$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:50 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:66 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:74:97 [INFO] [stderr] | [INFO] [stderr] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; $k:literal => ?$v:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:36 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:50 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:80:66 [INFO] [stderr] | [INFO] [stderr] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:14 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:50 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:83:66 [INFO] [stderr] | [INFO] [stderr] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021; ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:14 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:36 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:50 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:86:66 [INFO] [stderr] | [INFO] [stderr] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021, ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:14 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:36 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:50 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:92:66 [INFO] [stderr] | [INFO] [stderr] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr_2021, $lvl:expr_2021, $fmt:expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:110:7 [INFO] [stderr] | [INFO] [stderr] 110 | ( $l:expr_2021, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:110:21 [INFO] [stderr] | [INFO] [stderr] 110 | ( $l:expr_2021, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:117:7 [INFO] [stderr] | [INFO] [stderr] 117 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:132:7 [INFO] [stderr] | [INFO] [stderr] 132 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:147:7 [INFO] [stderr] | [INFO] [stderr] 147 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:162:7 [INFO] [stderr] | [INFO] [stderr] 162 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/log.rs:177:7 [INFO] [stderr] | [INFO] [stderr] 177 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 68 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:45 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:56 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:47:67 [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr; $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 47 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021; $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:45 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:56 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:45 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:56 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, $arg:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:53:67 [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, $arg:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:45 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:56 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:59:79 [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 59 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:20 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:34 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:45 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:56 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:62:80 [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 62 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:20 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:45 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:56 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:65:80 [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr, $( $rest:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 65 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr_2021, $( $rest:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:20 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:34 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:45 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:56 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => $v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:68:79 [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 68 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => $v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:20 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:34 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:45 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:56 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => %$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:71:80 [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 71 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => %$v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:20 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:34 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:45 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:56 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:74:80 [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 74 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; $k:literal => ?$v:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:20 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:34 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:45 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:80:56 [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 80 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:20 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:34 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:45 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:83:56 [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr; ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 83 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021; ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:20 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:34 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:45 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:86:56 [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr, ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 86 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021, ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:20 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr_2021 )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:34 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr_2021, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:45 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr_2021, $fmt:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:92:56 [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 92 | ( @ { $( $args:expr )* }, $l:expr, $lvl:expr, $fmt:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:110:10 [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr_2021, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 110 | ( $l:expr, $lvl:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:117:10 [INFO] [stdout] | [INFO] [stdout] 117 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 117 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:132:10 [INFO] [stdout] | [INFO] [stdout] 132 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 132 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:147:10 [INFO] [stdout] | [INFO] [stdout] 147 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 147 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:162:10 [INFO] [stdout] | [INFO] [stdout] 162 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 162 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/log.rs:177:10 [INFO] [stdout] | [INFO] [stdout] 177 | ( $l:expr, $( $args:tt )* ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 177 | ( $l:expr_2021, $( $args:tt )* ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/check.rs:462:24 [INFO] [stdout] | [INFO] [stdout] 462 | UnknownTransaction(TransactionId), [INFO] [stdout] | ------------------ ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `CheckError` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 462 | UnknownTransaction(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:211:12 [INFO] [stdout] | [INFO] [stdout] 211 | if let Some(candidate) = ready!(self.local_candidate_rx.poll_next_unpin(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:292:12 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(channel) = self.channels.get_mut(candidate.channel()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:308:9 [INFO] [stdout] | [INFO] [stdout] 308 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 292 ~ match self.channels.get_mut(candidate.channel()) { Some(channel) => { [INFO] [stdout] 293 | let is_from_current_session = self [INFO] [stdout] ... [INFO] [stdout] 307 | } [INFO] [stdout] 308 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:313:12 [INFO] [stdout] | [INFO] [stdout] 313 | if let Some(candidate_tx) = self.local_candidate_tx.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:333:9 [INFO] [stdout] | [INFO] [stdout] 333 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 313 ~ match self.local_candidate_tx.as_mut() { Some(candidate_tx) => { [INFO] [stdout] 314 | let mut resolved = 0; [INFO] [stdout] ... [INFO] [stdout] 332 | } [INFO] [stdout] 333 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:390:15 [INFO] [stdout] | [INFO] [stdout] 390 | while let Poll::Ready(next) = self.remote_candidate_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:396:9 [INFO] [stdout] | [INFO] [stdout] 396 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:214:15 [INFO] [stdout] | [INFO] [stdout] 214 | while let Poll::Ready(msg) = self.checklist.poll(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:234:20 [INFO] [stdout] | [INFO] [stdout] 234 | if let Poll::Ready(packet) = transport.poll_recv(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 234 ~ match transport.poll_recv(cx) { Poll::Ready(packet) => { [INFO] [stdout] 235 | self.process_incoming_packet(index as _, packet); [INFO] [stdout] 236 ~ } _ => { [INFO] [stdout] 237 | break; [INFO] [stdout] 238 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:247:20 [INFO] [stdout] | [INFO] [stdout] 247 | if let Some(handle) = self.component_handles.get_mut(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:251:17 [INFO] [stdout] | [INFO] [stdout] 251 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 247 ~ match self.component_handles.get_mut(index) { Some(handle) => { [INFO] [stdout] 248 | while let Poll::Ready(Some(data)) = handle.poll_next_output_packet(cx) { [INFO] [stdout] 249 | transport.send(data); [INFO] [stdout] 250 | } [INFO] [stdout] 251 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:248:27 [INFO] [stdout] | [INFO] [stdout] 248 | while let Poll::Ready(Some(data)) = handle.poll_next_output_packet(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:250:21 [INFO] [stdout] | [INFO] [stdout] 250 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:262:12 [INFO] [stdout] | [INFO] [stdout] 262 | if let Some(msg) = self.parse_stun_message(data) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 263 | self.process_stun_message(component, local_addr, remote_addr, msg); [INFO] [stdout] 264 | } else if let Some(handle) = self.component_handles.get_mut(component as usize) { [INFO] [stdout] | ---------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | } else if let Some(handle) = self.component_handles.get_mut(component as usize) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 262 ~ match self.parse_stun_message(data) { Some(msg) => { [INFO] [stdout] 263 | self.process_stun_message(component, local_addr, remote_addr, msg); [INFO] [stdout] 264 ~ } _ => { match self.component_handles.get_mut(component as usize) { Some(handle) => { [INFO] [stdout] 265 | handle.deliver_input_packet(packet); [INFO] [stdout] 266 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channel.rs:322:12 [INFO] [stdout] | [INFO] [stdout] 322 | if let Some(nominated) = [INFO] [stdout] | ____________^ [INFO] [stdout] 323 | | self.checklist [INFO] [stdout] | | -------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 324 | | .process_stun_response(component, local_addr, remote_addr, &msg) [INFO] [stdout] | |________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/channel.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 332 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 322 ~ match self.checklist [INFO] [stdout] 323 | .process_stun_response(component, local_addr, remote_addr, &msg) [INFO] [stdout] 324 ~ { Some(nominated) => { [INFO] [stdout] 325 | let local = nominated.local(); [INFO] [stdout] ... [INFO] [stdout] 330 | transport.bind(local.base(), remote.addr()); [INFO] [stdout] 331 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | if let CheckState::InProgress(t) = &self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 43 ~ match &self.state { CheckState::InProgress(t) => { [INFO] [stdout] 44 | Some(t) [INFO] [stdout] 45 ~ } _ => { [INFO] [stdout] 46 | None [INFO] [stdout] 47 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 141 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 142 | task.wake(); [INFO] [stdout] 143 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 156 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 156 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 157 | task.wake(); [INFO] [stdout] 158 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:222:12 [INFO] [stdout] | [INFO] [stdout] 222 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 222 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 223 | task.wake(); [INFO] [stdout] 224 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:282:20 [INFO] [stdout] | [INFO] [stdout] 282 | if let Some(msg) = ready!(t.poll(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:284:17 [INFO] [stdout] | [INFO] [stdout] 284 | } else { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/check.rs:379:12 [INFO] [stdout] | [INFO] [stdout] 379 | if let Some(task) = self.task.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/check.rs:381:9 [INFO] [stdout] | [INFO] [stdout] 381 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 379 ~ match self.task.take() { Some(task) => { [INFO] [stdout] 380 | task.wake(); [INFO] [stdout] 381 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:511:12 [INFO] [stdout] | [INFO] [stdout] 511 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:513:9 [INFO] [stdout] | [INFO] [stdout] 513 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 511 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 512 | task.wake_by_ref(); [INFO] [stdout] 513 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:605:12 [INFO] [stdout] | [INFO] [stdout] 605 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:607:9 [INFO] [stdout] | [INFO] [stdout] 607 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 605 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 606 | task.wake_by_ref(); [INFO] [stdout] 607 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/checklist.rs:657:16 [INFO] [stdout] | [INFO] [stdout] 657 | if let Some(task) = self.task.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/checklist.rs:659:13 [INFO] [stdout] | [INFO] [stdout] 659 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 657 ~ match self.task.as_ref() { Some(task) => { [INFO] [stdout] 658 | task.wake_by_ref(); [INFO] [stdout] 659 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | if let Some(binding) = ready!(self.binding_rx.poll_next_unpin(cx)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 130 | } else if sockets.is_pending() { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 157 | if let Poll::Ready(Some(packet)) = self.packet_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 157 ~ match self.packet_rx.poll_next_unpin(cx) { Poll::Ready(Some(packet)) => { [INFO] [stdout] 158 | Poll::Ready(packet) [INFO] [stdout] 159 ~ } _ => { [INFO] [stdout] 160 | Poll::Pending [INFO] [stdout] 161 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:180:15 [INFO] [stdout] | [INFO] [stdout] 180 | while let Poll::Ready(ready) = self.socket_rx.poll_next_unpin(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 186 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | if let Some(socket) = ready { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 181 ~ match ready { Some(socket) => { [INFO] [stdout] 182 | self.open_sockets.push(socket); [INFO] [stdout] 183 ~ } _ => { [INFO] [stdout] 184 | return Poll::Ready(()); [INFO] [stdout] 185 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:318:16 [INFO] [stdout] | [INFO] [stdout] 318 | if let Some((reflexive_addr, stun_server)) = reflexive_addr.await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:330:13 [INFO] [stdout] | [INFO] [stdout] 330 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 318 ~ match reflexive_addr.await { Some((reflexive_addr, stun_server)) => { [INFO] [stdout] 319 | let binding = Binding::reflexive(local_addr, reflexive_addr, stun_server); [INFO] [stdout] ... [INFO] [stdout] 329 | .await; [INFO] [stdout] 330 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/socket.rs:391:62 [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/socket.rs:391:21 [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 391 | fn write_all(&self, logger: Logger, mut stream: S) -> impl Future + use [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:398:19 [INFO] [stdout] | [INFO] [stdout] 398 | while let Some((peer, data)) = stream.next().await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:399:20 [INFO] [stdout] | [INFO] [stdout] 399 | if let Err(err) = socket.send_to(&data, peer).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:405:17 [INFO] [stdout] | [INFO] [stdout] 405 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 399 ~ match socket.send_to(&data, peer).await { Err(err) => { [INFO] [stdout] 400 | // log the error [INFO] [stdout] ... [INFO] [stdout] 404 | break; [INFO] [stdout] 405 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:426:24 [INFO] [stdout] | [INFO] [stdout] 426 | if let Err(packet) = stun_context.process_packet(packet) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:428:21 [INFO] [stdout] | [INFO] [stdout] 428 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 426 ~ match stun_context.process_packet(packet) { Err(packet) => { [INFO] [stdout] 427 | Some(Ok(packet)) [INFO] [stdout] 428 ~ } _ => { [INFO] [stdout] 429 | None [INFO] [stdout] 430 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:438:15 [INFO] [stdout] | [INFO] [stdout] 438 | while let Some(item) = filtered.next().await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:445:9 [INFO] [stdout] | [INFO] [stdout] 445 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:461:12 [INFO] [stdout] | [INFO] [stdout] 461 | if let Some(socket) = self.socket.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:485:9 [INFO] [stdout] | [INFO] [stdout] 485 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 461 ~ match self.socket.as_ref() { Some(socket) => { [INFO] [stdout] 462 | // XXX: use MaybeUninit::uninit_array() once stabilized [INFO] [stdout] ... [INFO] [stdout] 484 | } [INFO] [stdout] 485 ~ } _ => { [INFO] [stdout] 486 | Poll::Ready(None) [INFO] [stdout] 487 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:543:24 [INFO] [stdout] | [INFO] [stdout] 543 | if let Ok(reflexive_addr) = request.await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:545:21 [INFO] [stdout] | [INFO] [stdout] 545 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 543 ~ match request.await { Ok(reflexive_addr) => { [INFO] [stdout] 544 | Some((reflexive_addr, stun_server)) [INFO] [stdout] 545 ~ } _ => { [INFO] [stdout] 546 | None [INFO] [stdout] 547 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/socket.rs:573:10 [INFO] [stdout] | [INFO] [stdout] 573 | ) -> impl Future> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/socket.rs:570:9 [INFO] [stdout] | [INFO] [stdout] 570 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 573 | ) -> impl Future> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/socket.rs:649:20 [INFO] [stdout] | [INFO] [stdout] 649 | if let Some(handle) = self.remove_handle(msg.transaction_id()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/socket.rs:657:17 [INFO] [stdout] | [INFO] [stdout] 657 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 649 ~ match self.remove_handle(msg.transaction_id()) { Some(handle) => { [INFO] [stdout] 650 | let attrs = msg.attributes(); [INFO] [stdout] ... [INFO] [stdout] 656 | return Ok(()); [INFO] [stdout] 657 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 102 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.59s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking msf-ice v0.2.1 (/tmp/fixit) [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/socket.rs:542:17 [INFO] [stdout] | [INFO] [stdout] 525 | async fn get_reflexive_addr(&mut self, stun_servers: I) -> Option<(SocketAddr, SocketAddr)> [INFO] [stdout] | --------- variable defined here [INFO] [stdout] ... [INFO] [stdout] 539 | .map(|stun_server| { [INFO] [stdout] | - inferred to be a `FnMut` closure [INFO] [stdout] 540 | let request = self.new_binding_request(stun_server, RC); [INFO] [stdout] | ---- variable captured here [INFO] [stdout] 541 | [INFO] [stdout] 542 | / async move { [INFO] [stdout] 543 | | if let Ok(reflexive_addr) = request.await { [INFO] [stdout] 544 | | Some((reflexive_addr, stun_server)) [INFO] [stdout] 545 | | } else { [INFO] [stdout] 546 | | None [INFO] [stdout] 547 | | } [INFO] [stdout] 548 | | } [INFO] [stdout] | |_________________^ returns an `async` block that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/socket.rs:542:17 [INFO] [stdout] | [INFO] [stdout] 525 | async fn get_reflexive_addr(&mut self, stun_servers: I) -> Option<(SocketAddr, SocketAddr)> [INFO] [stdout] | --------- variable defined here [INFO] [stdout] ... [INFO] [stdout] 539 | .map(|stun_server| { [INFO] [stdout] | - inferred to be a `FnMut` closure [INFO] [stdout] 540 | let request = self.new_binding_request(stun_server, RC); [INFO] [stdout] | ---- variable captured here [INFO] [stdout] 541 | [INFO] [stdout] 542 | / async move { [INFO] [stdout] 543 | | if let Ok(reflexive_addr) = request.await { [INFO] [stdout] 544 | | Some((reflexive_addr, stun_server)) [INFO] [stdout] 545 | | } else { [INFO] [stdout] 546 | | None [INFO] [stdout] 547 | | } [INFO] [stdout] 548 | | } [INFO] [stdout] | |_________________^ returns an `async` block that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `socket` does not live long enough [INFO] [stdout] --> src/socket.rs:299:22 [INFO] [stdout] | [INFO] [stdout] 291 | let socket = UdpSocketWrapper::bind(local_addr).await?; [INFO] [stdout] | ------ binding `socket` declared here [INFO] [stdout] ... [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | ^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | borrowed value does not live long enough [INFO] [stdout] | argument requires that `socket` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 341 | } [INFO] [stdout] | - `socket` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `socket` does not live long enough [INFO] [stdout] --> src/socket.rs:299:22 [INFO] [stdout] | [INFO] [stdout] 291 | let socket = UdpSocketWrapper::bind(local_addr).await?; [INFO] [stdout] | ------ binding `socket` declared here [INFO] [stdout] ... [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | ^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | borrowed value does not live long enough [INFO] [stdout] | argument requires that `socket` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 341 | } [INFO] [stdout] | - `socket` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `socket` because it is borrowed [INFO] [stdout] --> src/socket.rs:305:35 [INFO] [stdout] | [INFO] [stdout] 291 | let socket = UdpSocketWrapper::bind(local_addr).await?; [INFO] [stdout] | ------ binding `socket` declared here [INFO] [stdout] ... [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | -------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | borrow of `socket` occurs here [INFO] [stdout] | argument requires that `socket` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 305 | let reader = tokio::spawn(async move { [INFO] [stdout] | ^^^^^^^^^^ move out of `socket` occurs here [INFO] [stdout] 306 | let _ = socket.read_all(logger, input_packet_tx, ctx).await; [INFO] [stdout] | ------ move occurs due to use in coroutine [INFO] [stdout] | [INFO] [stdout] note: if `UdpSocketWrapper` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/socket.rs:365:1 [INFO] [stdout] | [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | ------ you could clone this value [INFO] [stdout] ... [INFO] [stdout] 365 | struct UdpSocketWrapper { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `socket` because it is borrowed [INFO] [stdout] --> src/socket.rs:305:35 [INFO] [stdout] | [INFO] [stdout] 291 | let socket = UdpSocketWrapper::bind(local_addr).await?; [INFO] [stdout] | ------ binding `socket` declared here [INFO] [stdout] ... [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | -------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | borrow of `socket` occurs here [INFO] [stdout] | argument requires that `socket` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 305 | let reader = tokio::spawn(async move { [INFO] [stdout] | ^^^^^^^^^^ move out of `socket` occurs here [INFO] [stdout] 306 | let _ = socket.read_all(logger, input_packet_tx, ctx).await; [INFO] [stdout] | ------ move occurs due to use in coroutine [INFO] [stdout] | [INFO] [stdout] note: if `UdpSocketWrapper` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/socket.rs:365:1 [INFO] [stdout] | [INFO] [stdout] 299 | tokio::spawn(socket.write_all(logger.clone(), output_packet_rx)); [INFO] [stdout] | ------ you could clone this value [INFO] [stdout] ... [INFO] [stdout] 365 | struct UdpSocketWrapper { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0505, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0505`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0505, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0505`. [INFO] [stdout] [INFO] [stderr] error: could not compile `msf-ice` (lib) due to 4 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `msf-ice` (lib test) due to 4 previous errors [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "4f7d50ff3ce55fbdfef0d325b77581d610b5f7463df34294aafa3a8bad6eee7e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f7d50ff3ce55fbdfef0d325b77581d610b5f7463df34294aafa3a8bad6eee7e", kill_on_drop: false }` [INFO] [stdout] 4f7d50ff3ce55fbdfef0d325b77581d610b5f7463df34294aafa3a8bad6eee7e