[INFO] fetching crate tickv 1.0.0... [INFO] checking tickv-1.0.0 against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] extracting crate tickv 1.0.0 into /workspace/builds/worker-1-tc1/source [INFO] validating manifest of crates.io crate tickv 1.0.0 on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate tickv 1.0.0 [INFO] finished tweaking crates.io crate tickv 1.0.0 [INFO] tweaked toml for crates.io crate tickv 1.0.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a56733837b4b4fb88e16c25fcd7d20c76f2c3220065cc1f738593366422a4536 [INFO] running `Command { std: "docker" "start" "-a" "a56733837b4b4fb88e16c25fcd7d20c76f2c3220065cc1f738593366422a4536", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a56733837b4b4fb88e16c25fcd7d20c76f2c3220065cc1f738593366422a4536", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a56733837b4b4fb88e16c25fcd7d20c76f2c3220065cc1f738593366422a4536", kill_on_drop: false }` [INFO] [stdout] a56733837b4b4fb88e16c25fcd7d20c76f2c3220065cc1f738593366422a4536 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dd07ae65a1bb07bd536520847eba3974c9f5c29349e26c3b4cee2788163296f9 [INFO] running `Command { std: "docker" "start" "-a" "dd07ae65a1bb07bd536520847eba3974c9f5c29349e26c3b4cee2788163296f9", kill_on_drop: false }` [INFO] [stderr] Checking tickv v1.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:562:73 [INFO] [stdout] | [INFO] [stdout] 562 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 562 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:573:73 [INFO] [stdout] | [INFO] [stdout] 573 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 573 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:605:73 [INFO] [stdout] | [INFO] [stdout] 605 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 605 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:618:55 [INFO] [stdout] | [INFO] [stdout] 618 | tickv.get_key(get_hashed_key(b"ONE"), &mut BUF).unwrap(); [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 618 | tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)).unwrap(); [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:622:70 [INFO] [stdout] | [INFO] [stdout] 622 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 622 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:634:73 [INFO] [stdout] | [INFO] [stdout] 634 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 634 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:649:73 [INFO] [stdout] | [INFO] [stdout] 649 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 649 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:661:70 [INFO] [stdout] | [INFO] [stdout] 661 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 661 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:673:70 [INFO] [stdout] | [INFO] [stdout] 673 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 673 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:685:72 [INFO] [stdout] | [INFO] [stdout] 685 | let ret = unsafe { tickv.get_key(get_hashed_key(b"THREE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 685 | let ret = unsafe { tickv.get_key(get_hashed_key(b"THREE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:696:63 [INFO] [stdout] | [INFO] [stdout] 696 | match tickv.get_key(get_hashed_key(b"THREE"), &mut BUF) { [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 696 | match tickv.get_key(get_hashed_key(b"THREE"), addr_of_mut!(BUF)) { [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:725:73 [INFO] [stdout] | [INFO] [stdout] 725 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 725 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:738:55 [INFO] [stdout] | [INFO] [stdout] 738 | tickv.get_key(get_hashed_key(b"ONE"), &mut BUF).unwrap(); [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 738 | tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)).unwrap(); [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:746:61 [INFO] [stdout] | [INFO] [stdout] 746 | match tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) { [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 746 | match tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) { [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:791:73 [INFO] [stdout] | [INFO] [stdout] 791 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 791 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:860:70 [INFO] [stdout] | [INFO] [stdout] 860 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 860 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:874:57 [INFO] [stdout] | [INFO] [stdout] 874 | .append_key(get_hashed_key(b"ONE"), &mut VALUE) [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 874 | .append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] running `Command { std: "docker" "inspect" "dd07ae65a1bb07bd536520847eba3974c9f5c29349e26c3b4cee2788163296f9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dd07ae65a1bb07bd536520847eba3974c9f5c29349e26c3b4cee2788163296f9", kill_on_drop: false }` [INFO] [stdout] dd07ae65a1bb07bd536520847eba3974c9f5c29349e26c3b4cee2788163296f9 [INFO] checking tickv-1.0.0 against try#f9935d29d867449445ee008640ccca1bf1ae0889+rustflags=-Dtail_expr_drop_order for crater-rollup-uwu [INFO] extracting crate tickv 1.0.0 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate tickv 1.0.0 on toolchain f9935d29d867449445ee008640ccca1bf1ae0889 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate tickv 1.0.0 [INFO] finished tweaking crates.io crate tickv 1.0.0 [INFO] tweaked toml for crates.io crate tickv 1.0.0 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" "+f9935d29d867449445ee008640ccca1bf1ae0889" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b785ad477a51db6b85f2db6914eb4ce329c4f9a513426307a7a429b5b3b7c725 [INFO] running `Command { std: "docker" "start" "-a" "b785ad477a51db6b85f2db6914eb4ce329c4f9a513426307a7a429b5b3b7c725", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b785ad477a51db6b85f2db6914eb4ce329c4f9a513426307a7a429b5b3b7c725", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b785ad477a51db6b85f2db6914eb4ce329c4f9a513426307a7a429b5b3b7c725", kill_on_drop: false }` [INFO] [stdout] b785ad477a51db6b85f2db6914eb4ce329c4f9a513426307a7a429b5b3b7c725 [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 -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7b39f7137bc245abfab787a3c6e824fdd577a89ccedb9216c68a6dc2e6c5e777 [INFO] running `Command { std: "docker" "start" "-a" "7b39f7137bc245abfab787a3c6e824fdd577a89ccedb9216c68a6dc2e6c5e777", kill_on_drop: false }` [INFO] [stderr] Checking tickv v1.0.0 (/opt/rustwide/workdir) [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/async_ops.rs:158:20 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn new(controller: C, read_buffer: &'a mut [u8; S], flash_size: usize) -> Self { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 157 | Self { [INFO] [stdout] 158 | tickv: TicKV::::new(controller, read_buffer, flash_size), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:562:73 [INFO] [stdout] | [INFO] [stdout] 562 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 562 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:573:73 [INFO] [stdout] | [INFO] [stdout] 573 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 573 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:605:73 [INFO] [stdout] | [INFO] [stdout] 605 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 605 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:618:55 [INFO] [stdout] | [INFO] [stdout] 618 | tickv.get_key(get_hashed_key(b"ONE"), &mut BUF).unwrap(); [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 618 | tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)).unwrap(); [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:622:70 [INFO] [stdout] | [INFO] [stdout] 622 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 622 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:634:73 [INFO] [stdout] | [INFO] [stdout] 634 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 634 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:649:73 [INFO] [stdout] | [INFO] [stdout] 649 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 649 | let ret = unsafe { tickv.append_key(get_hashed_key(b"TWO"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:661:70 [INFO] [stdout] | [INFO] [stdout] 661 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 661 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:673:70 [INFO] [stdout] | [INFO] [stdout] 673 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 673 | let ret = unsafe { tickv.get_key(get_hashed_key(b"TWO"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:685:72 [INFO] [stdout] | [INFO] [stdout] 685 | let ret = unsafe { tickv.get_key(get_hashed_key(b"THREE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 685 | let ret = unsafe { tickv.get_key(get_hashed_key(b"THREE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:696:63 [INFO] [stdout] | [INFO] [stdout] 696 | match tickv.get_key(get_hashed_key(b"THREE"), &mut BUF) { [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 696 | match tickv.get_key(get_hashed_key(b"THREE"), addr_of_mut!(BUF)) { [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:725:73 [INFO] [stdout] | [INFO] [stdout] 725 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 725 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:738:55 [INFO] [stdout] | [INFO] [stdout] 738 | tickv.get_key(get_hashed_key(b"ONE"), &mut BUF).unwrap(); [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 738 | tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)).unwrap(); [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:746:61 [INFO] [stdout] | [INFO] [stdout] 746 | match tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) { [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 746 | match tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) { [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tickv` (lib) due to 2 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:791:73 [INFO] [stdout] | [INFO] [stdout] 791 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), &mut VALUE) }; [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 791 | let ret = unsafe { tickv.append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:860:70 [INFO] [stdout] | [INFO] [stdout] 860 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), &mut BUF) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 860 | let ret = unsafe { tickv.get_key(get_hashed_key(b"ONE"), addr_of_mut!(BUF)) }; [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/async_ops.rs:874:57 [INFO] [stdout] | [INFO] [stdout] 874 | .append_key(get_hashed_key(b"ONE"), &mut VALUE) [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 874 | .append_key(get_hashed_key(b"ONE"), addr_of_mut!(VALUE)) [INFO] [stdout] | ~~~~~~~~~~~~~ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/async_ops.rs:158:20 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn new(controller: C, read_buffer: &'a mut [u8; S], flash_size: usize) -> Self { [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 157 | Self { [INFO] [stdout] 158 | tickv: TicKV::::new(controller, read_buffer, flash_size), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tickv` (lib test) due to 2 previous errors; 17 warnings emitted [INFO] running `Command { std: "docker" "inspect" "7b39f7137bc245abfab787a3c6e824fdd577a89ccedb9216c68a6dc2e6c5e777", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7b39f7137bc245abfab787a3c6e824fdd577a89ccedb9216c68a6dc2e6c5e777", kill_on_drop: false }` [INFO] [stdout] 7b39f7137bc245abfab787a3c6e824fdd577a89ccedb9216c68a6dc2e6c5e777