[INFO] fetching crate fdt-rs 0.4.5... [INFO] testing fdt-rs-0.4.5 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-1 [INFO] extracting crate fdt-rs 0.4.5 into /workspace/builds/worker-0-tc1/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-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate fdt-rs 0.4.5 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "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" "+562dee4820c458d823175268e41601d4c060588a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded endian-type-rs v0.1.4 [INFO] [stderr] Downloaded unsafe_unwrap v0.1.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a66bbcf324e409f0fec6132ea0550fd13e44298ba55c7cc5024040965274796c [INFO] running `Command { std: "docker" "start" "-a" "a66bbcf324e409f0fec6132ea0550fd13e44298ba55c7cc5024040965274796c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a66bbcf324e409f0fec6132ea0550fd13e44298ba55c7cc5024040965274796c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a66bbcf324e409f0fec6132ea0550fd13e44298ba55c7cc5024040965274796c", kill_on_drop: false }` [INFO] [stdout] a66bbcf324e409f0fec6132ea0550fd13e44298ba55c7cc5024040965274796c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 29f371e11d4a780613c8eb7a4ce796469edb547a9bcf09830bef9c1817f8e1b0 [INFO] running `Command { std: "docker" "start" "-a" "29f371e11d4a780613c8eb7a4ce796469edb547a9bcf09830bef9c1817f8e1b0", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling fallible-iterator v0.2.0 [INFO] [stderr] Compiling unsafe_unwrap v0.1.0 [INFO] [stderr] Compiling endian-type-rs v0.1.4 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling fdt-rs v0.4.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks [INFO] [stdout] --> src/base/prop.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is 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 same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type 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 5.20s [INFO] running `Command { std: "docker" "inspect" "29f371e11d4a780613c8eb7a4ce796469edb547a9bcf09830bef9c1817f8e1b0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "29f371e11d4a780613c8eb7a4ce796469edb547a9bcf09830bef9c1817f8e1b0", kill_on_drop: false }` [INFO] [stdout] 29f371e11d4a780613c8eb7a4ce796469edb547a9bcf09830bef9c1817f8e1b0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fb9508fe95be4675833f4af6960d79be59b783adacc4c3ac228b1bea85c56c9b [INFO] running `Command { std: "docker" "start" "-a" "fb9508fe95be4675833f4af6960d79be59b783adacc4c3ac228b1bea85c56c9b", kill_on_drop: false }` [INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks [INFO] [stdout] --> src/base/prop.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is 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 same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type 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] Compiling fdt-rs v0.4.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks [INFO] [stdout] --> src/base/prop.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | #[must_use] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is 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 same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type 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 `test` profile [unoptimized + debuginfo] target(s) in 1.04s [INFO] running `Command { std: "docker" "inspect" "fb9508fe95be4675833f4af6960d79be59b783adacc4c3ac228b1bea85c56c9b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb9508fe95be4675833f4af6960d79be59b783adacc4c3ac228b1bea85c56c9b", kill_on_drop: false }` [INFO] [stdout] fb9508fe95be4675833f4af6960d79be59b783adacc4c3ac228b1bea85c56c9b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 529accad6d4e0cf99236da1b921c7f237e39e09b9e26ac1510eefd55621f289c [INFO] running `Command { std: "docker" "start" "-a" "529accad6d4e0cf99236da1b921c7f237e39e09b9e26ac1510eefd55621f289c", kill_on_drop: false }` [INFO] [stderr] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks [INFO] [stderr] --> src/base/prop.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | #[must_use] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits [INFO] [stderr] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:164:9 [INFO] [stderr] | [INFO] [stderr] 164 | unsafe { get_be32_field!(totalsize, fdt_header, self.buf).unwrap() as usize } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:171:9 [INFO] [stderr] | [INFO] [stderr] 171 | unsafe { get_be32_field!(off_mem_rsvmap, fdt_header, self.buf).unwrap() as usize } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | unsafe { get_be32_field!(off_dt_struct, fdt_header, self.buf).unwrap() as usize } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:185:9 [INFO] [stderr] | [INFO] [stderr] 185 | unsafe { get_be32_field!(off_dt_strings, fdt_header, self.buf).unwrap() as usize } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:192:9 [INFO] [stderr] | [INFO] [stderr] 192 | unsafe { get_be32_field!(magic, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:199:9 [INFO] [stderr] | [INFO] [stderr] 199 | unsafe { get_be32_field!(version, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 206 | unsafe { get_be32_field!(boot_cpuid_phys, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 213 | unsafe { get_be32_field!(last_comp_version, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:220:9 [INFO] [stderr] | [INFO] [stderr] 220 | unsafe { get_be32_field!(size_dt_strings, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/base/tree.rs:227:9 [INFO] [stderr] | [INFO] [stderr] 227 | unsafe { get_be32_field!(size_dt_struct, fdt_header, self.buf).unwrap() } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: method `unsafe_read_be_u64` is never used [INFO] [stderr] --> src/priv_util.rs:14:15 [INFO] [stderr] | [INFO] [stderr] 12 | pub(crate) trait SliceRead<'a> { [INFO] [stderr] | --------- method in this trait [INFO] [stderr] 13 | unsafe fn unsafe_read_be_u32(&self, pos: usize) -> SliceReadResult; [INFO] [stderr] 14 | unsafe fn unsafe_read_be_u64(&self, pos: usize) -> SliceReadResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/base/tree.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 248 | pub fn reserved_entries(&self) -> DevTreeReserveEntryIter<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/spec.rs:14:10 [INFO] [stderr] | [INFO] [stderr] 14 | #[derive(FromPrimitive)] [INFO] [stderr] | ^------------ [INFO] [stderr] | | [INFO] [stderr] | `FromPrimitive` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_FdtTok` [INFO] [stderr] 15 | pub enum FdtTok { [INFO] [stderr] | ------ `FdtTok` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `fdt-rs` (lib) generated 14 warnings (run `cargo fix --lib -p fdt-rs` to apply 2 suggestions) [INFO] [stderr] warning: `fdt-rs` (lib test) generated 14 warnings (14 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fdt_rs-6d7d27221217628e) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/parsing_test.rs (/opt/rustwide/target/debug/deps/parsing_test-eb709b8add108a19) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test find_all_compatible ... ok [INFO] [stdout] test get_prop_node ... ok [INFO] [stdout] test index_tests::create_index ... ok [INFO] [stdout] test index_tests::expect_create_index_layout_fails_with_invalid_layout ... ok [INFO] [stdout] test index_tests::get_memory_prop_node ... ok [INFO] [stdout] test index_tests::test_prop_iteration_ ... ok [INFO] [stdout] test index_tests::create_sized_index ... ok [INFO] [stdout] test index_tests::verify_root_children_comparisions ... ok [INFO] [stdout] test get_memory_prop_node ... ok [INFO] [stdout] test index_tests::root_prop_iteration ... ok [INFO] [stdout] test index_tests::verify_root_children_iteration ... ok [INFO] [stdout] test next_compatible_finds_final_node ... ok [INFO] [stdout] test next_compatible_finds_initial_node ... ok [INFO] [stdout] test node_prop_iter ... ok [INFO] [stdout] test nodes_iter ... ok [INFO] [stdout] test nodes_iter_from_raw_pointer ... ok [INFO] [stdout] test reserved_entries_iter ... ok [INFO] [stdout] test test_readsize_advice ... ok [INFO] [stdout] test verify_node_comparisions ... ok [INFO] [stdout] test verify_prop_comparisions ... ok [INFO] [stdout] test index_tests::dfs_iteration ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "529accad6d4e0cf99236da1b921c7f237e39e09b9e26ac1510eefd55621f289c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "529accad6d4e0cf99236da1b921c7f237e39e09b9e26ac1510eefd55621f289c", kill_on_drop: false }` [INFO] [stdout] 529accad6d4e0cf99236da1b921c7f237e39e09b9e26ac1510eefd55621f289c