[INFO] fetching crate tackt 0.1.2... [INFO] checking tackt-0.1.2 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate tackt 0.1.2 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate tackt 0.1.2 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate tackt 0.1.2 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate tackt 0.1.2 [INFO] tweaked toml for crates.io crate tackt 0.1.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate crates.io crate tackt 0.1.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ab8f58b07282f058b807235d7c3c9eb12dfaaa544c2fc02a69a4a4373d7a94ee [INFO] running `Command { std: "docker" "start" "-a" "ab8f58b07282f058b807235d7c3c9eb12dfaaa544c2fc02a69a4a4373d7a94ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ab8f58b07282f058b807235d7c3c9eb12dfaaa544c2fc02a69a4a4373d7a94ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ab8f58b07282f058b807235d7c3c9eb12dfaaa544c2fc02a69a4a4373d7a94ee", kill_on_drop: false }` [INFO] [stdout] ab8f58b07282f058b807235d7c3c9eb12dfaaa544c2fc02a69a4a4373d7a94ee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4221e3461b9312370d67e58c446b32ece7e02373c06b5fd459d19e8943a2a0b7 [INFO] running `Command { std: "docker" "start" "-a" "4221e3461b9312370d67e58c446b32ece7e02373c06b5fd459d19e8943a2a0b7", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.121 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Checking pin-project-lite v0.2.8 [INFO] [stderr] Checking bytes v1.1.0 [INFO] [stderr] Compiling syn v1.0.90 [INFO] [stderr] Compiling quote v1.0.17 [INFO] [stderr] Checking itoa v1.0.1 [INFO] [stderr] Compiling futures-task v0.3.21 [INFO] [stderr] Compiling indexmap v1.8.1 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Checking tracing-core v0.1.23 [INFO] [stderr] Checking futures-sink v0.3.21 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling httparse v1.6.0 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Checking try-lock v0.2.3 [INFO] [stderr] Checking slab v0.4.5 [INFO] [stderr] Checking http v0.2.6 [INFO] [stderr] Checking tower-service v0.3.1 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Checking tracing v0.1.32 [INFO] [stderr] Checking httpdate v1.0.2 [INFO] [stderr] Checking socket2 v0.4.4 [INFO] [stderr] Checking mio v0.8.2 [INFO] [stderr] Checking tokio v1.17.0 [INFO] [stderr] Checking http-body v0.4.4 [INFO] [stderr] Compiling pin-project-internal v1.0.10 [INFO] [stderr] Compiling tackt-macros v0.1.1 [INFO] [stderr] Checking tokio-util v0.6.9 [INFO] [stderr] Checking h2 v0.3.12 [INFO] [stderr] Checking pin-project v1.0.10 [INFO] [stderr] Checking tackt v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/request.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | http::Request::method(self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | unused_qualifications [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 69 - http::Request::method(self) [INFO] [stdout] 69 + Request::method(self) [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/func.rs:77:15 [INFO] [stdout] | [INFO] [stdout] 76 | fn call(&mut self, req: T) -> Self::Future { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 77 | match self.param(&req) { [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/func.rs:95:23 [INFO] [stdout] | [INFO] [stdout] 94 | fn call_with_param(&mut self, req: T, param: Self::Param) -> Self::Future { [INFO] [stdout] | ------ ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | Maybe::Future((self.inner)(req, param)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/future.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 15 | pub const fn ready(value: O) -> Maybe { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | Maybe::Ready(Some(value)) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/mount.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 51 | fn call(&mut self, req: T) -> Self::Future { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 52 | match req.remove_prefix(self.prefix) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/or.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 67 | fn call(&mut self, req: T) -> Self::Future { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 68 | match self.param(&req) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/request.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 103 | fn remove_prefix(self, prefix: &str) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 108 | / self.as_str() [INFO] [stdout] 109 | | .strip_prefix(prefix) [INFO] [stdout] 110 | | .and_then(|striped| striped.parse().ok()) [INFO] [stdout] | |_____________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/request.rs:110:33 [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|striped| striped.parse().ok()) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/request.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 116 | fn remove_prefix(self, prefix: &str) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 120 | let mut parts = self.into_parts(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 125 | Uri::from_parts(parts).map_err(|_| Error::Prefix) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/request.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 131 | fn remove_prefix(self, prefix: &str) -> Result, Error> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 135 | let (mut parts, body) = self.into_parts(); [INFO] [stdout] | ----- ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 136 | parts.uri = parts.uri.remove_prefix(prefix)?; [INFO] [stdout] 137 | Ok(Request::from_parts(parts, body)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/router.rs:64:20 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn new(route: F) -> Router> [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 64 | inner: Func::new(route), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/router.rs:81:20 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn route(self, route: F) -> Router>> [INFO] [stdout] | ---- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | inner: Or::new(self.inner, Func::new(route)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/router.rs:116:20 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn mount(self, prefix: &'static str, service: S) -> Router>> [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | inner: Or::new(self.inner, Mount::new(service, prefix)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/router.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn with(self, func: F) -> Router> [INFO] [stdout] | ---- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 129 | inner: With::new(self.inner, func), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/void.rs:49:28 [INFO] [stdout] | [INFO] [stdout] 48 | fn call(&mut self, _: T) -> Self::Future { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 49 | std::future::ready(Err(Error::Path)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/void.rs:57:28 [INFO] [stdout] | [INFO] [stdout] 56 | fn call_with_param(&mut self, _: T, _: Self::Param) -> Self::Future { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 57 | std::future::ready(Err(Error::Path)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/with.rs:45:21 [INFO] [stdout] | [INFO] [stdout] 44 | fn call(&mut self, req: T) -> Self::Future { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | Future::new((self.func)(req), self.inner.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [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/with.rs:45:39 [INFO] [stdout] | [INFO] [stdout] 44 | fn call(&mut self, req: T) -> Self::Future { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | Future::new((self.func)(req), self.inner.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 17 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tackt` (lib) due to 18 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "4221e3461b9312370d67e58c446b32ece7e02373c06b5fd459d19e8943a2a0b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4221e3461b9312370d67e58c446b32ece7e02373c06b5fd459d19e8943a2a0b7", kill_on_drop: false }` [INFO] [stdout] 4221e3461b9312370d67e58c446b32ece7e02373c06b5fd459d19e8943a2a0b7