[INFO] fetching crate nanomsg 0.7.2... [INFO] checking nanomsg-0.7.2 against master#17ffbc81a30c094193836a5d7f90dff273b5df93 for pr-138785 [INFO] extracting crate nanomsg 0.7.2 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate nanomsg 0.7.2 on toolchain 17ffbc81a30c094193836a5d7f90dff273b5df93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+17ffbc81a30c094193836a5d7f90dff273b5df93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate nanomsg 0.7.2 [INFO] finished tweaking crates.io crate nanomsg 0.7.2 [INFO] tweaked toml for crates.io crate nanomsg 0.7.2 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+17ffbc81a30c094193836a5d7f90dff273b5df93" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 7 packages to latest compatible versions [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+17ffbc81a30c094193836a5d7f90dff273b5df93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+17ffbc81a30c094193836a5d7f90dff273b5df93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 45113f6f1043c0e465dd6791a0e7ab1aabfac21e6cf6241c326ca705786ff6b4 [INFO] running `Command { std: "docker" "start" "-a" "45113f6f1043c0e465dd6791a0e7ab1aabfac21e6cf6241c326ca705786ff6b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "45113f6f1043c0e465dd6791a0e7ab1aabfac21e6cf6241c326ca705786ff6b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "45113f6f1043c0e465dd6791a0e7ab1aabfac21e6cf6241c326ca705786ff6b4", kill_on_drop: false }` [INFO] [stdout] 45113f6f1043c0e465dd6791a0e7ab1aabfac21e6cf6241c326ca705786ff6b4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+17ffbc81a30c094193836a5d7f90dff273b5df93" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fe5ed829f8cede7649291948962704e2f5fbb50a09f390bbfe9ef484a6b12e5b [INFO] running `Command { std: "docker" "start" "-a" "fe5ed829f8cede7649291948962704e2f5fbb50a09f390bbfe9ef484a6b12e5b", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling gcc v0.3.55 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling cc v1.2.18 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Compiling nanomsg-sys v0.7.2 [INFO] [stderr] Checking nanomsg v0.7.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:141:28 [INFO] [stdout] | [INFO] [stdout] 141 | let as_std_error: &error::Error = &err; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 141 | let as_std_error: &dyn error::Error = &err; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:142:40 [INFO] [stdout] | [INFO] [stdout] 142 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:163:28 [INFO] [stdout] | [INFO] [stdout] 163 | let as_std_error: &error::Error = self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 163 | let as_std_error: &dyn error::Error = self; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:164:40 [INFO] [stdout] | [INFO] [stdout] 164 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:171:28 [INFO] [stdout] | [INFO] [stdout] 171 | let as_std_error: &error::Error = self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 171 | let as_std_error: &dyn error::Error = self; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:172:40 [INFO] [stdout] | [INFO] [stdout] 172 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `CString` will be dropped [INFO] [stdout] --> src/lib.rs:698:34 [INFO] [stdout] | [INFO] [stdout] 698 | let ptr = c_val.unwrap().as_ptr() as *const c_void; [INFO] [stdout] | -------------- ^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `CString` to lives at least as long as the pointer returned by the call to `as_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `CString` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] = note: `#[warn(dangling_pointers_from_temporaries)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:141:28 [INFO] [stdout] | [INFO] [stdout] 141 | let as_std_error: &error::Error = &err; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 141 | let as_std_error: &dyn error::Error = &err; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:142:40 [INFO] [stdout] | [INFO] [stdout] 142 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:163:28 [INFO] [stdout] | [INFO] [stdout] 163 | let as_std_error: &error::Error = self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 163 | let as_std_error: &dyn error::Error = self; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:164:40 [INFO] [stdout] | [INFO] [stdout] 164 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/result.rs:171:28 [INFO] [stdout] | [INFO] [stdout] 171 | let as_std_error: &error::Error = self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 171 | let as_std_error: &dyn error::Error = self; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/result.rs:172:40 [INFO] [stdout] | [INFO] [stdout] 172 | let description = as_std_error.description(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> examples/issue.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | thread::sleep_ms(500); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> examples/issue.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | thread::sleep_ms(100); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> examples/issue.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | srv.join(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 43 | let _ = srv.join(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> examples/puller.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | thread::sleep_ms(1000); // fake some work ... [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:1341:13 [INFO] [stdout] | [INFO] [stdout] 1341 | let mut msg = Socket::allocate_msg(buf.len()).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:2055:13 [INFO] [stdout] | [INFO] [stdout] 2055 | let mut pollreq_slice = &mut pollreq_vector[..]; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `CString` will be dropped [INFO] [stdout] --> src/lib.rs:698:34 [INFO] [stdout] | [INFO] [stdout] 698 | let ptr = c_val.unwrap().as_ptr() as *const c_void; [INFO] [stdout] | -------------- ^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `CString` to lives at least as long as the pointer returned by the call to `as_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `CString` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] = note: `#[warn(dangling_pointers_from_temporaries)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.37s [INFO] running `Command { std: "docker" "inspect" "fe5ed829f8cede7649291948962704e2f5fbb50a09f390bbfe9ef484a6b12e5b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fe5ed829f8cede7649291948962704e2f5fbb50a09f390bbfe9ef484a6b12e5b", kill_on_drop: false }` [INFO] [stdout] fe5ed829f8cede7649291948962704e2f5fbb50a09f390bbfe9ef484a6b12e5b