[INFO] fetching crate fdt-rs 0.4.5... [INFO] checking fdt-rs-0.4.5 against try#998b6603a58e47f42ccce7a67943234e96b6839e for pr-143170 [INFO] extracting crate fdt-rs 0.4.5 into /workspace/builds/worker-2-tc2/source [INFO] started tweaking crates.io crate fdt-rs 0.4.5 [INFO] finished tweaking crates.io crate fdt-rs 0.4.5 [INFO] tweaked toml for crates.io crate fdt-rs 0.4.5 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate fdt-rs 0.4.5 on toolchain 998b6603a58e47f42ccce7a67943234e96b6839e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 15 packages to latest compatible versions [INFO] [stderr] Adding fallible-iterator v0.2.0 (available: v0.3.0) [INFO] [stderr] Adding memoffset v0.5.6 (available: v0.9.1) [INFO] [stderr] Adding num-derive v0.3.3 (available: v0.4.2) [INFO] [stderr] Adding rustc_version v0.2.3 (available: v0.4.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 553b41eb8c8de10d57bc72aa6c6c3229ff0f1482eb39d078c1118a9b9b553efa [INFO] running `Command { std: "docker" "start" "-a" "553b41eb8c8de10d57bc72aa6c6c3229ff0f1482eb39d078c1118a9b9b553efa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "553b41eb8c8de10d57bc72aa6c6c3229ff0f1482eb39d078c1118a9b9b553efa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "553b41eb8c8de10d57bc72aa6c6c3229ff0f1482eb39d078c1118a9b9b553efa", kill_on_drop: false }` [INFO] [stdout] 553b41eb8c8de10d57bc72aa6c6c3229ff0f1482eb39d078c1118a9b9b553efa [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3bd255ede957c26cbf56c67d42dd01060b0890c3d66eb49d68076b5298e70497 [INFO] running `Command { std: "docker" "start" "-a" "3bd255ede957c26cbf56c67d42dd01060b0890c3d66eb49d68076b5298e70497", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Checking endian-type-rs v0.1.4 [INFO] [stderr] Checking unsafe_unwrap v0.1.0 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Checking fdt-rs v0.4.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> src/base/prop.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[must_use]` has no effect when applied to a provided trait method [INFO] [stdout] --> src/base/prop.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | unsafe { get_be32_field!(totalsize, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | unsafe { get_be32_field!(off_mem_rsvmap, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | unsafe { get_be32_field!(off_dt_struct, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | unsafe { get_be32_field!(off_dt_strings, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | unsafe { get_be32_field!(magic, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe { get_be32_field!(version, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | unsafe { get_be32_field!(boot_cpuid_phys, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | unsafe { get_be32_field!(last_comp_version, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:220:9 [INFO] [stdout] | [INFO] [stdout] 220 | unsafe { get_be32_field!(size_dt_strings, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | unsafe { get_be32_field!(size_dt_struct, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | unsafe { get_be32_field!(totalsize, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | unsafe { get_be32_field!(off_mem_rsvmap, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | unsafe { get_be32_field!(off_dt_struct, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | unsafe { get_be32_field!(off_dt_strings, fdt_header, self.buf).unwrap() as usize } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | unsafe { get_be32_field!(magic, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe { get_be32_field!(version, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | unsafe { get_be32_field!(boot_cpuid_phys, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | unsafe { get_be32_field!(last_comp_version, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:220:9 [INFO] [stdout] | [INFO] [stdout] 220 | unsafe { get_be32_field!(size_dt_strings, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/base/tree.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | unsafe { get_be32_field!(size_dt_struct, fdt_header, self.buf).unwrap() } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unsafe_read_be_u64` is never used [INFO] [stdout] --> src/priv_util.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) trait SliceRead<'a> { [INFO] [stdout] | --------- method in this trait [INFO] [stdout] 13 | unsafe fn unsafe_read_be_u32(&self, pos: usize) -> SliceReadResult; [INFO] [stdout] 14 | unsafe fn unsafe_read_be_u64(&self, pos: usize) -> SliceReadResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/base/tree.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter { [INFO] [stdout] | ^^^^^ ----------------------- [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/spec.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_FdtTok` [INFO] [stdout] 15 | pub enum FdtTok { [INFO] [stdout] | ------ `FdtTok` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unsafe_read_be_u64` is never used [INFO] [stdout] --> src/priv_util.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) trait SliceRead<'a> { [INFO] [stdout] | --------- method in this trait [INFO] [stdout] 13 | unsafe fn unsafe_read_be_u32(&self, pos: usize) -> SliceReadResult; [INFO] [stdout] 14 | unsafe fn unsafe_read_be_u64(&self, pos: usize) -> SliceReadResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/base/tree.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter { [INFO] [stdout] | ^^^^^ ----------------------- [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/spec.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_FdtTok` [INFO] [stdout] 15 | pub enum FdtTok { [INFO] [stdout] | ------ `FdtTok` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.58s [INFO] running `Command { std: "docker" "inspect" "3bd255ede957c26cbf56c67d42dd01060b0890c3d66eb49d68076b5298e70497", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3bd255ede957c26cbf56c67d42dd01060b0890c3d66eb49d68076b5298e70497", kill_on_drop: false }` [INFO] [stdout] 3bd255ede957c26cbf56c67d42dd01060b0890c3d66eb49d68076b5298e70497